レジスタに格納されているデータを別のレジスタに格納
SP-汎用レジスタ間
MOV Wd|WSP, Wn|WSP // ADD Wd|WSP, Wn|WSP, #0 の別名 MOV Xd|SP, Xn|SP // ADD Xd|SP, Xn|SP, #0 の別名
汎用レジスタ間
MOV Wd, Wm // ORR Wd, WZR, Wm の別名 MOV Xd, Xm // ORR Xd, XZR, Xm の別名
定数
// x0 <-- 0x0123456789ABCDEF movz x0, #0xCDEF movk x0, #0x89AB, LSL #16 movk x0, #0x4567, LSL #32 movk x0, #0x0123, LSL #48
ビットマスクイミディエート
MOV Wd|WSP, #imm // ORR Wd|WSP, WZR, #imm の別名 MOV Xd|SP, #imm // ORR Xd|SP, XZR, #imm の別名
MOVK
MOVK Wd, #imm16 {,LSL #shift} MOVK Xd, #imm16 {,LSL #shift}
16 ビットの定数をビット反転してレジスタに設定
MOVN Wd, #uimm16 {,LSL #shift} MOVN Xd, #uimm16 {,LSL #shift}
16 ビットの定数をビット反転してレジスタに設定
命令エンコードはzが1ならば64ビットレジスタ、sft は 0, 16, 32, 48 のシフト量に対応
レジスタに定数を設定する MOV命令は、定数値によりアセンブラが ORR、MOVZ、MOVN、MOVK を選択して使う