Sample Header Ad - 728x90

What the branch machine op-code means (X86 architecture)?

2 votes
1 answer
110 views
I have a simple c code which is compiled and then the text code extracted using *objdump* utility. here is the dump file (A piece of dumped file): 0804841b : 804841b: 8d 4c 24 04 lea 0x4(%esp),%ecx 804841f: 83 e4 f0 and $0xfffffff0,%esp 8048422: ff 71 fc pushl -0x4(%ecx) 8048425: 55 push %ebp 8048426: 89 e5 mov %esp,%ebp 8048428: 51 push %ecx 8048429: 83 ec 14 sub $0x14,%esp 804842c: c7 45 f0 00 00 00 00 movl $0x0,-0x10(%ebp) 8048433: c7 45 f4 0a 00 00 00 movl $0xa,-0xc(%ebp) 804843a: 8b 45 f4 mov -0xc(%ebp),%eax 804843d: 01 45 f0 add %eax,-0x10(%ebp) 8048440: 8b 45 f0 mov -0x10(%ebp),%eax 8048443: 3b 45 f4 cmp -0xc(%ebp),%eax 8048446: 7e 0f jle 8048457 8048448: 83 ec 0c sub $0xc,%esp 804844b: 6a 78 push $0x78 804844d: e8 be fe ff ff call 8048310 8048452: 83 c4 10 add $0x10,%esp 8048455: eb 15 jmp 804846c 8048457: 8b 45 f4 mov -0xc(%ebp),%eax 804845a: 3b 45 f0 cmp -0x10(%ebp),%eax 804845d: 7e 0d jle 804846c the instruction at address 8048446 is jle 8048457 which has the machine code 7e 0f the `` statement is refer to the location of target instruction shifted from the main address, i.e. the 3c is equal 60 which mean that after 60 bytes from the main, the instruction 8048457: 8b 45 f4 mov -0xc(%ebp),%eax is located. The machine code of the instruction at address 8048446 is 7e 0f 7e is the machine code of jle. **The 0f what is?** In another branch instruction like this: 8048455: eb 15 jmp 804846c **what is 15 means?**
Asked by husin alhaj ahmade (307 rep)
May 13, 2019, 09:24 PM
Last activity: May 15, 2019, 06:16 PM