本文介绍了条件转移登记的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
请帮助我与我的问题。
我想获得这些命令:
jl some_label(%rip)
# or
jl *%rax
在我写英特尔x64体系结构ASM我PROGRAMM。
in my asm programm that I am writing for intel x64 architecture.
GCC说:数类型missmatch为JL当我尝试编译此code。
GCC says that "operand type missmatch for jl" when I try to compile this code.
推荐答案
条件跳转是相对的在x86。您可以使用倒有条件跳转后无条件跳转:
Conditional jumps are relative on x86. You can use an "inverted" conditional jump followed by an unconditional jump:
jge skip_jump
jmp %rax
skip_jump:
我不知道有关寄存器间接跳转的特定语法使用AT&amp时; T语法(无论是%章
或 *%章
或一些其它变体)。
这篇关于条件转移登记的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!