JPH11338764A - 制御装置 - Google Patents
制御装置Info
- Publication number
- JPH11338764A JPH11338764A JP14816798A JP14816798A JPH11338764A JP H11338764 A JPH11338764 A JP H11338764A JP 14816798 A JP14816798 A JP 14816798A JP 14816798 A JP14816798 A JP 14816798A JP H11338764 A JPH11338764 A JP H11338764A
- Authority
- JP
- Japan
- Prior art keywords
- record
- address
- data
- table information
- instruction
- 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.)
- Withdrawn
Links
Landscapes
- Programmable Controllers (AREA)
Abstract
(57)【要約】
【課題】 プログラムを作成するに際して手間がかから
ず、プログラムの可読性に優れた制御装置を提供する。 【解決手段】 ユーザプログラムメモリ5中のユーザプ
ログラムを実行するに際しテーブルデータ領域宣言命令
が実行されると、オペランド1,オペランド2,オペラ
ンド3およびオペランド4の情報をテーブル情報記憶用
メモリ3に登録する。CPU1はレコード位置設定命令
を実行して、テーブル中のアクセスするデータのレコー
ド番号を受けると、テーブル情報記憶用メモリ3に記憶
されているテーブル情報に基づき、アクセスする命令や
データのレコード番号をアドレス変換する。CPU1は
レコード位置読出命令が、レコード位置設定命令により
変換されたテーブル中のアクセスする命令やデータのア
ドレスを、テーブル情報記憶用メモリ3に記憶されてい
るテーブル情報に基づき、レコード番号に変換する。
ず、プログラムの可読性に優れた制御装置を提供する。 【解決手段】 ユーザプログラムメモリ5中のユーザプ
ログラムを実行するに際しテーブルデータ領域宣言命令
が実行されると、オペランド1,オペランド2,オペラ
ンド3およびオペランド4の情報をテーブル情報記憶用
メモリ3に登録する。CPU1はレコード位置設定命令
を実行して、テーブル中のアクセスするデータのレコー
ド番号を受けると、テーブル情報記憶用メモリ3に記憶
されているテーブル情報に基づき、アクセスする命令や
データのレコード番号をアドレス変換する。CPU1は
レコード位置読出命令が、レコード位置設定命令により
変換されたテーブル中のアクセスする命令やデータのア
ドレスを、テーブル情報記憶用メモリ3に記憶されてい
るテーブル情報に基づき、レコード番号に変換する。
Description
【0001】
【発明の属する技術分野】本発明は、命令やデータのア
ドレッシング指定方式としてインデックスレジスタ方式
を採用する制御装置に関する。
ドレッシング指定方式としてインデックスレジスタ方式
を採用する制御装置に関する。
【0002】
【従来の技術】センサ、アクチュエータ等の制御対象機
器を制御するプログラマブルコントローラ等の制御装置
は、アプリケーションを実行するに際し、複数のフィー
ルドからなる1レコードを複数有するテーブルを参照す
るような処理をしばしば行っている。
器を制御するプログラマブルコントローラ等の制御装置
は、アプリケーションを実行するに際し、複数のフィー
ルドからなる1レコードを複数有するテーブルを参照す
るような処理をしばしば行っている。
【0003】従来、制御装置は、テーブルに記憶されて
いるデータ等に対してアクセスする一つの方法として、
インデックスレジスタ等を用いた間接参照方式がある。
いるデータ等に対してアクセスする一つの方法として、
インデックスレジスタ等を用いた間接参照方式がある。
【0004】
【発明が解決しようとする課題】しかしながら、従来の
制御装置では、テーブルに記憶されているデータ等に対
してアクセスする方法として、インデックスレジスタ等
を用いた間接参照方法を採用した場合には、インデック
スレジスタに該当レコードのアドレスを設定するために
は、テーブルの先頭アドレスと、1レコードの長さと、
該当するレコードを指定する情報を用いて、計算する必
要があった。
制御装置では、テーブルに記憶されているデータ等に対
してアクセスする方法として、インデックスレジスタ等
を用いた間接参照方法を採用した場合には、インデック
スレジスタに該当レコードのアドレスを設定するために
は、テーブルの先頭アドレスと、1レコードの長さと、
該当するレコードを指定する情報を用いて、計算する必
要があった。
【0005】また、従来の制御装置では、検索等で該当
するレコードを発見した際に何番目のレコードかを知る
ためには、該当アドレスから逆算する必要があった。
するレコードを発見した際に何番目のレコードかを知る
ためには、該当アドレスから逆算する必要があった。
【0006】このため、従来のインデックスレジスタ等
を用いた間接参照方式を採用した制御装置では、テーブ
ルの特定データに対してアクセスしたいだけであるの
に、プログラム上では余計な演算命令を実行しなければ
ならず、可読性が悪くなるという問題点があった。
を用いた間接参照方式を採用した制御装置では、テーブ
ルの特定データに対してアクセスしたいだけであるの
に、プログラム上では余計な演算命令を実行しなければ
ならず、可読性が悪くなるという問題点があった。
【0007】そこで、本発明は上述した問題点に鑑み、
プログラムを作成するに際して手間がかからず、プログ
ラムの可読性に優れた制御装置を提供することを目的と
する。
プログラムを作成するに際して手間がかからず、プログ
ラムの可読性に優れた制御装置を提供することを目的と
する。
【0008】
【課題を解決するための手段】本発明は、テーブルを特
定するために必要となる特定番号,テーブルの先頭アド
レス,テーブル有するデータのレコード長,テーブルに
格納されているレコード数からなるテーブル情報をあら
かじめ取得しているので、このテーブル情報に基づき、
アドレス変換手段が、テーブル中のアクセスするデータ
のレコード番号を受けると、アクセスするデータのレコ
ード番号からアドレスに変換するとともに、レコード番
号変換手段がアドレス変換手段により変換された、アク
セスするデータのアドレスをレコード番号に変換するこ
とができるようになる。
定するために必要となる特定番号,テーブルの先頭アド
レス,テーブル有するデータのレコード長,テーブルに
格納されているレコード数からなるテーブル情報をあら
かじめ取得しているので、このテーブル情報に基づき、
アドレス変換手段が、テーブル中のアクセスするデータ
のレコード番号を受けると、アクセスするデータのレコ
ード番号からアドレスに変換するとともに、レコード番
号変換手段がアドレス変換手段により変換された、アク
セスするデータのアドレスをレコード番号に変換するこ
とができるようになる。
【0009】従って、インデックスレジスタに該当レコ
ードのアドレスを設定するに際し、従来のように、テー
ブルの先頭アドレスと、1レコードの長さと、該当する
レコードを指定する情報を用いて、計算する必要がなく
なるとともに、検索等で該当するレコードを発見した際
に何番目のレコードかを知るために、従来では必要であ
った該当アドレスから逆算する必要性がなくなった。
ードのアドレスを設定するに際し、従来のように、テー
ブルの先頭アドレスと、1レコードの長さと、該当する
レコードを指定する情報を用いて、計算する必要がなく
なるとともに、検索等で該当するレコードを発見した際
に何番目のレコードかを知るために、従来では必要であ
った該当アドレスから逆算する必要性がなくなった。
【0010】
【発明の実施の形態】以下、本発明に係る制御装置の実
施形態を図面に基づき説明する。
施形態を図面に基づき説明する。
【0011】図1は本発明に係る制御装置の一実施形態
の構成を示すブロック図である。
の構成を示すブロック図である。
【0012】この実施形態の制御装置は、センサ、アク
チュエータ等のプログラマブルコントローラであって、
プログラマブルコントローラ全体を制御するCPU1
と、プログラマブルコントローラのシステムプログラム
を記憶するシステムプログラムメモリ2と、テーブルの
先頭アドレス,レコード長およびレコード数を記憶する
テーブル情報メモリ3と、ユーザプログラムに対する入
力データ,テーブル,演算結果を記憶するI/Oメモリ
4と、ユーザプログラムを記憶するユーザプログラムメ
モリ5とから構成されている。
チュエータ等のプログラマブルコントローラであって、
プログラマブルコントローラ全体を制御するCPU1
と、プログラマブルコントローラのシステムプログラム
を記憶するシステムプログラムメモリ2と、テーブルの
先頭アドレス,レコード長およびレコード数を記憶する
テーブル情報メモリ3と、ユーザプログラムに対する入
力データ,テーブル,演算結果を記憶するI/Oメモリ
4と、ユーザプログラムを記憶するユーザプログラムメ
モリ5とから構成されている。
【0013】図2はI/Oメモリに記憶されたテーブル
の一例を示す図である。
の一例を示す図である。
【0014】テーブル41は、図2に示すように、一つ
の意味を有するデータ(命令含む)からなる複数のフィ
ールド(チャネルまたはワードともいう)で形成された
レコード(レコード0,レコード1,レコード2および
レコード3)が複数有するものである。
の意味を有するデータ(命令含む)からなる複数のフィ
ールド(チャネルまたはワードともいう)で形成された
レコード(レコード0,レコード1,レコード2および
レコード3)が複数有するものである。
【0015】因みに、レコード0は、アドレスが“D0
0000”を有すフィールド0、アドレスが“D000
01”を有するフィールド1および“D00002”を
有すフィールド2の3つのフィールドから形成されてい
る。
0000”を有すフィールド0、アドレスが“D000
01”を有するフィールド1および“D00002”を
有すフィールド2の3つのフィールドから形成されてい
る。
【0016】なお、レコード2をアクセスするには、
“D00006”のアドレスを指定する必要がある。
“D00006”のアドレスを指定する必要がある。
【0017】図3はユーザプログラムメモリに記憶され
ているユーザプログラム中に使用されるテーブルデータ
領域宣言命令の構成を示すブロック図である。
ているユーザプログラム中に使用されるテーブルデータ
領域宣言命令の構成を示すブロック図である。
【0018】このテーブルデータ領域宣言命令(DI
M)4aは、図3に示すように、テーブル領域宣言命令
を示す記号DIMと、I/Oメモリ4中に有するテーブ
ルを特定するテーブル番号を有するオペランド1(OP
R1)と、レコード長を有するオペランド2(OPR
2)と、テーブル41に有するレコード数を有するオペ
ランド3(OPR3)と、テーブル41の開始フィール
ドのアドレスを有するオペランド4(OPR4)とから
構成されている。
M)4aは、図3に示すように、テーブル領域宣言命令
を示す記号DIMと、I/Oメモリ4中に有するテーブ
ルを特定するテーブル番号を有するオペランド1(OP
R1)と、レコード長を有するオペランド2(OPR
2)と、テーブル41に有するレコード数を有するオペ
ランド3(OPR3)と、テーブル41の開始フィール
ドのアドレスを有するオペランド4(OPR4)とから
構成されている。
【0019】そして、テーブルデータ領域宣言命令(D
IM)4aは、ユーザプログラムメモリ5から読まれて
実行すると、オペランド1,オペランド2,オペランド
3,およびオペランド4の情報をテーブル情報記憶用メ
モリ3に登録するようになっている。
IM)4aは、ユーザプログラムメモリ5から読まれて
実行すると、オペランド1,オペランド2,オペランド
3,およびオペランド4の情報をテーブル情報記憶用メ
モリ3に登録するようになっている。
【0020】図4はユーザプログラムメモリに記憶され
ているユーザプログラム中に使用されるテーブルデータ
領域宣言命令の一例を示す図である。
ているユーザプログラム中に使用されるテーブルデータ
領域宣言命令の一例を示す図である。
【0021】図4に示したテーブルデータ領域宣言命令
(DIM)4aは、接点番号が“100000”である
接点命令AがONになると、実行される命令であって、
オペランド1(OPR1)にはI/Oメモリ4中に有す
るテーブル41を特定するテーブル番号が“1”である
ことを示す“&1”を有しており、オペランド2(OP
R2)にはレコード長が3つのフィールドからなること
を示す(図4(b)参照)“&3”を有しており、オペ
ランド3(OPR3)にはテーブルに有するレコード数
が100であることを示す(図4(b)参照)“&10
0”を有しており、オペランド4(OPR4)にはテー
ブル41の先頭のレコードのアドレスとして“D020
00”を有している(図4(b)参照)。“&”は、定
数であることを示す記号である。
(DIM)4aは、接点番号が“100000”である
接点命令AがONになると、実行される命令であって、
オペランド1(OPR1)にはI/Oメモリ4中に有す
るテーブル41を特定するテーブル番号が“1”である
ことを示す“&1”を有しており、オペランド2(OP
R2)にはレコード長が3つのフィールドからなること
を示す(図4(b)参照)“&3”を有しており、オペ
ランド3(OPR3)にはテーブルに有するレコード数
が100であることを示す(図4(b)参照)“&10
0”を有しており、オペランド4(OPR4)にはテー
ブル41の先頭のレコードのアドレスとして“D020
00”を有している(図4(b)参照)。“&”は、定
数であることを示す記号である。
【0022】そして、このテーブルデータ領域宣言命令
(DIM)4aは、CPU1により、オペランド1(O
PR1),オペランド2(OPR2),オペランド3
(OPR3)およびオペランド4(OPR4)のそれぞ
れに記述されている“&1”,“&3”,“&10
0”,“D02000”が読み出され、これらの“&
1”,“&3”,“&100”,“D02000”がテ
ーブル情報記憶用メモリ3に登録される。
(DIM)4aは、CPU1により、オペランド1(O
PR1),オペランド2(OPR2),オペランド3
(OPR3)およびオペランド4(OPR4)のそれぞ
れに記述されている“&1”,“&3”,“&10
0”,“D02000”が読み出され、これらの“&
1”,“&3”,“&100”,“D02000”がテ
ーブル情報記憶用メモリ3に登録される。
【0023】図5はユーザプログラムメモリに記憶され
ているユーザプログラム中に使用されるレコード位置設
定命令の構成を示すブロック図である。
ているユーザプログラム中に使用されるレコード位置設
定命令の構成を示すブロック図である。
【0024】このレコード位置設定命令(SETR)4
bは、図5に示すように、レコード位置設定命令を示す
記号“SETR”と、I/Oメモリ4中に有するテーブ
ル41を特定するテーブル番号を有するオペランド1
(OPR1)と、インデックスレジスタにセットするレ
コード番号を格納するフィールドのアドレスを有するオ
ペランド2(OPR2)と、インデックスレジスタを指
定するインデックスレジスタ番号を有するオペランド3
(OPR3)とから構成されている。
bは、図5に示すように、レコード位置設定命令を示す
記号“SETR”と、I/Oメモリ4中に有するテーブ
ル41を特定するテーブル番号を有するオペランド1
(OPR1)と、インデックスレジスタにセットするレ
コード番号を格納するフィールドのアドレスを有するオ
ペランド2(OPR2)と、インデックスレジスタを指
定するインデックスレジスタ番号を有するオペランド3
(OPR3)とから構成されている。
【0025】そして、レコード位置設定命令(SET
R)4bは、ユーザプログラムメモリ5から読まれて実
行すると、オペランド1(OPR1),オペランド2
(OPR2)およびオペランド3(OPR3)の情報に
基づき、オペランド2(OPR2)に記述されているイ
ンデックスレジスタにセットするレコード番号を格納す
るフィールドのアドレスに基づき、該当するインデック
スレジスタのアドレスを取得し、取得したアドレスをオ
ペランド3(OPR3)に指定されたインデックスレジ
タ“IR2”に記憶するようになっている。
R)4bは、ユーザプログラムメモリ5から読まれて実
行すると、オペランド1(OPR1),オペランド2
(OPR2)およびオペランド3(OPR3)の情報に
基づき、オペランド2(OPR2)に記述されているイ
ンデックスレジスタにセットするレコード番号を格納す
るフィールドのアドレスに基づき、該当するインデック
スレジスタのアドレスを取得し、取得したアドレスをオ
ペランド3(OPR3)に指定されたインデックスレジ
タ“IR2”に記憶するようになっている。
【0026】図6はユーザプログラムメモリに記憶され
ているユーザプログラム中に使用されるレコード位置設
定命令の一例を示す図である。
ているユーザプログラム中に使用されるレコード位置設
定命令の一例を示す図である。
【0027】図6(a)に示したレコード位置設定命令
(SETR)4bは、接点番号が“100001”であ
る接点命令BがONになると実行されるもので、オペラ
ンド1(OPR1)にはI/Oメモリ4中に有するテー
ブル41のテーブル番号が“1”であることを示す“&
1”を有しており、オペランド2(OPR2)にはイン
デックスレジスタにセットするレコード番号を格納する
フィールドのアドレス“0001”を有しており、オペ
ランド3(OPR3)にはオペランド2(OPR2)に
より指定されたフィールドに格納されているアドレス
“0001”に基づき、 取得したアドレスをセットす
るインデックスレジタを特定する“IR2”を有してい
る。
(SETR)4bは、接点番号が“100001”であ
る接点命令BがONになると実行されるもので、オペラ
ンド1(OPR1)にはI/Oメモリ4中に有するテー
ブル41のテーブル番号が“1”であることを示す“&
1”を有しており、オペランド2(OPR2)にはイン
デックスレジスタにセットするレコード番号を格納する
フィールドのアドレス“0001”を有しており、オペ
ランド3(OPR3)にはオペランド2(OPR2)に
より指定されたフィールドに格納されているアドレス
“0001”に基づき、 取得したアドレスをセットす
るインデックスレジタを特定する“IR2”を有してい
る。
【0028】ここで、このコード位置設定命令(SET
R)4bがオペランド2(OPR2)に指定された“0
001”に基づき、オペランド3(OPR3)に指定さ
れたインデックスレジスタ“IR2”にセットするレコ
ード位置を示すアドレスを取得する方法を説明する。
R)4bがオペランド2(OPR2)に指定された“0
001”に基づき、オペランド3(OPR3)に指定さ
れたインデックスレジスタ“IR2”にセットするレコ
ード位置を示すアドレスを取得する方法を説明する。
【0029】図6(b)に示すように、このコード位置
設定命令(SETR)4bは、オペランド2(OPR
2)に有する“0001”のチャネルに記憶されている
“0030”(ヘキサデシマル=16進数)、すなわち
10進数における48をレコード番号48として、この
レコード番号を指定する“D02144”がインデック
スレジスタに設定するようになっている。
設定命令(SETR)4bは、オペランド2(OPR
2)に有する“0001”のチャネルに記憶されている
“0030”(ヘキサデシマル=16進数)、すなわち
10進数における48をレコード番号48として、この
レコード番号を指定する“D02144”がインデック
スレジスタに設定するようになっている。
【0030】図7はユーザプログラムメモリに記憶され
ているユーザプログラム中に使用されるレコード位置読
出命令の構成を示すブロック図である。
ているユーザプログラム中に使用されるレコード位置読
出命令の構成を示すブロック図である。
【0031】このレコード位置読出命令(GETR)4
cは、図7に示すように、レコード位置設読出命令を示
す記号“GETR”と、I/Oメモリ4中に有するテー
ブル41を特定するテーブル番号を有するオペランド1
(OPR1)と、読み出すレコードのアドレスを格納す
るインデックスレジスタの番号を指定するオペランド2
(OPR2)と、読み出すレコードの出力先のアドレス
を有するオペランド3(OPR3)とから構成されてい
る。
cは、図7に示すように、レコード位置設読出命令を示
す記号“GETR”と、I/Oメモリ4中に有するテー
ブル41を特定するテーブル番号を有するオペランド1
(OPR1)と、読み出すレコードのアドレスを格納す
るインデックスレジスタの番号を指定するオペランド2
(OPR2)と、読み出すレコードの出力先のアドレス
を有するオペランド3(OPR3)とから構成されてい
る。
【0032】そして、レコード位置読出命令(GET
R)4cは、ユーザプログラムメモリ5から読まれて実
行すると、オペランド1(OPR1),オペランド2
(OPR2)およびオペランド3(OPR3)の情報に
基づき、テーブル41中のオペランド2(OPR2)に
記述されているインデックスレジスタに格納されている
レコードを、オペランド(OPR3)に記憶されている
主力先に記憶するようになっている。
R)4cは、ユーザプログラムメモリ5から読まれて実
行すると、オペランド1(OPR1),オペランド2
(OPR2)およびオペランド3(OPR3)の情報に
基づき、テーブル41中のオペランド2(OPR2)に
記述されているインデックスレジスタに格納されている
レコードを、オペランド(OPR3)に記憶されている
主力先に記憶するようになっている。
【0033】図8はユーザプログラムメモリに記憶され
ているユーザプログラム中に使用されるれレコード位置
読出命令の一例を示す図である。
ているユーザプログラム中に使用されるれレコード位置
読出命令の一例を示す図である。
【0034】図8に示したレコード位置設定命令(SE
TR)4cは、接点番号が“100002”である接点
命令CがONになると実行されるもので、オペランド1
(OPR1)にはテーブル41を特定するテーブル番号
“&1”を有しており、オペランド2(OPR2)には
読み出すレコードのアドレスを格納するインデックスレ
ジスタを特定する“IR2”を有しており、オペランド
3(OPR3)には読み出したレコードの出力先のアド
レスが“D00000”を有している。
TR)4cは、接点番号が“100002”である接点
命令CがONになると実行されるもので、オペランド1
(OPR1)にはテーブル41を特定するテーブル番号
“&1”を有しており、オペランド2(OPR2)には
読み出すレコードのアドレスを格納するインデックスレ
ジスタを特定する“IR2”を有しており、オペランド
3(OPR3)には読み出したレコードの出力先のアド
レスが“D00000”を有している。
【0035】次に、この実施形態の制御装置の特定レコ
ードを検索する動作を、図9のラダーチャートを参照し
て説明する。
ードを検索する動作を、図9のラダーチャートを参照し
て説明する。
【0036】この実施形態の制御装置は、CPU1がユ
ーザプログラムメモリ5中のユーザプログラムを実行し
ていき、接点番号“100001”である接点命令Cが
ONになると、テーブルデータ領域宣言命令(DIM)
4aを実行する。
ーザプログラムメモリ5中のユーザプログラムを実行し
ていき、接点番号“100001”である接点命令Cが
ONになると、テーブルデータ領域宣言命令(DIM)
4aを実行する。
【0037】すなわち、CPU1は、I/Oメモリ4に
有するテーブル番号“1”として、1レコード当たり5
チャネル(ワード)からなる100レコード分のテーブ
ルがテーブル情報記憶用メモリ3に登録される(図9中
の参照)。
有するテーブル番号“1”として、1レコード当たり5
チャネル(ワード)からなる100レコード分のテーブ
ルがテーブル情報記憶用メモリ3に登録される(図9中
の参照)。
【0038】CPU1は、テーブルデータ領域宣言命令
(DIM)4aを実行すると、コード位置設定命令(S
ETR)4bを実行し、インデックスレジスタIR0に
テーブル番号1として指定されたテーブル41のレコー
ド0の先頭アドレスをセットする(図9中の参照)。
(DIM)4aを実行すると、コード位置設定命令(S
ETR)4bを実行し、インデックスレジスタIR0に
テーブル番号1として指定されたテーブル41のレコー
ド0の先頭アドレスをセットする(図9中の参照)。
【0039】次に、CPU1は、JMP命令4dを実行
する(図9中の参照)。すなわち、CPU1は、テー
ブル情報記憶用メモリ3に登録されているレコード長,
レコード数、テーブル領域開始アドレスを読み出し、レ
コード位置設定命令(SETR)4bで指定されたレコ
ード位置が、読み出されたレコードの最後の位置を超え
ている場合には、エラーが発生したものとして特定レコ
ードを検索する処理を終了する一方、レコード位置設定
命令(SETR)4bで指定されたレコード位置が、読
み出されたレコードの最後の位置を超えていない場合に
は、FOR命令4eとNEXT命令4k間に記述された
処理を繰り返す(図9中の〜参照)。
する(図9中の参照)。すなわち、CPU1は、テー
ブル情報記憶用メモリ3に登録されているレコード長,
レコード数、テーブル領域開始アドレスを読み出し、レ
コード位置設定命令(SETR)4bで指定されたレコ
ード位置が、読み出されたレコードの最後の位置を超え
ている場合には、エラーが発生したものとして特定レコ
ードを検索する処理を終了する一方、レコード位置設定
命令(SETR)4bで指定されたレコード位置が、読
み出されたレコードの最後の位置を超えていない場合に
は、FOR命令4eとNEXT命令4k間に記述された
処理を繰り返す(図9中の〜参照)。
【0040】すなわち、CPU1は、インデックスレジ
スタ“IR0”の値を順次更新しながら、1チャネルに
有する値が“#1234”と、3チャネルに有する値が
“#ABCD”と、5チャネルに有する値が“#999
9”と一致しているか否かを比較する(図9中の,
参照)。
スタ“IR0”の値を順次更新しながら、1チャネルに
有する値が“#1234”と、3チャネルに有する値が
“#ABCD”と、5チャネルに有する値が“#999
9”と一致しているか否かを比較する(図9中の,
参照)。
【0041】CPU1は、それぞれ順次比較していった
結果、一致すると、レコード位置読出命令(GETR)
4cを実行し(図9中の参照)、その一致したものの
レコード番号を“D00000”のアドレスに出力し、
ループ処理を終了し(図9中の参照)、特定レコード
を検索する処理を終了する。
結果、一致すると、レコード位置読出命令(GETR)
4cを実行し(図9中の参照)、その一致したものの
レコード番号を“D00000”のアドレスに出力し、
ループ処理を終了し(図9中の参照)、特定レコード
を検索する処理を終了する。
【0042】この実施形態の制御装置では、レコード位
置設定命令(SETR)4bが、テーブル41中のアク
セスするデータのレコード番号を受けると、テーブル情
報記憶用メモリ3に記憶されているテーブル情報に基づ
き、アクセスするデータのレコード番号からアドレスに
アドレス変換する。
置設定命令(SETR)4bが、テーブル41中のアク
セスするデータのレコード番号を受けると、テーブル情
報記憶用メモリ3に記憶されているテーブル情報に基づ
き、アクセスするデータのレコード番号からアドレスに
アドレス変換する。
【0043】その後、レコード位置読出命令(GET
R)4cが、レコード位置設定命令(SETR)4bに
より変換されたテーブル41中のアクセスするデータの
アドレスを、テーブル情報記憶用メモリ3に記憶されて
いるテーブル情報に基づき、レコード番号に変換するこ
とにより、テーブル41の先頭アドレスと、1レコード
の長さと、該当するレコードを指定する情報を用いて、
計算する必要がなくなるとともに、検索等で該当するレ
コードを発見した際にも何番目のレコードあるかを知る
必要がないため、該当アドレスから逆算する必要がなく
なる。
R)4cが、レコード位置設定命令(SETR)4bに
より変換されたテーブル41中のアクセスするデータの
アドレスを、テーブル情報記憶用メモリ3に記憶されて
いるテーブル情報に基づき、レコード番号に変換するこ
とにより、テーブル41の先頭アドレスと、1レコード
の長さと、該当するレコードを指定する情報を用いて、
計算する必要がなくなるとともに、検索等で該当するレ
コードを発見した際にも何番目のレコードあるかを知る
必要がないため、該当アドレスから逆算する必要がなく
なる。
【0044】よって、プログラムを作成するに際して手
間がかからず、プログラムの可読性が優れるという効果
がある。
間がかからず、プログラムの可読性が優れるという効果
がある。
【0045】
【発明の効果】以上本発明によれば、テーブルを特定す
るために必要となる特定番号,テーブルの先頭アドレ
ス,テーブル有するデータのレコード長,テーブルに格
納されているレコード数からなるテーブル情報をあらか
じめ取得しているので、このテーブル情報に基づき、ア
ドレス変換手段が、テーブル中のアクセスするデータの
レコード番号を受けると、アクセスするデータのレコー
ド番号からアドレスに変換するとともに、レコード番号
変換手段がアドレス変換手段により変換された、アクセ
スするデータのアドレスをレコード番号に変換すること
ができるようになる。
るために必要となる特定番号,テーブルの先頭アドレ
ス,テーブル有するデータのレコード長,テーブルに格
納されているレコード数からなるテーブル情報をあらか
じめ取得しているので、このテーブル情報に基づき、ア
ドレス変換手段が、テーブル中のアクセスするデータの
レコード番号を受けると、アクセスするデータのレコー
ド番号からアドレスに変換するとともに、レコード番号
変換手段がアドレス変換手段により変換された、アクセ
スするデータのアドレスをレコード番号に変換すること
ができるようになる。
【0046】従って、インデックスレジスタに該当レコ
ードのアドレスを設定するに際し、従来のように、テー
ブルの先頭アドレスと、1レコードの長さと、該当する
レコードを指定する情報を用いて、計算する必要がなく
なるとともに、検索等で該当するレコードを発見した際
に何番目のレコードかを知るために、従来では必要であ
った該当アドレスから逆算する必要性がなくなった。
ードのアドレスを設定するに際し、従来のように、テー
ブルの先頭アドレスと、1レコードの長さと、該当する
レコードを指定する情報を用いて、計算する必要がなく
なるとともに、検索等で該当するレコードを発見した際
に何番目のレコードかを知るために、従来では必要であ
った該当アドレスから逆算する必要性がなくなった。
【0047】よって、プログラムを作成するに際して手
間がかからず、プログラムの可読性が優れるという効果
がある。
間がかからず、プログラムの可読性が優れるという効果
がある。
【図1】本発明に係る制御装置の一実施形態の構成を示
すブロック図。
すブロック図。
【図2】I/Oメモリに記憶されたテーブルの一例を示
す図。
す図。
【図3】テーブルデータ領域宣言命令の構成を示すブロ
ック図。
ック図。
【図4】ユーザプログラム中に使用されるテーブルデー
タ領域宣言命令の一例を示す図。
タ領域宣言命令の一例を示す図。
【図5】レコード位置設定命令の構成を示すブロック
図。
図。
【図6】ユーザプログラム中に使用されるレコード位置
設定命令の一例を示す図。
設定命令の一例を示す図。
【図7】レコード位置読出命令の構成を示すブロック
図。
図。
【図8】ユーザプログラム中に使用されるレコード位置
読出命令の一例を示す図。
読出命令の一例を示す図。
【図9】この実施形態の制御装置が実行する特定レコー
ドの検索処理を示すラダーチャート。
ドの検索処理を示すラダーチャート。
1 CPU 2 システムプログラムメモリ 3 テーブル情報メモリ 4 I/Oメモリ 41 テーブル 5 ユーザプログラムメモリ
Claims (1)
- 【請求項1】 記憶手段に有するテーブルに記憶されて
いるデータを取得する際のアドレッシング指定方式とし
て間接参照方式を採用する制御装置において、 前記記憶手段に有するテーブルを特定する特定番号,テ
ーブルの先頭アドレス,テーブル有する前記データのレ
コード長,テーブルに格納されているレコード数からな
るテーブル情報を取得するテーブル情報取得手段と、 このテーブル情報取得手段で取得した前記テーブル情報
を記憶するテーブル情報記憶手段と、 前記テーブル中のアクセスするデータのレコード番号を
受けると、前記テーブル情報記憶手段に記憶されている
前記テーブル情報に基づき、前記アクセスするデータの
レコード番号からアドレスに変換するアドレス変換手段
と、 このアドレス変換手段により変換された、前記アクセス
するデータのアドレスを、前記テーブル情報記憶手段に
記憶されている前記テーブル情報に基づき、レコード番
号に変換するレコード番号変換手段とを具備することを
特徴とする制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14816798A JPH11338764A (ja) | 1998-05-28 | 1998-05-28 | 制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14816798A JPH11338764A (ja) | 1998-05-28 | 1998-05-28 | 制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11338764A true JPH11338764A (ja) | 1999-12-10 |
Family
ID=15446757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14816798A Withdrawn JPH11338764A (ja) | 1998-05-28 | 1998-05-28 | 制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11338764A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011038853A (ja) * | 2009-08-07 | 2011-02-24 | Horiba Ltd | Plcを用いた分析システム |
-
1998
- 1998-05-28 JP JP14816798A patent/JPH11338764A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011038853A (ja) * | 2009-08-07 | 2011-02-24 | Horiba Ltd | Plcを用いた分析システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3710262B2 (ja) | コプロセッサを使用するための電子回路及び方法 | |
JPH03233630A (ja) | 情報処理装置 | |
JPS6122817B2 (ja) | ||
US20090030951A1 (en) | Programming apparatus and automatic data structure identification method | |
JPH11338764A (ja) | 制御装置 | |
JPH087600Y2 (ja) | Promプログラマ | |
JP2006018759A (ja) | 制御装置及び方法 | |
JPS63206802A (ja) | プログラマブル・コントロ−ラ | |
JP2978008B2 (ja) | メモリ管理方式 | |
JPH0713758A (ja) | 命令デコード方法 | |
JP3202796B2 (ja) | 出力装置 | |
JP2000250612A (ja) | プログラマブルコントローラ | |
JP2002182948A (ja) | トレース取得方法および装置 | |
JP3375657B2 (ja) | 命令コード発行方法 | |
JPS63301338A (ja) | 制御メモリ付記憶装置 | |
JP2000298641A (ja) | 情報処理装置およびそのデータ転送方法ならびにデータ転送制御プログラムを格納した記憶媒体 | |
JPH03246602A (ja) | プログラマブルコントローラ | |
JPH01183753A (ja) | 入出力制御装置 | |
JPH04232536A (ja) | 診断制御システム | |
JPS63311445A (ja) | 会話型試験プログラムファイル生成処理システム | |
JPH0578052B2 (ja) | ||
JPS60225904A (ja) | プログラマブル・コントロ−ラ | |
JPH04342043A (ja) | ファイル入出力方式 | |
JPH0319570B2 (ja) | ||
JPS58186844A (ja) | マイクロプログラム制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050802 |