111111
精灵王
精灵王
  • 注册日期2010-12-08
  • 发帖数640
  • QQ
  • 火币1103枚
  • 粉丝120
  • 关注75
  • 社区明星
阅读:1905回复:0

经典汇编语言教程:5.2.5 逻辑移位指令

楼主#
更多 发布于:2013-01-24 14:25

此组指令有:逻辑左移SHL(ShiftLogical Left)和逻辑右移SHR(ShiftLogical 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

学习和理解逻辑移位指令的控件。

喜欢0 评分0
游客

返回顶部