我正在使用NASM following this tutorial进行更深入的问候世界(第4节)。本教程基本上教您如何处理命令行输入。
这是相关代码的片段:
section .text
global _start
_start:
pop ebx ; arg count
pop ebx ; arg[0] the program name
pop ebx ; arg[1-n] the remainder of the args
; must each be indiviually popped
使用error: instruction not supported in 64-bit mode
编译期间代码出错,参考上面的3个弹出指令。 Upon viewing the docs似乎此代码仅适用于32位系统。
是否有64位pop
指令?有没有人使用我可以查看的pop
64位教程?
答案 0 :(得分:20)
是的,64位pop
指令是...... POP。 :-)你需要使用它来对抗64位寄存器(如rbx
)。
答案 1 :(得分:-1)
基本上,您可以通过将eax替换为rax来将其转换为64位(所有其他寄存器也是如此)