[电脑基础知识]第3章 指令系统.pptVIP

  1. 1、本文档共82页,可阅读全部内容。
  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文档。上传文档
查看更多
[电脑基础知识]第3章 指令系统

第3章 指令系统与寻址方式 学习汇编指令应从以下几方面着重理解掌握: (1)指令格式; (2)指令的基本功能; (3)指令支持的寻址方式; (4)指令的执行对标志位的影响; (5)指令的特殊要求。   一、通用数据传送指令MOV   格式:MOV DST,SRC ;可在CPU内部或在CPU与存储器之间传送数据 问题引入 1、栈操作机制 栈的基本操作 2、push/pop指令 一、push和pop指令的格式 课堂练习 push、pop指令 二、push与pop指令的执行过程 Any questions? Debug断点调试结果 栈顶超界是危险的! 3、栈段的定义 我们知道:可以将长度为 N(N ≤64K )的一组地址连续、起始地址为16的倍数的内存单元,定义为一个段。 课堂思考题 我们如果要在内存10000H处写入字数据2266H,可以用以下的代码完成: mov ax,1000H mov ds,ax mov ax,2266H mov [0],ax 请补全下面的代码 adc指令的作用 【例3.1】ADD与ADC连用可实现双精度数(双字)的加法。编程计算2F365H+58100H。 DST: (DX) = 0002H (AX) = 0F365H SRC: (BX) = 0005H (CX) = 8100H 指令序列 ADD AX, CX ; (1) 低位字相加 ADC DX, BX ; (2) 高位字相加 (1) 执行后,(AX) = 7465H CF=1 OF=1 SF=0 ZF=0 (2) 执行后,(DX) = 0008H CF=0 OF=0 SF=0 ZF=0 注意:有符号的双精度数的溢出,应根据ADC指令的OF位判断,而作低位加法用的ADD指令的溢出是无意义的。 【例3.3】指出执行下列指令序列后AX中的内容是什么? MOV AX,0FF64H NEG AL SUB AL,9DH NEG AX DEC AL NEG AX 求补指令执行后影响标志位CF、OF、SF、ZF、AF和PF。其中:   OF:当字节操作数为-128(80H),字操作数为-32768 (8000H),执行NEG指令后,操作数无变化,此时溢出标志位OF置1,其余情况OF置0。   CF:只有当操作数为0时,CF=0,1 【例3.4】比较AL的内容数值大小。 CMP AL,50 ;(AL)-50 JB BELOW ;(AL)50,转到BELOW处执行 SUB AL,50 ;(AL)=50,(AL)-50→AL INC AH ;(AH)+1→AH BELOW: … ;跳转标号 比较指令CMP后面一般紧跟着条件转移指令: JB比较两个无符号数大小,低于则转移(SF=1)。 【例3.5】无符号数0A3H与11H相乘。 MOV AL,0A3H ;(AL)=0A3H MOV BL, 11H ;(BL)=11H MUL BL ;(AX)=0AD3H 【例3.6】有符号数0B4H与11H相乘。 MOV AL,0B4H ;(AL)=B4H MOV BL,11H ;(BL)=11H IMUL BL ;(AX)=0FAF4H 0B4H是负数,求补得4CH, 与11H相乘得050CH, 再求补即得:(AX)=0FAF4H 【例3.8】写出实现无符号数0400H/0B4H运算的程序段。 MOV AX,0400H ;(AX)=0400H=1024D MOV BL,0B4H ;(BL)=0B4H=180D DIV BL ;商(AL)=05H=5D,余数(AH)=7CH=124D 【例3.9】写出实现有符号数0400H /0B4H运算的程序段。 MOV AX,0400H ;(AX)=0400H=+1024D MOV BL,0B4H ;(BL)=0B4H=-76D IDIV BL ;(AL)=0F3H=-13D,(AH)=24H=36D (1)加法的十进制调整指令DAA 语句格式:DAA 功能:如果AL寄存器中低4位大于9或辅助进位(AF)=1,则(AL)=(AL)+6且(AF)=1;如

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档