CPU実験室

誰も見向きもしない古いCPUをいじって動かしてみようというプロジェクトです

コード拡張

それでは命令のほうはどう拡張しているのか、ですがこれはOPR(オペレーション命令:機能コード#F)が使われます。例えばスタックから2個データをポップして加算、スタックにプッシュするADD命令(OP.コードが#05。機能コードとは違う)はOPR命令のデータ部にOP.コードを置いてマシンコードは#F5になります。

f:id:O3I:20211002160738j:plain

このままではやはり命令は16個までしか増やせませんが、ここはデータ拡張と同じでPFIX命令で上位4ビットを与えることができ、これで一気に256個まで命令を拡張できます。

拡張された命令の一部、論理算術演算の命令セットは以下のようになります

f:id:O3I:20211002160751j:plain

PFIX命令を何度も使えば無限に命令を増やせそうですがざっと見たところ12ビットまでしか使ってないようでした