1. Instrukce přesunu registrů

1.1. Konvence dokumentu

Notace: Rd, Rn označují ARM registry R0-R15. immN označuje bezprostřední hodnotu o šířce N bitů. Tyto instrukce ovlivňují příznaky podmínek.

1.2. Přesuny registrů

Tam, kde se používají bezprostřední hodnoty, jsou rozšířeny nulami na 32 bitů. Tedy mov(R0, 0xff) nastaví R0 na 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 zapisuje bezprostřední hodnotu do horního půlslova cílového registru. Neovlivňuje obsah dolního půlslova.

  • movwt(Rd, imm32) Rd = imm32

movwt je pseudoinstrukce: assembler MicroPythonu vydá movw následované movt k přesunu 32bitové hodnoty do Rd.