此组指令有:逻辑左移SHL(Shift Logical Left)和逻辑右移SHR(Shift Logical Right)。
它们的指令格式如下:
SHL/SHR Reg/Mem, CL/Imm
受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。
逻辑左移/右移指令只有它们的移位方向不同,移位后空出的位都补0。它们的具体功能下图(a)、(b)所示。
解:用算术左移和右移指令移动1位后,寄存器AH和BL的结果如下表所示。
操作数的初值 | 执行的指令 | 执行后操作数的内容 |
(AH)=12H | SHL AH, 1 | (AH)=24H |
(BL)=0A9H | SHL BL, 1 | (BL)=52H |
(AH)=12H | SHR AH, 1 | (AH)=09H |
(BL)=0A9H | SHR BL, 1 | (BL)=54H |
学习和理解逻辑移位指令的控件。