汇编想输出数字却输出乱码

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:50:12
题目要求是把 EAX, EBX, ECX, EDX, ESI, EDI放入堆栈中,然后取出循环打在屏幕上,可是我的打出来是乱码
我的程序是:

INCLUDE Irvine32.inc
.data
mov eax,3
mov ebx,4
mov ecx,5
mov edx,6
mov esi,7
mov edi,8
ab dword 0
.code
main PROC
pushad
mov ecx,6
next:dec ecx
pop ab
mov edx,OFFSET ab
call WriteString
loop next

exit
main ENDP

END main

那本书以前看过一点!
按这个题目应该这么写,你写的程序错误太新手,就不指出错误了.
真不知道LS怎么会那么写,简直是乱回答, LS也是半斤八两.

include irvine32.inc
includelib irvine32.lib
includelib kernel32.lib

.code
main PROC
mov eax,'1'
mov ebx,'2'
mov ecx,'3'
mov edx,'4'
mov esi,'5'
mov edi,'6'

push eax
push ebx
push ecx
push edx
push esi
push edi
mov ecx,6

for1: mov eax,0
pop eax
call WriteChar
loop for1
exit
main ENDP

INCLUDE Irvine32.inc
.data
mov eax,33h
mov ebx,34h
mov ecx,35h
mov edx,36h
mov esi,37h
mov edi,38h
ab dword 0
.code
main PROC
pushad
mov ecx,6
next:dec ecx
pop ab
mov edx,OFFSET ab
call WriteString
loop next

exit
main ENDP

END ma