JPS5839353A - 入力デ−タ汎用チエツク方式 - Google Patents

入力デ−タ汎用チエツク方式

Info

Publication number
JPS5839353A
JPS5839353A JP56138246A JP13824681A JPS5839353A JP S5839353 A JPS5839353 A JP S5839353A JP 56138246 A JP56138246 A JP 56138246A JP 13824681 A JP13824681 A JP 13824681A JP S5839353 A JPS5839353 A JP S5839353A
Authority
JP
Japan
Prior art keywords
data
file
syntax
definition
check
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP56138246A
Other languages
English (en)
Other versions
JPS6367693B2 (ja
Inventor
Yasushi Iwano
岩野 安司
Kunihiro Fukuma
福間 邦弘
Hisaharu Hamai
浜井 久晴
Ryuichi Nomura
隆一 野村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
NTT Inc
Original Assignee
Fujitsu Ltd
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd, Nippon Telegraph and Telephone Corp filed Critical Fujitsu Ltd
Priority to JP56138246A priority Critical patent/JPS5839353A/ja
Publication of JPS5839353A publication Critical patent/JPS5839353A/ja
Publication of JPS6367693B2 publication Critical patent/JPS6367693B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3604Analysis of software for verifying properties of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、成る1つのプログラムに対して与えられたデ
ータと、他のプログラムに対して与えられたデータとの
間の相関関係のチェックを行い得るようになった入力デ
ータ汎用チェック方式に関するものである。
複数のプログラムに対してそれぞれ別々に入力するデー
タの間に一定の関係を必要とする場合がある。例えばE
XECというO8の中核プログラムのシステム・ジェネ
レーション畢プログラムに対してMTが3台と指足し九
場合にはEXECの上で働くノツケージ・プログラムの
システム・ジェネレーション・プログラムに対してもM
Tは3台であると入力する必要がある。ところが、従来
(2)7”ログツムはチェック条件およびチェック対象
データをプルグラム論理でもっている。即ち何れのデー
タに対して何れのチェックを行うかが固定的であった。
このような従来方式は、 (ハ)他のプログラムに入力するデータとの相対関係に
ついては全く意識されていないため、複数のプログラム
のデータを同時に入力して相対関係をチェックすること
が出来ない。従来は複数プログラムの入力データの相関
チェックを行う必要がある場合には目で見て確認をとっ
ていた。
(ロ)入力データの形式の変更やチェック条件、チェッ
ク対象データの変更に対してはプログラムを修正しなけ
ればなら表い という欠点を有していた。
本発明は、上記の欠点を除去するものであって、複数の
プログラムに対する入力データの相関関係のチェックを
可能にすると共に、入力データやチェック条件の修正に
対して柔軟に対処できるようになった入力データ汎用チ
ェック方式を提供することを目的としている。そしてそ
のため、本発明の入力データ汎用チェック方式は、シン
タックス定義ファイルと、中間データ・ファイルと、複
数個の制御文復lなる入力データを読込み上記シンタッ
クス定義ファイルのシンタックス定義文に基づいてシン
タックス・チェックを行うと共に上記シンタックス定義
文に基づいて作成されたノ臂ス・アドレスに従って上記
制御文のデータおよびノ々ラメータを上記中間データ・
ファイルに格納するシンタックス・チェック実行部と、
上記中間データ・ファイルのデータをオペランド拳デー
タとする各種の命令系列が少なくとも格納されているセ
マンティックス定義ファイルと、複数種類の命令実行部
と、上記セマンティックス定義ファイルから命令を読出
してこれを対応する命令実行部に渡すセマンティックス
実行部とを備えることを特徴とするものである。以下1
本発明を図面を参照しつつ説明する。
第1図は本発明の入力データ汎用チェック方式の1実施
例を示すものであって、1は処理装置、2は入力データ
、3はシンタックス定義ファイル、4は中間データ・フ
ァイル、5はセマンテイック定義ファイル、6はチェッ
ク結果出力部、7はシンタックス・チェック実行部、8
はセマンティックス・チェック実行部、9−1ないし9
−nは命令実行部をそれぞれ示している。
処理装置1は計算機であって、処理装置1の中は論理構
造を示すものである。入力データ2は、カード形式の複
数の制御文から構成されている。
シンタックス定義ファイル3には、後述するようなシン
タックス定義データが格納されている。中間データ・フ
ァイル4には、後述するようなノ臂ス・アドレスに従っ
て、制御文名やパラメータが格納される。セマンティッ
クス定義ファイル5には、チェック項目定義データ(チ
ェック条件の定義命令とチェック対象データの指定)が
格納されている。チェック結果出力部6は、セマンティ
ックス・チェックの結果を出力するものである。シンタ
ックス・チェック実行部7は、読込んだ入力データをシ
ンタックス定義データに従ってシンタックス・チェック
を行い、チェック結果が正常を示している場合には、そ
の制御文の名前および制御文のノ々ラメータをパス・ア
ドレスに従って中間データ嗜ファイル4に格納するもの
である。セマンティックス実行部8は、セマンティック
ス定義ファイル5からチェック項目名およびこれによっ
てグイントされる命令を銃込み、命令を対応する命令実
行部9−1(i=1.2.・・・又はn)に渡すもので
ある。
第1図の実施例は下記のように動作する。
(イ)入力データを制御文一枚ずつ読込む。
(ロ)入力データに対応するシンタックス定義データを
シンタックス定義ファイル3から読込む。
(ハ) シンタックス定義データに従ってシンタックス
・チェックを行う。
に) 入力データを制御文名および各ノぐラメータに分
割して、それぞれのパス・アドレスで示された中間デー
タ・ファイル4の位置に格納する。
に)上記の(イ)ないしくニ)の処理を全入力データに
対して実行し、中間データを完成させる。
(へ) チェック項目定義データ(チェック条件の定義
命令とチェック対象データの指定)をセマンティックス
定義ファイル5から読込む。
(ト)定義命令のオペランドで指定されたチェック対象
データを中間データ・ファイル4から読込み、定義命令
を実行する。
■ チェック対象データの全てについて(ト)の処理を
実行する。
ω) 全てのチェック項目について、上記(ホ)ないし
−の処理を実行し、入力データのチェックを行う。
第2図は制御文に対するシンタックス定義データ及び制
御文のパラメータに対するシンタックス定義データの例
を示すものである。同図において。
10は制御文に対するシンタックス定義データ、11は
制御文のパラメータに対するシンタックス定義データを
それぞれ示している。
制御文に対するシンタックス定義データ101F−おい
て。
なゐ形式の記号が用いられているが、これは制御文の名
前がXであ夛、この制御文をn枚まで入力可能であるこ
とを示している。シンタックス定義が先頭に来ても良い
ことを示しておシ、また。制御文人の後には制御文り又
はEが来ること、並びに制御文りの後には制御大工又は
Jが来ること等を示している。シンタックス定義データ
10は木構造をなしておシ、制御文A、B、Cはレベル
1に位置し、制御文り、E、F、G、Hはレベル2に位
置し、制御文I、J、にはしくル3に位置している。
シンタックス定義文11は、第3図のE文の2ラメータ
に対するものである。シンタックス定義データ11にお
いて という形式の記号が用いられているが、これは、キー名
がKnであること、パラメータの属性がYであること及
びパラメータt−m個まで指定できること等を示してい
る。パラメータの属性としては・10進数や16進数9
文字、空きなどがあル。
人はパラメータが10進数形式であること、Xはパラメ
ータが16進数形式であること、Cはノ臂うメータが文
字形式であること、*は空きであるととを示している。
第2図のシンタックス定義データ■は、 (へ) ノ臂ツメータP1  が10進数であ〕、パラ
メータP、が16進数であ多、パラメータP、とP2と
が(P、P、)と括弧でくくられ、−組と表っているこ
と、 (ロ) ノ臂ツメータP、が文字形式であること、e]
 文字形式OAパラメータ4  と10進数形式のパラ
