1. Instruksi pemindahan register

1.1. Konvensi dokumen

Notasi: Rd, Rn menunjuk register ARM R0-R15. immN menunjuk nilai langsung dengan lebar N bit. Instruksi-instruksi ini mempengaruhi flag kondisi.

1.2. Pemindahan register

Di mana nilai langsung digunakan, nilai tersebut diperluas nol menjadi 32 bit. Dengan demikian mov(R0, 0xff) akan menetapkan R0 menjadi 255.

  • mov(Rd, imm8) Rd = imm8

  • mov(Rd, Rn) Rd = Rn

  • movw(Rd, imm16) Rd = imm16

  • movt(Rd, imm16) Rd = (Rd & 0xffff) | (imm16 << 16)

movt menulis nilai langsung ke halfword atas dari register tujuan. Ini tidak mempengaruhi isi halfword bawah.

  • movwt(Rd, imm32) Rd = imm32

movwt adalah pseudo-instruksi: assembler MicroPython mengeluarkan movw diikuti oleh movt untuk memindahkan nilai 32-bit ke Rd.