LINUX下写一个可以执行的汇编程序
# 准备
编译环境
- nasm编译器
- vi文本编辑器,其他的编辑器也可以
- ld 连接器
开始写作
装NASM
看看有没有安装 nasm
<code> nasm -v
安装好了的后查询版本应该是这样的
brew 上有,自己装一个,或者可以更新
/<code>
<code> brew install nasm
brew upgrade nasm/<code>
<code> NASM version 2.11.08 compiled on MM DD YYYY/<code>
<code> /<code>
ld -macosx_version_min 10.14 -o main -e _main main.o -lSystem
链接
nasm -f macho64 -o main.o main.asm
编译
写程序
<code>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/<code>
閱讀更多 青峰科技 的文章