nand <dst> <src1> <src2>
src1レジスタとsrc2レジスタの値をNAND演算して、その結果をdstレジスタに格納します。
shift <dst> <src> <cnt>
srcレジスタの値をcntレジスタの値分だけ左シフトして、その結果をdstレジスタに格納します。
save <address>
addressで指定されたメモリアドレスにrレジスタの値を格納します。
load <address>
addressで指定されたメモリアドレスの値をrレジスタに格納します。
#
コメントアウト。#から始まる行はアセンブルされません。
t : トゥルーレジスタ。読み取り専用で常に0000 0001を出力します。
r : リザルトレジスタ。主に演算結果の出力先に用います。また、saveとloadで参照されます。
a : 汎用レジスタ。
b : 汎用レジスタ。
アセンブラはpython3で動作します。
実行する際は
$ python assembler.py <InputFile>.tcp <OutputFile>.bin
でアセンブル元のtcpファイルとアセンブル先のbinファイルを指定してください。アセンブル先は省略可能で、省略した場合アセンブル先のファイル名は<InputFile>.binになります。
エミュレータはpython3で動作します。
実行する際は
$ python emulator.py <File>.bin
でbinファイルを指定して実行してください。