试分析FLAGS中各状态标志位的状态.docVIP

试分析FLAGS中各状态标志位的状态.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
试分析FLAGS中各状态标志位的状态   摘要:本文介绍标志寄存器6个状态标志位,结合作者教学经验总结,讨论了各标志位状态的分析方法,为读者解决此类问题提出一些建议。   关键词:状态标志位;FLAGS;溢出标志位   中图分类号:TP332文献标识码:A文章编号:1009-3044(2008)09-11753-02      The State of the State Flag in FLAGS   ZHANG Xing-hua   (Langfang Teachers College, Langfang 065000, China)   Abstract: This Article introduces six state flag of the signs register, Discusses the analysis method in status of the flag, make some suggestions For readers to solve such problems, with teaching experience of the author.   Key words: State flag; FLAGS; Overflow flag      1 什么是FLAGS      FLAGS即标志寄存器,它是CPU中执行部件EU中的一个组成部件,FLAGS共有16位,其中7位未用,用到的9位包括6个状态标志位和3个控制标志位。其中6个标志反映CPU指令运行后的运行状态信息,分别为CF、AF、PF、SF、OF和ZF。此标志位用二根据指令执行后的操作结果进行判断转移。3个控制标志分别为PF、IF和TF。控制标志可由编程人员通过指令设置,有专门的指令对控制标志置或置1。      2 状态标志位各位的含义      CF:进位标志位,进行二个无符号数加法或减法运算后,若最高位(第7位或第15位)发生进位或借位,则CF=1,否则CF=0。   PF:奇偶标志位,当逻辑运算的结果低8位中“1”的个数为偶数时PF=1,为奇数时PF=0   AF:辅助进位位,在8(16)位加减法操作中,低4位向高4位有进位或借位时,AF=1,否则AF=0,这个标志位只在BCD数运算中起作用。   ZF:零标志位,当运算结果为零(各位全为0)时ZF=1,否则ZF=0   SF:符号标志位,当运算结果的最高位(第7位或第15位)为1时,SF=1,否则SF=0   OF:溢出标志位,当运算结果走超出了带符号数的范围,即溢出时,OF=1,否则OF=0.8位补码的整数范围是-128~+127,16位补码的整数范围是-32768~+32767。   注意:   (1)进行有符号数运算时,CF对运算结果没有直接意义;   (2)六个状态标志位记录了算术运算和逻辑运算结果的一些特征,如:结果是否为“0”,是否有进位或错位,结果溢出等,不同的指令对状态标志位的影响是不同的。      3 分析各标志位的状态      掌握运算结果对状态标志位的影响,对于在编程中控制程序的执行方向具有重要意义。根据运算结果设置标志位的例子如下。   方法一:若AL=3BH,AH=7DH,指出AL和AH中的内容相加、相减后,标志CF,AF,PF,SF,OF和ZF的状态。   3.1 (AL)+(AH)      分析:由运算结果可知,CF = C7(D7位上的进位)= 0(无进位)   AF = C3(D3位上的进位)= 1(有辅助进位)   PF = 1(运算结果有4个1)   SF = D7 = 1(运算结果符号位为1)   OF = C7?C6 = 0?1 = 1(有溢出)   ZF = 0(运算结果不为0)      3.2 (AL)-(AH)   分析:由运算结果可知:CF = C7(D7位上的借位)=1(有借位)   AF = C3(D3位上的借位)= 1(有辅助借位)   PF = 1(运算结果中有6个1)   SF = D7= 1(符号位为1)   OF= C7?C6 = 1?1 = 0(无溢出);ZF = 0(运算结果不为0)。      方法二:完成二进制11101110加法,分析各标志位的状态。   分析:由运算结果可知,CF=1,AF=1,OF=1,PF=0,ZF=0,SF=0。可以看出如作为符号数运算,则相当于完成十进制数133+238=371255(8位无符号二进制数能表示的最大数为255),运算结果有进位CF=1。当看做有符号数运算,则相当于完成十进制数(-123)+(-17)=-140,超出了8位有符号二进制数能表示

文档评论(0)

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

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

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档