[NSWI004] Grading

Petr Tuma petr.tuma at d3s.mff.cuni.cz
Fri Oct 16 22:05:29 CEST 2020


Hello,

> Oh i see, however this raises another point... The question says "For
> those who are not familiar with Intel x86 assembly and prefer not to
> guess, here is an explanation of what the individual instructions do.
> " and for the 7th it says |jne 0x804916b ;if last compare was not
> equal continue executing from 0x804916b| Therefore it is in my
> opinion unreasonable to mark this as a wrong answer

I'm sorry but I cannot agree here.

A statement "if last compare was not equal continue executing from 0x804916b" is an accurate description of "jne 0x804916b", and in fact can hardly be written any other way. (Imagine the text said "... continue executing 29 bytes before the current program counter value", that would not be a correct description of "jne 0x804916b". Jump targets for conditional jumps are simply written as absolute addresses in the assembly language even though the eventual opcode uses relative addressing. I probably could have written "... continue executing from 0x803916b but express this relatively to current program counter", but I really hate bludgeoning people with hints :-).)

Petr


More information about the NSWI004 mailing list