标签: assembly stack x86-16
是否可以将8位值压入堆栈?当我尝试将AL推入堆栈时,NASM会出错;后来,我发现这是因为堆栈保存了16位值。将8位值推送到堆栈的正确方法是什么?
(这是8086)
答案 0 :(得分:3)
您无法在堆栈上推送8位值。最明智的方法是在堆栈中按下相应的16位寄存器:
push ax
请注意,除了您要编写的一个字节之外,这会在ah中推送一个垃圾字节,但这应该没问题。
ah