メータP、とが括弧でくくられて一組となっておシ、文
字形式のパラメータP6と10進数形式のAラメータP
アが括弧でくくられて1組となっておp、キーに、が(
P4  e P5 )と(p6 、p、)とから構成さ
れていること、に) キーに、のAツメータP、の個数
は最大5個まで可能なこと。
等を示している。
第4図は制御文に対すゐパス・アドレス及び制御文のパ
ラメータに対するパス・アドレスの例を示すものである
。同図において、12は制御文に対するノ々ス拳アドレ
ス表、13は制御文のパラメータに対するパス・アドレ
ス表を示している。/eス・アドレス表12.13にお
いて、■は/#パス値可変であることを示している。
パス−アドレス表12において、例えば制御文人のし4
ル数が1、レベル1のパス値1であることが示されてい
るが、これは制御文人の名前が中間データ・7アイル4
のレベル1の、Rス[1の記憶域に格納すべきことを示
している。また、Aスφアドレス表12に訃いて、制御
文りのレベル数が3、レベル1のパス値が1.レベル2
の/櫂ス値が2、レベル3のパス値が変数Vであること
が示されているが、これは、レベル1のパス値1の記憶
域から下向きのチェインを辿シ、しくル2の/々ス値1
の記憶域に至)、レベル2のパス値1の記憶域から下向
きチェインを辿シ、しくル3のパス値1の記憶域に至シ
、このレベル3のノ々ス値1の記憶域から同レベルのチ
ェイン管辿ってデー※込まれている最後の記憶域に至〕
、この記憶域の次の記憶域に制御文りの名前を格納すべ
きことを示している。
制御文のteラメータに対するノダス・アドレス表13
の見方は、制御文の/々ス・アドレス12の見方と同じ
である。例えば、パラメータP5は、レベル1のパス値
1の記憶域から下向きチェインを辿って到達するレベル
2のパス値1の記憶域に格納される。
第5図(イ)は入力データの1例を示し、第5図(財)
は中間データeファイル4上における上記の入力データ
の展開の状態を示している。なお、第5図(ロ)におい
て、1点鎖線よシ上側は制御文名の展開を示してお9、
下側は制御文E(DAパラメータ展開を示している。ま
た、斜線の施された丸印は空きデータを示している〇 中間データ噛ファイル4への制御文名および制御文のパ
ラメータの登録方法を要約すると、下記のようになる。
(イ) 入力データについて、シンタックス定義データ
に従って制御文人力枚数、入力順序、パラメータの記述
形式、A′yメータ値の範囲などをチェックする。
(ロ)制御文名を対応する制御文の)Rス・アドレスに
従って中間データ・ファイル4の所定の位置に格納する
。中間データ・ファイル4における制御文名の格納位置
拡、次のようにして定める。
(1)  各レベルのパス値(パス・アドレスのレベル
毎の値)t−取出し、その値の回数分だけそのレベルの
中間データのチェインを辿る。すなわち、Δス値が定数
PのときはそのレベルのP番目の中間データを得る。ま
た、ノ臂ス値が変数Vのときには、そのレベルの最後の
中間データを得る。制御文のパス・アドレスのレベル数
がNならば、1ないしくN−1)レベルまで上記のよう
な処理を繰返す。
(tt) Nレベルについてはパス値が定数QならばQ
番目に中間データを作成して格納する。パス値が変数V
であれば最後の中間データの次に作成して格納する。
(ハ) パラメータについては、対応するパラメータの
パス・アドレスに従って中間データ・ファイル4の所定
の位置に格納し、制御文名の中間データからチェインす
る。中間データ・ファイルへの格納位置の決め方は、制
御文名の場合と同じである。
第6図はセマンティックス実行部8および命令実行部9
−1ないし9−nでなされるセマンティックス処理を説
明するものである。同図において14−1と14−2は
定義命令、15は作業変数記憶域、16は論理パス・ア
ドレス記憶域、17は定数記憶域、18は実パス・アド
レス記憶域、19はV変数記憶域をそれぞれ示している
。セマンティックス処理は、下記のようにして行われる
(イ) チェック項目から4インドされている最初の定
義命令14−1をセiンティックス定義ファイル5から
取出す。
(ロ)定義命令14−1のオペランド部の内容に基づい
て、オペランド・データを取出す。
オペランド・データが作業変数である場合には作業変数
記憶域15の該轟するデータを取出し、オペランド・デ
ータが定数である場合には定数記憶域17の#幽するデ
ータを取出す。オペランド・データが論理パス・アドレ
スである場合には、論理パス・アドレス記憶域16から
取出された論理パス・アドレスを実パス・アドレスに変
換し、この実パス・アドレスによシ中間データ・ファイ
ル4をアクセスする。論理パス・アドレスから実パス・
アドレスへの変換は、次のようにして行われる。論理ノ
臂ス・アドレス記憶域16から該尚する論理パス・アド
レスを読出し、これを実ノ臂ス・アドレス記憶域18に
セットする。そして、論理ノ々ス争アドレスのパス値が
定数でおる場合には、その値を実パス・アドレスのパス
値とする。論理ノ臂ス・アドレスのパス値がV変数の場
合には、1回目は■変数記憶域19の該尚するV変数の
初期値を実パス・アドレスのノ臂ス値とし、2回目以降
はV変数記憶域19の骸当するV変数の増分値を順次加
えたものを実パス・アドレスのノ々ス値とする。
f→ 取出したオペランドのデータを用いて定義命令1
4−1を実行する。
に)定義命令の実行結果によ、DEXITI又はEXI
Tlのチェインから次の命令を取出す。
に)中間データがなくなるか1次の定義命令のチェイン
が切れると、そのチェック項目のチェックを終了する。
(へ)全てのチェック項目について上記(イ)ないしく
ホ)の処理を行う。
次にセマンティックス定義命令について説明する。定義
命令には、比較演算命令、サーチ命令、四則演算命令、
カウント命令およびその他の命令とがある。定義命令は
、3つのオペランドと1条件に応じて選択される2種類
の命令を次命令として指定することが出来る。
比較演算命令線、オー4ランド1とオペランド2の大小
関係を比較し、結果が真ならEXITI、偽表らばIX
ITgを次命令とするものである。
オペランドにV変数のノス値をもつ論理/Rス・アドレ
スが指定された場合、尚該命令が実行される度に、その
変数の値が更新される。比較演算命令には、IQ(等し
い)、NE(等しくない)、GE(以上)、GT(よシ
大きい)、LE(以下)、LT(未満)などの命令があ
る。
サーチ命令は、オペランド1と同じ値をもつデータをオ
ペランド2のデータの中から捜し出すものである。見つ
かった場合にはEXITl、見つから表かった場合には
EXITlを次命令とする。
当該命令の1回の実行でV変数の値を初期値から順次更
新して中間データがなくなるまで、サーチする。サーチ
命令には、パラメータをサーチするSR命令と、制御文
名をサーチするSSRSR命令ある。
四則演算命令は、オペランド2とオペラン)F3との四
則演算を行い、演算結果をオペランド1に格納してEX
ITIを次命令とするものである。
ただし、中間データがなくなったときは、EXITlを
次命令とする。■変数の扱い方は、比較演算命令と同じ
である。四則演算命令には、ADD(加算)、5UB(
減算)、MLT(乗算)、DIV(割算)などの命令が
ある。
カウント命令は、オペランド3と同じ値をもつデータを
オペランド2のデータから捜し、その個数をオペランド
1江格納するものである。オペランド3が指定されなか
ったときは、オペランド2のデータの個数をカウントす
る。この命令はEXITIを次命令とするものであ夛、
■変数の扱い方はサーチ命令と同じである。カウント命
令には。
制御文の個数をカウントするSC命令と、パラメータの
個数をカウントするPC命令とがある。
その他の命令としては、オペランド2とオペランド3の
大きい方をオペランド1に格納するMAX命令、オペラ
ンド2とオペランド3の小さい万をオペランド1に格納
するMIN命令、オペランド1で指定され九エツー・メ
ツセージを出力するERR命令などがある。これらの命
令は、EXITlの命令を次命令とするが、中間データ
がなくなったと亀は、lXlTlを次命令とする。
■変数の扱い方は、比較演算命令と同じである。
以上の説明から明らかなように、本発明によれば、複数
のプ四グラムの入力データ間の相関関係のチェックが可
能となること、シンタックス定義データおよびセマンテ
ィックス定義データを変更するだけで種々のプログラム
の入力データのチェックを行い得ること等の効果を奏す
ることが出来る。
【図面の簡単な説明】
第1図は本発明の入力データ汎用チェック方式の1実施
例を示す図、第2図は制御文に対するシンタックス定義
データ及び制御文のノ々ラメータに対するシンタックス
定義データの例を示す図、第3図は制御文のパラメータ
の例を示す図、第4図は制御文に対するパス・アドレス
及び制御文のパラメータに対するノqス・アドレスを示
す図、第5図は入力データおよび中間データ・ファイル
上における入力データの展開の状態を示す図、第6図は
セマンティックス実行部8および命令実行部でなされる
セマンティックス処理を説明する図である。 l・・・処理装置、2・・・入力データ、3・・・シン
タックス定義ファイル、4・・・中間データ・ファイル
、5・・・セマンティックス定義ファイル、6・・・チ
ェック結果出力部、7・・・シンタックス・チェック実
行部、8・・・セマンティックス・チェック実行部、9
−1ないし9−n・・・命令実行部、10・・・制御文
に対するシンタックス定義データ、11・・・制御文の
パラメータに対するシンタックス定義データ、12・・
・制御文に対するパス・アドレス表、13・・・制御文
のパラメータに対するパス・アドレス表。 特許出願人 富士通株式会社(y)tffi代理人弁理
士 京 谷 四 部 才1 図

