:96:错误:`(%rax,%edx,4)'不是有效的基数/索引表达式
line97:错误:`-4(%rax,%edx,4)'不是有效的基本/索引表达式
line101:错误:`(%rax,%edx,4)'不是有效的基数/索引表达式
line102:错误:`-4(%rax,%edx,4)'不是有效的基数/索引表达式
我收到这些错误消息,我不知道如何解决它.
这是我的代码:
__asm__ (
"loop: \n\t"
"movl $1,%3\n\t"
"movl $0, %6\n"
"start: \n\t"
"movl (%1,%3,4),%4\n\t"
"movl -4(%1, %3, 4), %5\n\t"
"cmpl %4, %5\n\t"
"jle next\n\t"
"xchgl %4, %5\n\t"
"movl %4, (%1, %3, 4)\n\t"
"movl %5, -4(%1, %3, 4)\n\t"
"movl $1, %6\n\t"
"next: \n\t"
"incl %3 \n\t"
"cmpl %3, %2\n\t"
"jge start\n\t"
"cmpl $0, %6\n\t"
"je end\n\t"
"jmp loop\n\t"
"end: \n\t"
Run Code Online (Sandbox Code Playgroud)
请帮助解释如何修复这些错误消息.我试图在ASM中进行冒泡排序.