Z可以理解为ZF,JNZ就是ZF不为1时跳转,你这个程序这儿是CX不等于零时跳转,CX不为零,则零标志ZF就为0,只有CX为0时ZF才为1,不跳转
ZX每次运算后都会变化,你的程序中的JNZ代表上一次运算(DEC CX)的结果
运算结果为0时ZF=1,不为零是ZF=0;
这个有点复杂,不晓得我讲清楚没得,好好理解一下哈
JNZ =jump if not zero 运算结果不为零则转移
ZF(Zero Flag)--零标志 若运算结果为零则ZF=1,否则ZF=0
1:jump if not zero指的是运算结果为零(即ZF=1),而不是指ZF=0
2:如果某些比较类等汇编指令并不保存运算结果,则需要根据具体指令查看标志位,比如cmp指令
比如
bool r=true;
if(r==true) //比较的结果为true;但执行此代码后,ZF标志为1(即运算结果为零)