Linux64环境下32位汇编注意事项

Linux64环境下32位汇编注意事项

Linux64位环境下的32位汇编 #

汇编语言中添加指令:

.code32

用as汇编时,指定32位:

as --32 -o power.o power.s

连接时指定emulate参数

ld -m elf_i386 -o power power.o

在64位环境下执行32位程序,容易出现段错误,用gdb调试时,x命令无法打印出指定内存位置的值。如果要添加gdb调试信息,在as时需要指定–gstabs选项。

as --gstabs --32 -o power.o power.s

Viewpoint #

From #