2014年5月5日 (月曜日)

18:08:53 # Life brainfuck interpreter in ARM Thumb を書いた。 昨日書いたARM assembly で書いたnmemonic に .thumb と .thumb_func ディレクティブを追加したら16bit の命令セットになって そのまま実行できた。 レジスタ指定に使えるビットが1ビットへって3ビットになってたり、 レジスタ複数push/pop命令がレジスタを9bitのbit mapで指定するようになってたり、 ジャンプ命令で条件分岐できるやつは8 bitの相対アドレスになって条件なしブランチも11bit だったり、大きなプログラムを手書きで書いていたら発狂しそうな制約がいくつか。 手元のARM7-TDMI マニュアルにはFPUのアクセス方法が全く記述され ていないのだけどこれどうなっているのだろう。 なんかドキュメントをあさっていたら thumb-2 vfpv3 だとサポートされているらしく、 raspberry pi は vfpv2 なのでつかえなさそう。

Junichi Uekawa

$Id: dancer-diary.el,v 1.94 2009/10/21 14:02:48 dancer Exp $