微机接口和原理4.pptVIP

  1. 1、本文档共129页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机接口和原理4

汇编语言程序设计 简明教程;第三章 数据运算与输入输出 ;数值计算与标志位; 指针的使用; 循环程序基本结构; 输入输出与数制转换。; 3.1 算术运算 ; (1)ADD(Addition):加法指令 格式:ADD 目的操作数,源操作数 功能:目的操作数←目的操作数+源操作数 目的操作数:8/16位的寄存器/存储器操作数 源操作数:与目的操作数同类型的寄存器/存储器/立即数 例: ADD AX, SI ; AX←(AX)+(SI),16位运算 ADD X, 3 ; X←(X)+3, 运算位数由X的类型确定 ADD [BX], DX ; DS:[BX]←DS:[BX]+DX, 16位运算;下面的指令无法确定操作数的类型,汇编时将报告错误: ;两个操作数都没有明确类型 如果目的操作数是DS:[SI]指向的字节存储单元,可以修改如下: 说明: 加法指令执行后,状态标志CF, OF, ZF, SF, PF, AF按照运算结 果被刷新; 操作数可以是8位/16位,源操作数与目的操作数应该有相 同的类型,不能同时为内存操作数。 ;加法运算标志;标志位的设置;格式:ADC 目的操作数,源操作数 功能:目的操作数←目的操作数+源操作数+CF 目的操作数:8/16位的寄存器/存储器 源操作数:与目的操作数同类型的寄存器/存储器/立即数 说明: 该指令对标志位的影响、对操作数的要求与ADD指令相同; 主要用于对数据分段相加时高位的加法运算。;CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX, DATA MOV DS, AX MOV AX, WORD PTR X ;取X的低16位,送入AX ADD AX, WORD PTR Y ;X,Y的低16位相加 ;(AX)=99 AAH + DE F0H=H, CF=1 MOV WORD PTR Z, AX ;低16位的和送Z的低16位 MOV AX, WORD PTR X+2 ;取X的高16位,送入AX ADC AX, WORD PTR Y+2 ;X, Y的高16位加进位 ;(AX)=H+H+CF=4578ABDFH, CF=0 MOV WORD PTR Z+2, AX ;高16位的和送Z的高16位 MOV AX, 4C00H INT 21H CODE ENDS END START;MOV AL, A ;取第一个数 MOV AH, 0 ;高8位清零,第一个数“零扩展”为16位 MOV DL, B ;取第二个数 MOV DH, 0 ;把第二个数“零扩展”为16位 ADD AX, DX ;加第二个数 MOV DL, C ;取第三个数,高8位已经为0 ADD AX, DX ;加第三个数 MOV SUM, AX ;保存三个数的和;这个问题的另一种方法: MOV AL, A ;取第一个数 MOV AH, 0 ;高8位清零,准备存放和的高8位 ADD AL, B ;加第二个数 ADC AH, 0 ;如果有进位,存入AH ADD AL, C ;加第三个数 ADC AH, 0 ;如果有进位,加入AH MOV SUM, AX ;保存三个数的和; MOV AL, P ;取第一个数 CBW ;扩展为16位 MOV DX, AX ;第一个数转存入DX MOV AL, Q ;取第二个数 CBW ;扩展为16位 ADD DX, AX ;加第二个数 MOV AL, R ;取第三个数 CBW ;扩展为16位 ADD DX, AX ;加第三个数 MOV TOTAL, DX ;保存三个数的和;格式:INC 目的操作数 功能:目的操作数←目的操作数+1 目的操作数:8/16位的寄存器/存储器 例: INC X ;X←(X)+1,运算位数由X的类型确定 INC WORD PTR [BX] ;DS:[ BX] ←DS:[ BX]+1,16位运算 说明: 会影响标志OF, ZF, SF, PF, AF,但是CF标志不受影响; 增量指令常常用来修改计数器和存储器指针的值。;(1)SUB(Subtract):减法指令 格式:SUB 目的操作数,源操作数

您可能关注的文档

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档