JPS5847739B2 - 文字出現順序解析装置 - Google Patents
文字出現順序解析装置Info
- Publication number
- JPS5847739B2 JPS5847739B2 JP771076A JP771076A JPS5847739B2 JP S5847739 B2 JPS5847739 B2 JP S5847739B2 JP 771076 A JP771076 A JP 771076A JP 771076 A JP771076 A JP 771076A JP S5847739 B2 JPS5847739 B2 JP S5847739B2
- Authority
- JP
- Japan
- Prior art keywords
- character
- storage means
- appearance
- characters
- order
- 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.)
- Expired
Links
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 3
- 238000012795 verification Methods 0.000 description 2
- LFVLUOAHQIVABZ-UHFFFAOYSA-N Iodofenphos Chemical compound COP(=S)(OC)OC1=CC(Cl)=C(I)C=C1Cl LFVLUOAHQIVABZ-UHFFFAOYSA-N 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Landscapes
- Devices For Executing Special Programs (AREA)
Description
【発明の詳細な説明】
本発明は電子計算機に入力される原始プログラムを目的
プログラムに翻訳する場合に、原始プログラムが語粟解
析されて意味ある最小単位の文字列に分解された後に該
文字列の文字構戊と文字出現順序を解析する(構文解析
)文字出現順序解析装置に関する。
プログラムに翻訳する場合に、原始プログラムが語粟解
析されて意味ある最小単位の文字列に分解された後に該
文字列の文字構戊と文字出現順序を解析する(構文解析
)文字出現順序解析装置に関する。
一般に、COBOLおよびFORTRAN等の高級言語
で書かれたプログラムがコンパイラと称される翻訳プロ
グラムによって計算機が理解できる機械語命令列に変換
されるさいに、先ず原始プログラムは語粟解析(レキシ
カルアナリシス)段階で意味ある最小単位の一連の文字
列からなるシステム定義語、ユーザ一定義語および文字
列データ語等に分解された後、前記各語が使用可能な文
字で構成されているかどうかおよび文字の構或順序が正
しいか否かの構文解析(シンタックスアナリシス)が行
なわれている。
で書かれたプログラムがコンパイラと称される翻訳プロ
グラムによって計算機が理解できる機械語命令列に変換
されるさいに、先ず原始プログラムは語粟解析(レキシ
カルアナリシス)段階で意味ある最小単位の一連の文字
列からなるシステム定義語、ユーザ一定義語および文字
列データ語等に分解された後、前記各語が使用可能な文
字で構成されているかどうかおよび文字の構或順序が正
しいか否かの構文解析(シンタックスアナリシス)が行
なわれている。
この場合、従来では、前記構文解析は翻訳プログラムを
用いることによりソフトウエアで遂次行なわれていたた
めに高級言語プログラムの翻訳処理に多くの時間を費し
ていた。
用いることによりソフトウエアで遂次行なわれていたた
めに高級言語プログラムの翻訳処理に多くの時間を費し
ていた。
本発明の目的は上述の従来の構文解析における欠点を除
去した文字出現順序解析装置を提供することにある。
去した文字出現順序解析装置を提供することにある。
本発明の文字出現順序解析装置は、許される原始プログ
ラムが語粟解析され意味ある最小単位に分割された複数
個の文字を貯える第1の貯蔵手段と、前記文字の許容さ
れる出現順序を記述する語を貯える第2の貯蔵手段と、
前記文字の出現経過情報を累積する第3の貯蔵手段と、
入力される文字が前記第1の貯蔵手段に貯えられた文字
であるかどうかの検査および前記第2の貯蔵手段中の前
記入力された文字に対応する出現順序記述語と前記第3
の貯蔵手段中の出現経過情報とに従って許される出現順
序であるかどうかの検査ならびに前記文字が入力された
という状態を前記第3の貯蔵手段に蓄積する制御手段と
から構成され語粟解析後の文字列の文字の構成順序を検
査する装置である。
ラムが語粟解析され意味ある最小単位に分割された複数
個の文字を貯える第1の貯蔵手段と、前記文字の許容さ
れる出現順序を記述する語を貯える第2の貯蔵手段と、
前記文字の出現経過情報を累積する第3の貯蔵手段と、
入力される文字が前記第1の貯蔵手段に貯えられた文字
であるかどうかの検査および前記第2の貯蔵手段中の前
記入力された文字に対応する出現順序記述語と前記第3
の貯蔵手段中の出現経過情報とに従って許される出現順
序であるかどうかの検査ならびに前記文字が入力された
という状態を前記第3の貯蔵手段に蓄積する制御手段と
から構成され語粟解析後の文字列の文字の構成順序を検
査する装置である。
この発明を用いると、許される文字かどうかの判定、文
字出現順序経過の累積および文字構戒順序の検定等を専
用のハードウエアにより行なえるために前記構文解析を
効率良く行なうことができる。
字出現順序経過の累積および文字構戒順序の検定等を専
用のハードウエアにより行なえるために前記構文解析を
効率良く行なうことができる。
本発明においては、語葉解析された後の文字列を構成す
る各文字が許される文字であるか否かが検査される。
る各文字が許される文字であるか否かが検査される。
例えば、数値データに関しては、Oから9までの数字と
、小数点・と、符号十,一とから構威されているかどう
かが検査される。
、小数点・と、符号十,一とから構威されているかどう
かが検査される。
また、本発明では、前記文字列を構戒する文字の出現順
序が検査される。
序が検査される。
例えば、(1)符号十,−,通貨記号¥は文字列の最初
にこなければならない、(2)小数点・は1度しか用い
ることができない、(3)編集文字,は複数回使用でき
る,(4)最初は英字でなければならない等の検査が可
能である。
にこなければならない、(2)小数点・は1度しか用い
ることができない、(3)編集文字,は複数回使用でき
る,(4)最初は英字でなければならない等の検査が可
能である。
次に図面を参照して本発明を詳細に説明する。
以下に述べる本発明の実施例では、事務用高級言語CO
BOLで用いられる数値データの編集形式を記述する文
字列が正しいか否かを検査ずるさいに次のような簡単な
規則が設けられている。
BOLで用いられる数値データの編集形式を記述する文
字列が正しいか否かを検査ずるさいに次のような簡単な
規則が設けられている。
(1)使用できる文字はー,9,・の3文字。
(2)文字9は伺回でも、文字一 ・は1回たけ使用で
きる。
きる。
(3)文字9,・の後に文字−を書くことはできない。
従って、上記の規則では編集形式として、例えば、9・
99 ,−999 ,−9・99等が許され、9・9・
9,99一等は許されない。
99 ,−999 ,−9・99等が許され、9・9・
9,99一等は許されない。
次に前記規則に従う文字列であるかどうかを解析する本
発明の文字出現順序解析装置の構或および動作について
詳細に説明する。
発明の文字出現順序解析装置の構或および動作について
詳細に説明する。
第1図は本発明の一実施例を示すブロック図である。
第1図において、本発明の文字出現順序解析装置は、許
される文字を貯える貯蔵手段1と、文字の許される出現
順序を記述する語を貯える貯蔵千段2と、文字列の文字
出現順序経過情報を累積する貯蔵手段3と、入力された
文字が許される文字か否かの検査と文字の出現順序が正
しいか否かの検査とを文字列の各文字ごとに遂次行なう
制御手段4と、入力される文字列5とから構或されてい
る。
される文字を貯える貯蔵手段1と、文字の許される出現
順序を記述する語を貯える貯蔵千段2と、文字列の文字
出現順序経過情報を累積する貯蔵手段3と、入力された
文字が許される文字か否かの検査と文字の出現順序が正
しいか否かの検査とを文字列の各文字ごとに遂次行なう
制御手段4と、入力される文字列5とから構或されてい
る。
許される文字を貯える貯蔵手段1は通常の連想メモリで
構成されており、本実施例では各文字を表わすための1
語が8ビットからなる計3語の記憶容量を有しており、
第2図に示すように文字9,,−を保存する。
構成されており、本実施例では各文字を表わすための1
語が8ビットからなる計3語の記憶容量を有しており、
第2図に示すように文字9,,−を保存する。
この貯蔵手段1は制御千段4から照合信号47が送られ
ると、入力文字列5中の処理すべき文字が前記3文字の
いずれかに一致するかを照合し、3文字の内いずれか1
文字と一致しているか否かを示す一致信号11および前
記3文字を貯蔵する各語からの一致信号12(3ビット
)を発生する。
ると、入力文字列5中の処理すべき文字が前記3文字の
いずれかに一致するかを照合し、3文字の内いずれか1
文字と一致しているか否かを示す一致信号11および前
記3文字を貯蔵する各語からの一致信号12(3ビット
)を発生する。
許される出現順序記述語を貯える貯蔵千段2は許される
文字の種類の数に等しい3語からなる通常のメモリであ
る。
文字の種類の数に等しい3語からなる通常のメモリであ
る。
この場合、行方向の各語のビット数は実現したい出現順
序規則に従って決まるが、1文字の出現順序規則を1ビ
ットで表わし、第3図に示すように1語を3ビットで構
成している。
序規則に従って決まるが、1文字の出現順序規則を1ビ
ットで表わし、第3図に示すように1語を3ビットで構
成している。
次に、各出現順序記述語のビット構成法について第3図
を用いて説明する。
を用いて説明する。
前記貯蔵手段2は3行3列のマトリックスとして構成す
ることができ、マトリックスの各要素は1ビットで表現
され、次のような規則に従って決定される。
ることができ、マトリックスの各要素は1ビットで表現
され、次のような規則に従って決定される。
(1)マトリックスの対角要素(3a ,3b t3c
)は対応する文字が1回しか出現できない時、2進値l
を与え、複数回出現してよい時、2進値Oを与える(例
えば、文字9は伺回出現してもよいため、要素3aはO
になっており、文字・は1回しか出現できないため、要
素3b,3cは1になっている)。
)は対応する文字が1回しか出現できない時、2進値l
を与え、複数回出現してよい時、2進値Oを与える(例
えば、文字9は伺回出現してもよいため、要素3aはO
になっており、文字・は1回しか出現できないため、要
素3b,3cは1になっている)。
(2)マ.トリックスの他の要素は行に対応する文字が
列に対応する文字以後に出現してよい時、2進値0を与
え、出現できない時、2進値1を与える(例えば、要素
3dは文字9の後に文字・が出現してもよいため0にな
っており、また、要素3eは文字9の後に文字−が出現
してはいけないために1になっている)。
列に対応する文字以後に出現してよい時、2進値0を与
え、出現できない時、2進値1を与える(例えば、要素
3dは文字9の後に文字・が出現してもよいため0にな
っており、また、要素3eは文字9の後に文字−が出現
してはいけないために1になっている)。
上記2つの規則に従ったビットパターンが第3図に示さ
れている。
れている。
貯蔵千段2には、入力された文字と貯蔵千段1の内容と
の照合の結果として貯蔵千段1の各文字から各々1ビッ
トづつ合計3ビットの一致信号12(一致時に2進値1
、不一致時に2進値0をそれぞれ示す)が出力される。
の照合の結果として貯蔵千段1の各文字から各々1ビッ
トづつ合計3ビットの一致信号12(一致時に2進値1
、不一致時に2進値0をそれぞれ示す)が出力される。
前記一致信号をもとにして図示されていない通常のエン
コーダを介して作成したアドレス情報を用いて、前記入
力文字に対応する3ビットの出現順序記述語21が取り
出される。
コーダを介して作成したアドレス情報を用いて、前記入
力文字に対応する3ビットの出現順序記述語21が取り
出される。
文字列の文字出現順序経過情報を累積する貯蔵千段3は
、出現順序記述語に等しいビット数である3ビットから
なる通常のレジスタであり、1つの文字が出現すると、
前記貯蔵千段1からの一致信号12に従ってその文字に
対応するビット位置を2進値1にセットすることによっ
てその文字が出現したことを蓄積できるようにビット単
位でセットできるとともに1つの文字列の解析開始時に
自分自身の全ビットをリセットできる構造を備えている
。
、出現順序記述語に等しいビット数である3ビットから
なる通常のレジスタであり、1つの文字が出現すると、
前記貯蔵千段1からの一致信号12に従ってその文字に
対応するビット位置を2進値1にセットすることによっ
てその文字が出現したことを蓄積できるようにビット単
位でセットできるとともに1つの文字列の解析開始時に
自分自身の全ビットをリセットできる構造を備えている
。
さらに、文字の出現順序を検定するためにこの貯蔵手段
3中の文字出現順序経過情報は信号線31を介して制御
千段4に与えられる。
3中の文字出現順序経過情報は信号線31を介して制御
千段4に与えられる。
第4図は入力された文字が許される文字か否かの検査と
文字の出現順序が正しいか否かの検査とを行なうための
制御手段4の詳細ブロック図である。
文字の出現順序が正しいか否かの検査とを行なうための
制御手段4の詳細ブロック図である。
第4図において、制御千段4は、論理積回路41と、零
判定回路42と、シークエンス制御回路43とから構戒
されている。
判定回路42と、シークエンス制御回路43とから構戒
されている。
論理積回路41は通常の3個のANDゲートを用いて作
ることができ、第1図の貯蔵千段2から取り出された入
力文字に対応する出現順序記述語21と貯蔵千段3から
取り出されたこれまでに累積されている出現順序経過情
報31との3ビットの論理積を取る。
ることができ、第1図の貯蔵千段2から取り出された入
力文字に対応する出現順序記述語21と貯蔵千段3から
取り出されたこれまでに累積されている出現順序経過情
報31との3ビットの論理積を取る。
零検出回路42は通常の3人力OR回路で構成され、前
記論理積回路41で作られた3ビットの論理積の結果4
4が少なくとも1ビットでも論理値1であると、信号線
45に論理値信号1を出力する。
記論理積回路41で作られた3ビットの論理積の結果4
4が少なくとも1ビットでも論理値1であると、信号線
45に論理値信号1を出力する。
シークエンス制御回路43は通常のD型フリツブフロツ
プを用いて構成することができ、図示されていない外部
装置から文字列の解析要求信号が与えられると、まず入
力文字要求信号46により前記文字列5から1文字が取
り出される。
プを用いて構成することができ、図示されていない外部
装置から文字列の解析要求信号が与えられると、まず入
力文字要求信号46により前記文字列5から1文字が取
り出される。
次に、前記文字が許される文字セットに含まれるか検査
するように貯蔵手段1へ照合信号47を発生する。
するように貯蔵手段1へ照合信号47を発生する。
連想メモリを用いた照合の結果、貯蔵千段1から一致信
号11と各文字からの一致信号12とが出力される。
号11と各文字からの一致信号12とが出力される。
また、一致信号11が不一致状態を示すと、前記制御回
路43から文字不正信号48が出力される。
路43から文字不正信号48が出力される。
さらに、前記一致信号11が一致状態をとり、入力文字
に対応する出現順序記述語21とこれまでの文字出現順
序経過情報31との論理積の結果をあらわす信号45が
1状態の時、前記制御回路43から文字不正信号48が
出力され、また、O状態の時、信号50によって貯蔵手
段3中のその文字に対応するビットがセットされる。
に対応する出現順序記述語21とこれまでの文字出現順
序経過情報31との論理積の結果をあらわす信号45が
1状態の時、前記制御回路43から文字不正信号48が
出力され、また、O状態の時、信号50によって貯蔵手
段3中のその文字に対応するビットがセットされる。
以下この動作を各文字について繰り返して、1つの文字
列が終了するまで行なった結果、許される文字でありか
つ出現順序が正しいと判断されると、この文字列が正し
かったことを示す信号49が前記制御回路43から出力
される。
列が終了するまで行なった結果、許される文字でありか
つ出現順序が正しいと判断されると、この文字列が正し
かったことを示す信号49が前記制御回路43から出力
される。
以上実施例を用いて詳細に説明したが、第5図は入力文
字列が (1)−9・9および(2)9・9・である場合を例に
して具体的に示したものであり、各文字が入力された時
の信号21,31,45及び貯蔵千段3の変化を示す。
字列が (1)−9・9および(2)9・9・である場合を例に
して具体的に示したものであり、各文字が入力された時
の信号21,31,45及び貯蔵千段3の変化を示す。
本実施例中の貯蔵手段2に貯えられる出現順序記述語は
簡単な出現規則のために1文字につき1ビットで実現さ
れているが、出現規則が複雑な場合には、複数ビットで
実現される。
簡単な出現規則のために1文字につき1ビットで実現さ
れているが、出現規則が複雑な場合には、複数ビットで
実現される。
例えば、文字が連続して出現して良いか否かの規定を上
記例に付加すると、第6図に示すように1文字に2ビッ
トを用いることによって実現できる。
記例に付加すると、第6図に示すように1文字に2ビッ
トを用いることによって実現できる。
この場合、貯蔵千段3もそれに応じてビット数が増加さ
れる。
れる。
また、本実施例中の貯蔵手段3は出現した文字に対応す
るビット位置を単にセットできる機能しか有していない
が、同時にその他のビット位置に対するセット/リセッ
トの制御ができる構或にすることもできる。
るビット位置を単にセットできる機能しか有していない
が、同時にその他のビット位置に対するセット/リセッ
トの制御ができる構或にすることもできる。
さらに、本実施例では、入力された文字列の全体が正し
いか否かの検査を行なっているが、各文字が検査される
毎に前記制御信号や前記各貯蔵手段の内容を外部装置へ
送出する構成を取ることも可能である。
いか否かの検査を行なっているが、各文字が検査される
毎に前記制御信号や前記各貯蔵手段の内容を外部装置へ
送出する構成を取ることも可能である。
第1図は本発明の一実施例を示すブロック図、第2図は
第1図の貯蔵千段1の構成図、第3図は第1図の貯蔵千
段2の内容を詳細に示す図、第4図は第1図の制御手段
4を詳細に示す図、第5図は第1図に示す実施例中の制
御信号および各貯蔵手段の変化を示す図および第6図は
文字の許される出現規則を示す図である。 第1図において、参照数字1は許される文字を貯える手
段、参照数字2は許される出現順序を記述する語を貯え
る手段、参照数字3は文字の出現経過情報を累積する手
段および参照数字4は文字の出現順序の検査を制御する
手段をそれぞれあらわす。
第1図の貯蔵千段1の構成図、第3図は第1図の貯蔵千
段2の内容を詳細に示す図、第4図は第1図の制御手段
4を詳細に示す図、第5図は第1図に示す実施例中の制
御信号および各貯蔵手段の変化を示す図および第6図は
文字の許される出現規則を示す図である。 第1図において、参照数字1は許される文字を貯える手
段、参照数字2は許される出現順序を記述する語を貯え
る手段、参照数字3は文字の出現経過情報を累積する手
段および参照数字4は文字の出現順序の検査を制御する
手段をそれぞれあらわす。
Claims (1)
- 1 許される原始プログラムが語粟解析され意味ある最
小単位に分割された複数個の文字を貯える第1の貯蔵手
段と、前記文字の許容される出現順序を記述する語を貯
える第2の貯蔵手段と、前記文字の出現経過情報を累積
する第3貯蔵手段と、入力される文字が前記第1の貯蔵
手段に貯えられた文字であるかどうかの検査および前記
第2の貯蔵手段中の前記入力された文字に対応する出現
順序記述語と前記第3の貯蔵手段中の出現経過情報とに
従って許される出現順序であるかどうかの検査ならびに
前記文字が入力されたという状態を前記第3の貯蔵手段
に蓄積する制御手段とから構成され語葉解析後の文字の
構成順序を検査する文字出現順序解析装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP771076A JPS5847739B2 (ja) | 1976-01-26 | 1976-01-26 | 文字出現順序解析装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP771076A JPS5847739B2 (ja) | 1976-01-26 | 1976-01-26 | 文字出現順序解析装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5291342A JPS5291342A (en) | 1977-08-01 |
| JPS5847739B2 true JPS5847739B2 (ja) | 1983-10-24 |
Family
ID=11673285
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP771076A Expired JPS5847739B2 (ja) | 1976-01-26 | 1976-01-26 | 文字出現順序解析装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5847739B2 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS592141A (ja) * | 1982-06-29 | 1984-01-07 | Fujitsu Ltd | 文字ストリング処理方式 |
| JPS595345A (ja) * | 1982-06-30 | 1984-01-12 | Fujitsu Ltd | 文字ストリング処理方式 |
| JPS61143855A (ja) * | 1984-11-14 | 1986-07-01 | Hitachi Software Eng Co Ltd | プログラムテスト方式 |
-
1976
- 1976-01-26 JP JP771076A patent/JPS5847739B2/ja not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5291342A (en) | 1977-08-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4053871A (en) | Method and system for the iterative and simultaneous comparison of data with a group of reference data items | |
| US5479654A (en) | Apparatus and method for reconstructing a file from a difference signature and an original file | |
| US4734856A (en) | Autogeneric system | |
| US5267349A (en) | Fast determination of subtype relationship in a single inheritance type hierarchy | |
| JPS5847739B2 (ja) | 文字出現順序解析装置 | |
| JPS60105039A (ja) | 文字列照合方式 | |
| Atig et al. | Emptiness of ordered multi-pushdown automata is 2etime-complete | |
| JPS63500547A (ja) | 循環コンテクストアドレス指定可能メモリ | |
| CN119065663A (zh) | 一种自动化生成芯片引脚多路复用电路代码的方法 | |
| CN116360794A (zh) | 数据库语言解析方法、装置、计算机设备及存储介质 | |
| JP2636221B2 (ja) | 部分テスト項目作成方法 | |
| US20250390279A1 (en) | Specification generation device, specification generation method, and recording medium | |
| CN112464636A (zh) | 约束文件的比较方法、装置、电子设备和存储介质 | |
| JPH06131232A (ja) | データ辞書の多重定義修正支援装置 | |
| JP3847836B2 (ja) | 文字列検索方法とその装置 | |
| JPH1165837A (ja) | 外部ファイルデータのデータ例外検出方法及び外部ファイルデータのデータ例外検出プログラムを記録した記録媒体 | |
| JP3454188B2 (ja) | コマンドパラメータ構文検査装置、コマンドパラメータ構文検査方法およびコマンドパラメータ構文解析プログラムを記録した記録媒体 | |
| JP3216660B2 (ja) | データ型及びデータ定数展開方式 | |
| Fischer et al. | Predecessor machines | |
| CN116204581A (zh) | 一种数据写入方法、装置、计算机设备和存储介质 | |
| CN121579671A (zh) | 基于ac树的模糊匹配方法及系统、电子设备、存储介质 | |
| SU1008752A1 (ru) | Устройство дл поиска информации | |
| JPH04153880A (ja) | 文字列の部分列抽出処理方式 | |
| HK40048789A (en) | Constraint file comparison method and device, electronic equipment and storage medium | |
| CN118779322A (zh) | 数据血缘解析方法、电子设备、存储介质及程序产品 |