MOV (inverted wide immediate)
Move (inverted wide immediate)
This instruction moves an inverted 16-bit immediate
value to a register.
If PSTATE.DIT is 1:
The execution time of this instruction is independent of:
The values of the data supplied in any of its registers.
The values of the NZCV flags.
The response of this instruction to asynchronous exceptions does not vary based on:
The values of the data supplied in any of its registers.
The values of the NZCV flags.
MOVN
0
0
1
0
0
1
0
1
0
0
MOV <Wd>, #<imm>
MOVN <Wd>, #<imm16>, LSL #<shift>
!(IsZero(imm16) && hw != '00') && !IsOnes(imm16)
1
MOV <Xd>, #<imm>
MOVN <Xd>, #<imm16>, LSL #<shift>
!(IsZero(imm16) && hw != '00')
<Wd>
Is the 32-bit name of the general-purpose destination register, encoded in the "Rd" field.
<imm>
For the 32-bit variant: is a 32-bit immediate, the bitwise inverse of which can be encoded in "imm16:hw", but excluding 0xFFFF0000 and 0x0000FFFF
<imm>
For the 64-bit variant: is a 64-bit immediate, the bitwise inverse of which can be encoded in "imm16:hw".
<Xd>
Is the 64-bit name of the general-purpose destination register, encoded in the "Rd" field.