!!!プログラム配列を走査する コード化されたプログラム配列prog[]をもとに、プログラムを実行するには、、 *現在位置のコードを得る *コードによって処理を振り分ける *最初に戻る コードとしては、以下のようになる void proc_prog(void) { while (prog[prog_cnt] != CODE_END) { switch (prog[prog_cnt]) { case CODE_PUSH: /* pushの処理 */ break; case CODE_PLUS: /* plusの処理 */ break; case CODE_PRINT: /* printの処理 */ break; } } } ただスイッチ文で振り分けただけの構造である。 ところで、コードにはマクロ名を付けた。 #define CODE_END 0 #define CODE_PUSH -1 #define CODE_PLUS -2 #define CODE_PRINT -3 である。 [[戻る|Forthを作ってみる]] [[前へ|Forthを作ってみる / Forthを実行してみる?]] [[次へ|Forthを作ってみる / 「値をスタックに積む」を実行する]] {{adsence}}