汇编语言11课件.pptVIP

  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文档。上传文档
查看更多
* * 第11章 标志寄存器(flag) 通用寄存器:ax,bx,cx,dx 变址寄存器si,di;指针寄存器 bp,sp 指令指针寄存器:ip 段寄存器:cs,ss,ds,es 标志寄存器:flag 用于存储相关指令的某些执行结果; 用来为CPU执行相关指令提供行为依据; 用来控制CPU的相关工作方式. 8086CPU的flag寄存器的结构: 按位记录相关特定信息的16位寄存器 CF 进位标志位 PF 奇偶标志位 AF 辅助进位标志位 ZF 零标志位 SF 符号标志位 TF 陷阱标志位 IF 中断标志位 DF 方向标志位 OF 溢出标志位 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 OF DF IF TF SF ZF AF PF CF 一、ZF标志 标识算术或比较运算的结果是否为0 ZF=1 表示结果为0 ZF=0 表示结果不为0 例:下列指令执行后ZF=1 mov ax,1 mov ax,1 sub ax,1 and ax,0 下列指令执行后ZF=0 mov ax,2 mov ax,1 sub ax,1 or ax,0 二、PF标志 标识运算结果的低8位中“1”的奇/偶数 PF=1 结果中1的个数为偶数 PF=0 结果中1的个数为奇数 例:下列指令执行后PF=1 mov al , 1 or al , 2 下列指令执行后PF=0 mov al , 1 add al , 10 PF标志仅反映最低8位中“1”的个数是偶或 奇,即使是进行16位字操作 三、SF标志 标识算术运算结果的正负。对无符号数无意义。 SF=1 结果为负数 SF=0 结果为非负数 计算机中的一个数据可以看作是有符号数,也可以看作为无符号数,对有符号数在计算机中用补码来表示。按照无符号数求得结果,并相应设置符号标志SF,是否需要该标志位,关键在于我们的程序中进行的是哪一种运算。 例: mov al , add al , 1 四、CF标志 标识无符号数运算时,运算结果的最高位所产生的进 位或借位(低8位向高8位;或低16位向高16位) CF=1 结果中有进位或借位 CF=0 结果中无进位或借位 例: mov al , 98h mov al , 97h add al , al sub al , 98h + - 五、OF标志 标识有符号数算术运算时,是否发生溢出 OF=1 结果发生溢出 OF=0 结果未溢出 在进行有符号数运算时,如结果超过了机器所能表示的范围称为溢出。8位有符号数的表示范围为-128~+127;16位有符号数的表示范围为-32768~+32767。 例:计算有符号数98+99 mov al , 98 (62h) add al , 99 (63h) + (-59) 例:计算有符号数(-16)+(-120) mov al , 0F0H (-16) add al , 88H (-120) + (120) 溢出的判断 判断运算结果是否溢出有一个简单的规则: 只有当两个相同符号数相加(包括不同符号数相减),而运算结果的符号与原数据符号相反时,产生溢出;因为,此时的运算结果显然不正确 其他情况下,则不会产生溢出 六、DF 标志 在比较或移动字符串数据时,指示其地址操作方 向为增值或减值 DF=0 每次操作后,si、di递增; DF=1 每次操作后,si、di递减 cld 指令:将标志位DF置0 std指令:将标志位DF置1 标志位符号及说明 标志位符号 说 明 ZF 零标志位 指示出算术或比较运算的结果(1=结果为0,0=结果不为0) PF奇偶标志位 指示运算结果中低8位的1奇/偶数校验(1=偶数,0=奇数) SF符号标志位 为算术运算结果的正负(1=负号,0=正号) CF进位标志位 在算术运算后最高位(最左)所产生的进位(1=有进位,0=无进位),以及移位或循环移位运算时所移出的位的状态 OF溢出标志位 表示在有符号算术运算时是否发生溢出 DF

文档评论(0)

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

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

1亿VIP精品文档

相关文档