网站大量收购独家精品文档,联系QQ:2885784924

微机接口ppt课件第4章8086指令系统(下).pptVIP

微机接口ppt课件第4章8086指令系统(下).ppt

  1. 1、本文档共10页,可阅读全部内容。
  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文档。上传文档
查看更多

处理器控制类指令用于对CPU进行控制。标志位操作指令共7条,用于设置标志位CF、DF和IF的值,对其他标志位无影响,如表4-1所示。外部同步指令共5条,用于控制处理器的状态,它们的操作不影响标志位,如表4-2所示。【算法分析】在文章的每一段开头,一般要缩进几个空格。现有一个以空格开头的字符串,找出其中第一个非空格字符,并把其偏移地址存入指定内存单元ADDR中。STEP3STEP2STEP1首先,将字符串首地址送入DI,设置字符串操作方向,将字符串长度送入CX,并为ADDR设置初值。重复执行传扫描指令,直到找到第一个非空格字符,使DI指向第一个非空格字符,并将其偏移地址存入ADDR。若未找到非空格字符,则程序结束。DSEGSEGMENT;数据段,给变量指定数据,分配存储空间STRDBThisisastring!$ ;定义源字符串NUMEQU$-STR ;NUM为字符串STR的长度DSEGENDSESEGSEGMENT ;附加段DBNUMDUP(?) ESEGENDSSSEGSEGMENTSTACK ;堆栈段DB100DUP(?)SSEGENDSCSEGSEGMENT ;代码段ASSUMECS:CSEG,DS:DSEG,SS:SSEG,ES:ESEGSTART:MOVAX,DSEG ;将源串的段地址送入数据段寄存器 MOVDS,AX LEADI,STR ;将字符串的首地址送入DI CLD ;设置方向标志,使DF=0 MOVCX,NUM ;将字符串长度NUM送入CXMOVAL,20H ;将空格字符的ASCII码送入ALMOVADDR,0FFFFH ;将ADDR的初始值设为0FFFFH REPZSCASB;若当前字符是空格,;则重复执行串扫描指令JZEXIT ;若全部是空格,则程序转移至EXITDECDI ;使DI指向第一个非空格字符MOVADDR,DI ;将第一个非空格字符的偏移地址存入ADDR01EXIT:MOVAH,4CH ;系统功能调用,02;结束程序返回DOS03INT21H04CSEGENDS05ENDSTART一般情况下,CPU执行程序是按照指令的顺序逐条执行的,但实际上很多时候都需要改变程序的执行顺序,使程序直接转移到目标位置去执行,这时就要使用程序控制类指令来控制程序的转向。4.3.1无条件转移指令无条件转移指令可分为段内转移和段间转移两大类。段间转移是指程序由当前代码段转移到另一个代码段去执行,这时需要指定新的段地址和偏移地址,即CS寄存器和IP寄存器中的内容都将改变。无条件转移指令是指,不需要判断条件,程序直接跳转到目标地址处去执行。段内转移是指程序在当前代码段内进行转移,这时只需改变IP寄存器中的内容,CS寄存器中的内容不变,即可指定目标地址;010203041.段内直接短转移格式:JMPSHORTOPR功能:SHORT表明程序转移的目标地址与JMP指令在同一个代码段内,操作数可以是目标地址的标号或指定一个8位的偏移量,转移范围为-128~127字节。SHORT可省略。指令执行后,CS的内容不变,IP的值(即JMP指令的下一条指令)与8位偏移量之和被赋于当前的IP。…JMPSHORTNEXTL:MOVAL,12H…NEXT:MOVCX,1234H…分析:JMP指令中的NEXT是一个段内指令标号,它代表了标号L和NEXT之间的偏移量,设此偏移量为08H。执行JMP指令时,如果当前IP的内容为1000H(此时IP已指向标号L处),标号NEXT的偏移地址为1000H+08H=1008H,即IP的内容更新为1008H。格式:JMPNEARPTROPR功能:NEARPTR表明程序转移的目标地址与JMP指令在同一个代码段内,操作数可以是目标地址的标号或指定一个16位的偏移量,转移范围为-32768~32767字节。NEARPTR可省略。指令执行后,CS的内容不变,IP的值(即JMP指令的下一条指令)与16位偏移量之和被赋于当前的IP。1232.段内直接近转移3.段内间接转移格式:JMPWORDPTROPRA功能:程序

文档评论(0)

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

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

1亿VIP精品文档

相关文档