Claims (1)

    【特許請求の範囲】
  1. シンタックス定義ファイルと、中間データ・ファイルと
    複数個の制御文より愈る入力データを読込み上記シンタ
    ックス定義ファイルのシンタックス定義文に基づいてシ
    ンタックス番チェックを行うと共に上記シンタックス定
    義文に基づいて作成されたパス時アドレスに従って上記
    制御文のデータおよびパラメータを上記中間データ・フ
    ァイルに格納するシンタックス慟チェツタ実行部と、上
    記中間データ・ファイルのデータをオペランド・データ
    とする各穏O命令系列が少なくとも格納されているセマ
    ンティックス定義ファイルと、複数種類の命令実行部と
    、上記セマンティックス定義ファイルから命令を読出し
    てこれを対応する命令実行部に渡すセ賃ンテイツタス実
    行部とを備えることをIIFFIIkとする入力データ
    汎用チェック方式。
JP56138246A 1981-09-01 1981-09-01 入力デ−タ汎用チエツク方式 Granted JPS5839353A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56138246A JPS5839353A (ja) 1981-09-01 1981-09-01 入力デ−タ汎用チエツク方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56138246A JPS5839353A (ja) 1981-09-01 1981-09-01 入力デ−タ汎用チエツク方式

Publications (2)

