我正在学习 Arm System Developers Guide,我想知道书中的一个例子:
cpsr = nzcvqiFt_USER // capital indicates flag is set
r0 = 0x00000000
r1 = 0x80000004
MOVS r0, r1, LSL #1
cpsr = nzCvqiFt_USER // capital indicates flag is set
r0 = 0x00000008
r1 = 0x80000004
我知道 8 被结转并且 C 标志是由于这个基于逻辑左移的进位而设置的。为什么 r1 中的 4 也没有移动?MOVS操作是否只移动携带的8?