我想在运行汇编程序时读取命令行参数。我是否必须使用sys_read
或其他内容?
我知道如何使用scanf之类的东西访问数据。例如:
mov eax, 3
mov ebx, 1
mov ecx, msg
mov edx len
int 0x80
我正在寻找的是命令行参数。当我执行./a.out 45 23
时,我希望能够访问'45'。
所以,如果有人有一个unixstd.h定义的页面......我将不胜感激。
答案 0 :(得分:3)
通过堆栈可以访问ELF32 Linux下的命令行参数:
mov eax, [esp+8]
mov ebx, [eax]
mov ecx, offset msg
mov [ecx], ebx
感谢@Jester在评论中的答案!