Help!

two lines from my code:


dec ecx
jnz @b


And this is what the compiler makes of it:


dec ecx
jne ....


What does that mean?!? Do jne and jnz have the same opcode?
Dominik
Posted on 2004-10-06 04:46:39 by Dom
They are the same, "jump not equal" and "jump not zero".
The use really depends on context, compare a to b, are the equal? This makes more sense than using are they zero! Conversely, using the "zero" variant when using logical ops, or subtracting etc. is more appropriate.

In short they are the same :lol:

Mirno
Posted on 2004-10-06 05:05:36 by Mirno
They are encoded exactly the same. jne/jnz, jc/jb/jnae and so on
Posted on 2004-10-06 07:22:30 by roticv
JNZ and JNE are two mnemonics for the same opcode, just to make life easier for the programmer :) so when you read the code you get a better grasp of what the author intended. Same goes for the other mnemonics roticv pointed out.
Posted on 2004-10-06 13:39:23 by QvasiModo
jne is usually just used w/ cmp, and cmp is just sub that affects the flags only, so if a=b, a-b=0, ZF is set
Posted on 2004-10-06 18:32:28 by Drocon
http://www.unixwiz.net/techtips/x86-jumps.html
Posted on 2004-10-07 07:58:10 by rea
hi dominik

jne and jnz have same opcode.for short jump it is short jump it is 74
and for near jump it is 0f 84.
Both have zero flag clear.
nickdigital
Posted on 2004-10-07 14:39:08 by nickdigital