汇编环境的搭建:
推荐的教材:王爽的《汇编语言》和《X86汇编,从实模式到保护模式》。
安装 nasm
来学习使用汇编语言
macOS:(需安装homebrew
brew install nasm
Linux下
apt-get install nasm
Windows平台也可使用 nasm
,用法大同小异。
编写一段打印"hello world"的代码,若在macos或Linux下可
vim test.s
msg: db "Hello World", 0x0a
global _main
_main:
mov rax, 0x2000004
mov rdi, 1
mov rsi, msg
mov rdx, 12
syscall
ret
mov rax, 0x2000001
mov rdi, 0
syscall
ret
执行命令:
nasm -f macho64 test.s
gcc -o test test.o
./test
即可打印“hello world”
对于shell的使用此处不做赘述
此外,《汇编语言》中使用的Debug程序可用于追踪各寄存器中的数据,有需要也可以搭配使用,对于Windows下的使用非常简单,在cmd中输入 debug
即可使用Debug程序。Debug程序本身使用一些封装好的命令,并不是直接使用汇编语言写程序。
若macOS下需要使用到 debug
可下载DOSBox,Debug工具,这里 已经打包好了密码:kyo4
你可以新建一个文件夹,将DOSBox和Debug.exe放在同一个目录下
如下
打开DOSBox,
输入
mount c ~/DOS
使该文件夹挂在DOS下的C盘
输入 C:
转到C盘下成功
后输入 debug
即可使用debug程序,如图
关于Debug,此处也不展开,可自行百度