定数の代入

0とか123とか56789999とか、定数をレジスタに代入(ロード = Load)します。対象となるレジスタはアキュムレータ(A)のみです。定数の長さによって命令を使い分けます。

Operation Mnemonic inCode Opr2 Opr3 Opr4 Opr5 #bytes Opcode Ie Cy Cd
A <- Val(1d) LDI.d Val 1 2v
A <- Val(2d) LDI.b Val 2 30 vv
A <- Val(4d) LDI.w Val Val 3 31 vv vv
A <- Val(8d) LDI.q Val Val Val Val 5 32 vv vv vv vv

Opcode欄の「v」にあたるところに任意の10進1桁を入れてください。

コーディング例

Addr Data Label Opcode Operand Comment
0000 20 start: LDI.d 0 Aに0をロードする
0001 30 12 LDI.b 12 Aに12をロードする
0003 31 03 45 LDI.w 345 Aに345をロードする
0006 32 00 66 77 88 LDI.q 667788 Aに667788をロードする

補足

  • “LDI”は”Load Immediate”(ロード・イミディエイト)の略です。”immediate”は日本語で「即値」と訳されますが、オペコードの「すぐ後ろにある値」という意味で使っています。
  • DeMas(DeMアセンブラ)を使えばデータ長指定記号を省いて記述することができます。
  • この命令はステータスレジスタ(SR)を変化させません。

 

Last modified on 2012/12/05