0
我无法理解“左移算术移位”。我有以下指令:~~汇编语言左移确认
SAL $0x2, edx
凡edx = 0xFC
0xFC = 1111 1100
通过左移2,我们应该有:
1111 0000 = 0xF0
正确?
我无法理解“左移算术移位”。我有以下指令:~~汇编语言左移确认
SAL $0x2, edx
凡edx = 0xFC
0xFC = 1111 1100
通过左移2,我们应该有:
1111 0000 = 0xF0
正确?
由于edx
是一个32位寄存器,和edx = 0xFC
(相当于edx = 11111100b
),算术左移将导致1111110000b
,换句话说,edx = 0x3F0
是,可能与溢出标志集。 –
恩,'edx'是一个32位寄存器,而不是一个8位寄存器。 –
是的,但十六进制值仍然正确,是吗? – Sanya