一往確認日記 |
2016年12月26日 [長年日記]
_ Escalator - 命令のデコード(2)
Escalatorというのは、各種PLCがメーカーや機種毎にプロジェクトデータが異なるため互換性がなく、移植するのが大変なのを解決しようとするものです。
ここのescalatorのカテゴリーを見てもらえると今までの経緯を見てもらうことができます。
プログラムデータから1byte読み込む部分です。 ここはサブルーチンとして実装しています。
program_counterが現在読み込もうとしている位置になります。 PLCはワード単位で格納しているので、バイト位置を出すために2で割ってprog_index[0]に入れています。 prog_index[1]には偶数か奇数かを入れていて、偶数なら上位バイトを取り、奇数なら下位バイトを取りFD0に入れています。
program_counterを1進めます。