I'm working on a project for school and I cannot find anything on the what JL
means in at&t syntax. For reference, the question is to find the value of %eax
when NOP
runs. Here is the code it's used in:
MOV $492,%ebx
MOV $2494,%eax
MOV $28063,%ecx
CMP %eax,%ebx
JL L1
JMP L2
L1:
IMUL %eax,%ebx
ADD %eax,%ebx
MOV %ebx,%eax
SUB %ecx,%eax
JMP L3
L2:
IMUL %eax,%ebx
SUB %eax,%ebx
MOV %ebx,%eax
ADD %ecx,%eax
L3:
NOP
Also I would appreciate what JMP
does as well as how the addition/subtraction/multiplication works (ADD
/SUB
/IMUL
). I don't want to cheat, I just want to understand what's happening. For example, do you change the first number or the second when using math? Thank you all so much for helping.
That is assemply language ,
JL
isJump if Less
This also works in x86 assembly language.
We compare EAX to EBX, then we'll jump to L1 depending on that comparison.
More specific - If the contents of EAX are less than the contents of EBX, jump to the label L1
See - Assembly - JG/JNLE/JL/JNGE after CMP