NATUを作る(パート35)
HARUは失敗に終わってしまった。
だが、その悔しさをバネに、新たにNATUを作ることになった。
今回も、条件分岐命令を使ったテストをしていきたいと思います。
テスト
16bitの足し算
それでは、次は条件分岐を使って16bitの足し算を行いたいと思います。
プログラムは、
0:1番地からインプットしてレジスタの1番地に保存
1:2番地からインプットしてレジスタの2番地に保存
2:3番地からインプットしてレジスタの3番地に保存
3:4番地からインプットしてレジスタの4番地に保存
4:1番地と2番地を足して5番地に保存
5:2番地からアウトプット
6:1番地と2番地を足して0番地に保存
7:前のフラグがオンだったら12にジャンプ
8:3番地と4番地を足して3番地に保存
9:4番地からアウトプット
10:0番地から0番地を引いて0番地に保存
11:前のフラグがオンだったら14にジャンプ
12:3番地と4番地を足してインクリして3番地に保存
13:4番地からアウトプット
14:0番地と0番地を足して0番地に保存
こんな感じにしたいと思います。
もしかしたら、もっと短くできるかもしれないけど、僕にはこれが限界でした、、、
それでは、早速プログラミングしていきたいと思います。
プログラミングが完了しました。
これまでNATUのテストで実行した中で、最も長い命令だったので、少し大変でした。
それでは、まずは0000 0000 0000 0000足す0000 0000 0000 0000を実行させたいと思います。
無事、成功しました!
それでは、次は、、、
0000 0011 0000 0011足す0000 0110 0000 0110を実行させたいと思います。
やった!成功です!
それでは、最後に0101 0101 0101 0101足す0010 1010 1010 1011を実行させて、終わりにしたいと思います。
よしっ!!!
成功しました!
無事動いてよかったです。
それでは、最後に、このNATUをコピーさせたいと思います。
もし、ミスったらここから再開する感じで。
あ、やっぱり、ここは次回にしたいと思います。
それでは、次回はほかの命令も遮断できるようにするのと、コピーをしたいと思います。
今回は、約40分の作業でした。
お疲れさまでした。
それじゃあ、次回、また会いましょう