1. Yazmaç taşıma komutları

1.1. Belge kuralları

Gösterim: Rd, Rn R0-R15 ARM yazmaçlarını belirtir. immN N bit genişliğinde anlık (immediate) bir değeri belirtir. Bu komutlar koşul bayraklarını etkiler.

1.2. Yazmaç taşımaları

Anlık değerlerin kullanıldığı yerlerde, bunlar 32 bite sıfır genişletmesiyle genişletilir. Böylece mov(R0, 0xff) R0’ı 255 olarak ayarlar.

  • mov(Rd, imm8) Rd = imm8

  • mov(Rd, Rn) Rd = Rn

  • movw(Rd, imm16) Rd = imm16

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

movt, hedef yazmacın üst yarım sözcüğüne bir anlık değer yazar. Alt yarım sözcüğün içeriğini etkilemez.

  • movwt(Rd, imm32) Rd = imm32

movwt bir sözde komuttur (pseudo-instruction): MicroPython assembler’ı, 32 bitlik bir değeri Rd’ye taşımak için bir movw ardından bir movt yayar.