LINUX下汇编的编译:
nasm -f elf hello.asm 生成hello.o
ld -o hello hello.o 生成可执行的elf格式文件hello,通过./hello执行
如果输入nasm hello.asm,得到二进制可执行文件hello
LINUX下汇编的调试:
调试主要是用的ALD(Assembly Language Debugger)
ald hello 载入要调试的程序
disassemble -S .test 显示被调试程序的信息。第一行是命令地址,第二行是机器码,第三行是命令。
break 命令地址 设置断点,程序执行到该地址停止,并显示此时寄存器和标志位的值
设置完断点,用run命令执行程序,到断点处停止。继续执行到下一个断点,用continue,单步执行,用next。
退出ald,用quit,得到帮助信息,用help.
WINDOWS下汇编编译。
得到二进制可执行文件。
nasm -f bin hello.asm hello.com