我刚刚开始使用汇编语言,我的任务是遍历和数组并添加每个数字而不是显示它,但是我似乎无法让它工作。如果有人可以解释,我试图理解我做错了什么。
this is my code
.data
num WORD 3, 5, 2, 7, 8, 6
.code
main PROC
mov eax, 0
mov ebx, 0
mov ecx, 0
mov eax, OFFSET num + TYPE num
mov ecx, [LENGTHOF num]
Lp:
mov ebx, [ecx * TYPE num]
add eax, ebx
loop Lp
exit
main ENDP
END main
答案 0 :(得分:0)
看看有效的fasm窗口示例(在控制台中打印31张)并希望你能从中获得有用的东西
include 'win32wxp.inc'
.data
Num dd 3, 5, 2, 7, 8, 6
Buf db 16 dup (?)
Dum rd 1
.code
Start:
lea esi,[Num]
mov ecx,Buf - Num
sub edx,edx
Lp: lodsd
add edx,eax
loop Lp
invoke wsprintf, addr Buf, '%d', edx
invoke AllocConsole
invoke WriteConsole,<invoke GetStdHandle,STD_OUTPUT_HANDLE>,Buf,<invoke lstrlen,addr Buf>,Dum,0
invoke Sleep,-1
.end Start