【发布时间】:2013-07-08 11:14:47
【问题描述】:
我第一次在汇编中使用 ds、si 和字符串相关指令。我正在尝试逐个字符地读取命令行参数,这就是我的代码现在的样子:
GetCommandLine:
push ebp
mov ebp, esp
push edi
push esi
call GetCommandLineW
mov edi, eax
mov esi, ebp
Parse:
lodsw
cmp ax, 0dh ; until return is found
jne Parse
pop esi
pop edi
pop ebp
ret
所以,GetCommandLineW 函数返回一个正确的指向字符串的指针。问题是Parse 部分永远循环,我看不到 AX 寄存器正在加载字符串中正确的下一个字节。我认为 EDI:ESI 没有正确加载或什么的
【问题讨论】:
标签: parsing assembly command-line-arguments nasm