下载此文档

第3章 8088指令系统4(逻辑运算和移位指令.ppt


文档分类:IT计算机 | 页数:约39页 举报非法文档有奖
1/39
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/39 下载此文档
文档列表 文档介绍
逻辑运算和移位指令
逻辑运算指令(与/或/异或/非)
运算规则:按位操作,无进/借位
可对8位或16位的寄存器或存储器中的内容进行按位操作
对标志位的影响(除NOT指令外):
CF OF SF ZF PF AF
0 0 * * * 不定
根据运算结果设置
注意: 非指令NOT对标志无影响
1
表 3 – 3 逻辑运算类指令
2
(1) 逻辑”与” AND
对两个操作数进行按位逻辑“与”操作。
格式:AND dest, src
用途:①实现两操作数按位相与。
②保留操作数的某几位,清零其他位。
③使操作数不变,得影响6个标志位,并使
CF=OF=O 。
例1:保留AL中低4位,高4位清0。
AND AL, 0FH
例2:AND AX, AX;与自身相与,不改变AX内容,但影响6个状态标志位。
3
例3:测试AL的bit7,bit5,bit2是否都是1。
AND AL, 10100100B
CMP AL, 10100100B
JZ YES ; if match, go to YES
……; if not match
……
YES: ……; goes here if all ‘1’
4
对两个操作数进行按位逻辑”或”操作。
格式:OR dest, src
用途:①实现两操作数按位相或。
例: OR [BX], AL
②保留操作数的某几位,其他位置1。
例: OR AL,20H;将AL的BIT5位置1。
③使操作数不变,但影响6个标志位,并使CF=OF=O 。
例: OR AX,AX;AX中的内容不变,但影响6个状态标志位
(2) 逻辑”或” OR
5
对操作数进行按位逻辑”非”操作。
格式:NOT mem/reg
例:NOT CX
NOT BYTE PTR[DI]
(3) 逻辑“非”(取反) NOT
6
对两个操作数按位进行”异或”操作。
格式:XOR dest, src
用途:对reg清零(自身异或)
把reg/mem的某几位变反(与’1’异或)
例1:把AX寄存器清零。例2:把DH的bit4,3变反
① MOV AX,0 XOR DH,18H
② XOR AX,AX
③ AND AX,0
④ SUB AX,AX
(4) 逻辑”异或” XOR
7
操作与AND指令类似,但不将”与”的结果送回,只影响标志位。
AND与TEST间的区别类似于SUB与CMP间的区别
作用: TEST指令常用于位测试,与条件转移指令一起用。
例:测试AL的内容是否为负数。
TEST AL,80H ;检查AL中D7=1?
JNZ MINUS ;是1(负数),转MINUS
……;否则(正数)不转移
MINUS: ……
……
(5) 测试指令TEST
8
表3-4 移位操作类指令

9
移位指令功能示意
算术左移指令
算术右移指令
逻辑左移指令
逻辑右移指令
小循环右移指令
小循环左移指令
大循环左移指令
大循环右移指令
CF=
10

第3章 8088指令系统4(逻辑运算和移位指令 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数39
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zhangbing32159
  • 文件大小0 KB
  • 时间2014-02-13