博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
汇编标志位
阅读量:4630 次
发布时间:2019-06-09

本文共 508 字,大约阅读时间需要 1 分钟。

ZF

所有的对操作数进行算术和逻辑运算的指令,都会根据运算结果修改ZF标志。 第一点: 大多数情况下,运算结果对ZF的修改,由结果是否为0决定。 若运算结果为0,则ZF=1; 若运算结果非0,则ZF=0. 举些例子吧: 加法指令,比如ADD, ADC, INC,等 减法指令,比如SUB, SBB, CMP, DEC, NEG, 等 逻辑运算指令,比如AND, TEST, OR, XOR, NOT等 逻辑移位指令,比如SHL, SHR, SAL, SAR, RCL, RCR等(ROL,ROR不会改变ZF,原因可自己分析) 调整指令,比如AAA, AAS,等 串指令中含有算术运算的那些,比如CMPS, SCAS等 控制转移指令中含有算术运算的,比如LOOP 第二点: 但是,也有一些指令,会改变ZF标志,但其结果具有不确定性,没有运算结果是否为0的意义。 比如乘法指令 MUL和IMUL, 除法指令DIV和IDIV等 改变标志寄存器内容的SAHF指令,堆栈操作中的POPF指令,也不具有运算结果的意义。

转载于:https://www.cnblogs.com/rookieDanny/p/7793814.html

你可能感兴趣的文章
查看Linux系统中某目录的大小
查看>>
Git远程仓库地址变更
查看>>
PAT_B_1027 打印沙漏
查看>>
POJ-1185 炮兵阵地 动态规划+状态压缩
查看>>
NYOJ 366 D的小L
查看>>
PYTHON 写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者...
查看>>
Docker 初识
查看>>
【12.16】VC++调用Word OLE进行自动化生成报表
查看>>
用Maven创建第一个web项目
查看>>
php中的抽象类(abstract class)和接口(interface)
查看>>
linux安装ActiveMQ
查看>>
面向对象与软件工程---团队作业1
查看>>
认识一下Kotlin语言,Android平台的Swift
查看>>
Selenium2(WebDriver)总结(二)---Firefox的firebug插件参数设置(补充)
查看>>
spring中实现自己的初始化逻辑
查看>>
Accommodation development for Kaikoura
查看>>
Oracle11.2新特性之listagg函数 (行列转换)
查看>>
Flutter学习之动态ListView
查看>>
myeclipse中安装svn插件
查看>>
微信小程序----调用用户信息
查看>>