1

私のコード:

section .data
   res db 0

section .text
   global _main
   extern _printf
   extern _scanf

_main
   ..blablabla.....
   mov rax,[res]
   ..blablbabla....
ret

そしてエラー: Mach-O 64 ビット形式は で 32 ビット絶対アドレスをサポートしていませんmov rax,[res]

したがって、macho64 では、リンクできませres[res]

私は何をすべきか?

4

1 に答える 1

1

macho64形式はわかりませんが、次の方法に代わる方法がありますmov rax,[res]

mov rax,res
mov rax,[rax]

または、RIP相対アドレス指定を使用します。

mov rax,[rel res]
于 2013-03-10T13:05:41.867 に答える