我试图在 NASM 中编写代码来获取给定字符串的长度。但是它给出了一些垃圾值作为长度。代码如下:
section .data
a db "nitin",10,0
msg db "length = %d",10,0
section .text
global main
extern printf
main:
nop
xor eax,eax
mov eax, a
xor edx,edx
length:
mov dl, byte[eax]
cmp dl,0
je print
inc eax
jmp length
print:
pusha
push eax
push msg
call printf
add esp,8
popa
done:
nop
结果显示:长度=132445678
你能帮我解决我的错误吗?
谢谢你