汇编语言与接口技术-环境搭建(MAC)

基本配置:
设备:Macbookpro(13-inch,2018)
系统:macOS Monterey

环境安装

vim

利用vim编辑.asm文件

SECTION .data

msg: db "hello world!", 0x0a
len: equ $-msg

SECTION .text
global _main

kernel:
     syscall
     ret

_main:
     mov rax,0x2000004
     mov rdi,1
     mov rsi,msg
     mov rdx,len
     call kernel

     mov rax,0x2000001
     mov rdi,0
     call kernel

nasm

利用nasm运行.asm文件
如果未安装nasm可以参考一下这篇文章
利用nasm将helloworld.asm文件转化为helloworld.o文件

nasm -f macho64 -o helloworld.o helloworld.asm

注意:nasm只是用做汇编与反汇编 本身并没有链接的功能 所以需要在将文件链接一下才能够运行

ld -o helloworld -e _main helloworld.o 

如果报ld: dynamic main executables must link with libSystem.dylib for architecture x86_64错误
可以在命令最后加-lSystem

ld -o helloworld -e _main helloworld.o -lSystem

但是加完之后可能会报ld: library not found for -lSystem如果报这个错误可以将-lSystem换成-static即可

ld -o helloworld -e _main helloworld.o -static

最后直接执行 出现hello world!即为成功

./helloworld
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值