Publication Number Publication Date
JPS5839353A true JPS5839353A (ja) 1983-03-08
JPS6367693B2 JPS6367693B2 (ja) 1988-12-27

Family

ID=15217479

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56138246A Granted JPS5839353A (ja) 1981-09-01 1981-09-01 入力デ−タ汎用チエツク方式

Country Status (1)

Country Link
JP (1) JPS5839353A (ja)

Also Published As

Publication number Publication date
JPS6367693B2 (ja) 1988-12-27

Similar Documents

Publication Publication Date Title
EP0688448B1 (en) Incremental build system
JP4140980B2 (ja) プログラムツリーを表示するコンピュータプログラムの構文依存しない表示方法
JPH02109127A (ja) 仕様処理方法
Drozdek Data structures and algorithms in Java
US5452226A (en) Rule structure for insertion of new elements in a circuit design synthesis procedure
JPH10105551A (ja) プロセッサを用いて第1グラフの単一化の一部として第1節と第2節を結合する方法
Azema et al. Petri nets as a common tool for design verification and hardware simulation
Dasgupta Computer design and description languages
Bergeron et al. Systems programming languages
Graf A visual environment for the design of distributed systems
JPS5839353A (ja) 入力デ−タ汎用チエツク方式
McGrath Python in easy steps
Weiskamp Advanced turbo C programming
JP2002312167A (ja) 変数の値をコンピュータに算出させるためのプログラム、コンパイルプログラム、変数値確定方法およびプログラム生成方法
Leverett Topics in code generation and register allocation
JPS6379176A (ja) デイスプレイ上の設計画面より入力した設計仕様から部品を組合せてプログラムを自動生成する方法
EP0592076B1 (en) Compilation mechanism for a simulation model
JP2001022808A (ja) 論理回路削減装置ならびに論理シミュレーション方法および装置
JP2845519B2 (ja) データパスシミュレーション装置
Dong Transforming Visual Programs into Java and Vice Versa
Tyrrell Writing a Simple Class in Eiffel
Whipple Set theoretic extensions to algorithmic languages
Stegmaier et al. A Universal Control Construct for Abstract State Machines
JPH06348485A (ja) 論理型プログラム比較装置
Walden Macro memories, 1964–2013