在下面这些反汇编二进制代码节选中,有些信息被X代替了。回答下列关于这些指令的问题。
A.下面je指令的目标是什么?(在此,你不需要知道任何有关callq指令的信息。)
4003fa: 74 02 je XXXXXX
4003fc: ff d0 callq *%rax
B. 下面je指令的目标是什么?
40042f:74 f4 je XXXXXX
400431:5d pop %rbq
C. ja和pop指令的地址是多少?
XXXXXX:77 02 ja 400547
XXXXXX:5d pop %rbp
D. 在下面的代码中,跳转目标的编码是PC相对的,且是一个4字节补码数。字节按照从最低位到最高位的顺序列出,反映出x86-64的小端法字节顺序。跳转目标的地址是什么?
4005e8: e973ff ff ff jmpq XXXXXXX
4005ed: 90 nop
跳转指令提供了一种实现条件执行(if)和几种不同循环结构的方式。