为什么不能在x86-64中在堆栈上推送8字节的立即值?

时间:2017-05-02 11:09:06

标签: assembly stack x86-64 instructions instruction-set

我试图理解x86-64程序集,今天我遇到了以下内容:

我可以这样做:

mov $0x74786574656d6f73, %rax #compiles to movabs
push %rax

虽然我无法做到以下几点:

push $0x74786574656d6f73 #8-byte

我得到Error: operand type mismatch for push 我查了一下,我可以看到,这样做没有问题:

push $0x74786574 #4-byte, compiles to pushq 

这是否意味着我无法在堆栈上推送8字节的立即值?

0 个答案:

没有答案