如何解决NASM中寄存器的错误绝对寻址
我是汇编初学者。我在 25 行中收到“Mach-O 64 位格式不支持 32 位绝对地址”的错误消息。如何解决?我在堆栈溢出中阅读了一些关于它的帖子,但我还没有找到解决方案
section .data
codes: db '0123456789ABCDEF'
newline_character: db 10
section .text
global main
print_newline:
mov rax,0x2000004
mov rdi,1
mov rsi,newline_character
mov rdx,1
syscall
ret
print_number:
mov rax,rdi
mov rcx,64
iterate:
sub rcx,4
push rcx
push rax
shr rax,cl
and rax,0xff
lea rsi,[rax + codes]
mov rax,1
mov rdx,1
syscall
pop rax
pop rcx
test rcx,rcx
jnz iterate
ret
main:
mov rdi,0x133
call print_number
call print_newline
mov rax,0x2000001
xor rdi,rdi
syscall
谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。