《深入理解计算机系统》速读笔记

故事扮演 提交于 2019-12-02 09:13:28

问题一 条件码

条件码寄存器中保存着单个位的条件码,由CPU维护,如:
CF:进位标志
ZF:零标志
SF:符号标志
OF:溢出标志

有几类指令能够修改条件码:
算术指令:既改变操作数,也有肯能改变条件码。
CMP指令:右操作数减左操作数,只可能改变条件码。
TEST指令:两操作数相与,只可能改变条件码。

条件码寄存器不能直接读取,有三种方法:
set指令:根据条件码,设置一个字节。
jump指令:根据条件码进行跳转,即控制的条件转移。
cmov条件传送指令:根据条件码决定是否进行mov操作(其性能要优于控制的条件转移P141)。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!