2013-03-10 84 views
1

我的代碼工作:MOV RAX,[RES]不macho64

section .data 
    res db 0 

section .text 
    global _main 
    extern _printf 
    extern _scanf 

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

和錯誤:Mach-O的64位格式不上mov rax,[res]支持32位絕對地址。

所以,在macho64,我不能鏈接res,在[res]

我該怎麼辦?

回答

1

我不知道macho64格式,但也有替代mov rax,[res]

mov rax,res 
mov rax,[rax] 

或者使用RIP相對尋址:

mov rax,[rel res] 
+0

THX,NRZ。我明天再說一遍! :) – Aleeewka 2013-03-11 13:48:29