微机原理第2章-汇编语言与汇编程序.ppt

  1. 1、本文档共115页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理第2章-汇编语言与汇编程序

格式:DEC dest 操作:dest-1→dest (1) 减法指令SUB 2. 减法类指令(类比加法) 格式:SUB dest,source 操作:dest -source →dest (2)带借位减指令SBB 格式:SBB dest,source 操作: dest -source -CF →dest ;CF为前面 指令产生的借位 (3)减量指令DEC 3.比较指令 CMP 格式:CMP dest,source 操作: dest -source 执行减操作,只影响标志,不改变操作数 用来判断两数的大小与相等 后面常跟条件转移指令,实现程序的分支 根据标志位判比较结果 ZF=? ZF=1, 两数相等; ZF=0, 两数不等 2) 若两数不等(无符号数),则: CF=0, 目的≥源 CF=1, 目的<源 1.求补指令 格式:NEG dest 操作: (dest)+1→dest; 求补,不是求补码 影响标志位,操作数只能是REG,MEM 如:BX=000AH, NEG BX ;BX=FFF6H 2.3.3 逻辑运算指令 (按位操作,字/字节数据) 格式:NOT dest 操作: (dest)→dest;求反,不是求反码 如:AX=000AH NOT AX ;AX=FFF5H # 操作数为通用寄存器/存储器 不影响标志位 2. 求反指令 3. 与AND、或OR、 异或XOR 格式:AND dest, src;结果回传→目的 格式:OR dest, src;结果回传→目的 格式:XOR dest, src;结果回传→目的 操作数类型:P61 图2-9(要求同加减指令) 如: AND AX,0FFFEH ;AX最低位置0,余不变 OR AX,0001H ;AX最低位置1,余不变 XOR AX,AX ;AX清0 AND [SI],[BX] ;? # 运算后OF=CF=0,余同加操作影响 例1:把AX寄存器清零 ① MOV AX,0 ② XOR AX,AX ③ AND AX,0 ④ SUB AX,AX 例2: 将AX的高4位,CX的中间8位,BX的低4位拼合起来,程序段如下: 如:AX=1234H,BX=5678H,CX=9ABCH→ CX=1AB8H AND AH,0F0H ;取AX高4位,AH=10H AND BL,0FH ;取BX低4位,BL=08H AND CX,0FF0H ;取CX中间8位,CX=0AB0H OR CH,AH ; 拼字 CH=1AH OR CL,BL ;CL=0B8H→CX=1AB8H 格式:TEST 目的,源;目的∧源 特点:与操作, 结果不回传, 影响标志位 (且OF=CF=0),操作数不变 如: TEST AX,8000H ; 若AX最高位=1,则结果≠0,ZF=0 若AX最高位=0,则结果=0,ZF=1 AX=? # 后面常跟条件转移指令,实现程序的分支 4. 测试指令TEST 目的仅是REG或MEM 源为移位的次数,只能是CL或立即数1~31, 8086的立即数只能是1 CL=移位次数1~255,CL值执行后不变 为双操作数指令,用于将目的操作数的二进制数移位 (允许‘目的’,‘源’类型不一) 2.3.4 移位指令 格式: SHR dest,source 操作: ;最后移出位移至CF 用0填补已空出的位 例:AL=abcdefgh, SHR AL,1 ;执行后,AL=0abcdefg,CF=h 例:AL=abcdefgh,CL=3 SHR AL,CL ;执行后,AL=000abcde,CF=f dest CF 0 1.逻辑右移SHR 格式: SAR dest,source 操作: ;最后移出位移至CF,

文档评论(0)

骨干 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档