永发信息网

有关汇编中 JZ 和 JNZ中的问题

答案:2  悬赏:50  手机版
解决时间 2021-11-25 10:16
  • 提问者网友:相思似海深
  • 2021-11-24 20:56
有关汇编中 JZ 和 JNZ中的问题
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-11-24 22:11
JNZ =jump if not zero 运算结果不为零则转移
ZF(Zero Flag)--零标志 若运算结果为零则ZF=1,否则ZF=0
1:jump if not zero指的是运算结果为零,而不是ZF=0
2:如果某些比较类等汇编指令并不保存运算结果,则需要根据具体指令查看标志位,比如cmp指令
比如
bool r=true;
if(r==true) //C的代码结果非0;但汇编运算后是ZF=1
全部回答
  • 1楼网友:青尢
  • 2021-11-24 22:49
Z可以理解为ZF,JNZ就是ZF不为1时跳转,你这个程序这儿是CX不等于零时跳转,CX不为零,则零标志ZF就为0,只有CX为0时ZF才为1,不跳转
ZX每次运算后都会变化,你的程序中的JNZ代表上一次运算(DEC CX)的结果

运算结果为0时ZF=1,不为零是ZF=0;

这个有点复杂,不晓得我讲清楚没得,好好理解一下哈
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