* ARM Thumb 命令セット [#y0dd4d69]

ARM の Thumb 命令セットの特徴をざっくり書くと

- 1 命令が 16 bit
- できることは ARM 命令セットのサブセット
- 使えるレジスタは r0 〜 r7 の 8 つ
- 2 オペランド命令

といったところかな.

** プログラムサイズが小さくなる [#b65533dc]

命令長が短いことから,高密度のコードを生成できることが期待されるのだけれど,命令長が短いがために 1 命令あたりでできることは少なくなります.
ARM 社の説明によると,それでもトータルで 30% 程度コード量が小さくなるそうです.

** 実行速度は遅くなる [#id9188cf]

Thumb 命令は CPU 内部では ARM 命令に展開されて実行されるそうです.
1 命令でできることは ARM 命令よりも少ないので,プログラムの速度は ARM 命令よりも遅くなります.

** ということで [#zbd2eafb]

ARM Linux 上で Thumb 命令はどれだけ使えるのか,というあたりをつついていこうかと思ってます.
どこまで突っ込んで見れるかはわからないけど.

** (追記) [#m2e73514]
そういえば,Thumb-2 命令セット,なんてのもあるけど,今回はこっちの話は無し.
だって実行環境持ってないんだもん.


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS