Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
27 lines (19 loc) · 850 Bytes

File metadata and controls

27 lines (19 loc) · 850 Bytes
Copy raw file
Download raw file
Outline
Edit and raw actions

Register move instructions

Document conventions

Notation: Rd, Rn denote ARM registers R0-R15. immN denotes an immediate value having a width of N bits. These instructions affect the condition flags.

Register moves

Where immediate values are used, these are zero-extended to 32 bits. Thus mov(R0, 0xff) will set R0 to 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 writes an immediate value to the top halfword of the destination register. It does not affect the contents of the bottom halfword.

  • movwt(Rd, imm32) Rd = imm32

movwt is a pseudo-instruction: the MicroPython assembler emits a movw followed by a movt to move a 32-bit value into Rd.

Morty Proxy This is a proxified and sanitized view of the page, visit original site.