UXTW/UXTH/UXTB:Zero-extend single-word / half-word / byte
SXTW/SXTH/SXTB:Sign-extend single-word / half-word / byte
例:
1.
2.
需要ADD X0, X0, W1时,需要把W1拓展成X1:ADD X0, X0, W1, UXTW
需要LDR X0, [X0, W1]时,同理:LDR X0, [X0, W1, UXTW]
3.
遇到后边带上一个立即数的情况:
LDR W0, [X0, W1, UXTW #2],先把W1作Zero-extend处理,然后left-shift by 2,然后进行LDR。
by the way,一般这种情况,由于内存中是按字节存储,想读取一个4字节的数,一般会进行这种 << 2,即 * 4 的操作。