assemblyx86att

What does JL mean in at&t syntax?


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.


Solution

  • That is assemply language , JL is Jump if Less

    This also works in x86 assembly language.

     CMP %eax,%ebx 
     JL L1
    

    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