|
|
![]() |
|
此组指令有:逻辑左移SHL(Shift Logical Left)和逻辑右移SHR(Shift Logical Right)。它们的指令格式如下:
SHL/SHR Reg/Mem, CL/Imm
受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。
逻辑左移/右移指令只有它们的移位方向不同,移位后空出的位都补0。它们的具体功能下图(a)、(b)所示。
|
|
(a)、SHL | (b)、SHR |
例5.11 已知(AH)=12H,(BL)=0A9H,试给出分别用逻辑左移和右移指令移动1位后,寄存器AH和BL的内容。
解:用算术左移和右移指令移动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 |
学习和理解逻辑移位指令的控件。