汇编语言编程时运行结果都是乱码而且死循环是怎么回事

STACK SEGMENT STACK
DB 100 DUP(?)
STACK ENDS
DATA SEGMENT
MESG DB 'Welcome To our SCHOOL$'
COUNT DB $-MESG
DATA ENDS
CODE SEGMENT
ASSUME SS:STACK,CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV BL,0
MOV SI,0
MOV DX,OFFSET MESG
MOV AH,9
INT 21H
MAIN: MOV AL,MESG[SI]
CMP AL,41H
JAE LOOP1
MOV DL,AL
MOV AH,2
INT 21H
INC SI
DEC COUNT
CMP COUNT,0
JAE MAIN
JMP CLH
LOOP1: CMP AL,61H
JBE LOOP2
MOV DL,AL
MOV AH,2
INT 21H
INC SI
DEC COUNT
CMP COUNT,0
JAE MAIN
JMP CLH
LOOP2: ADD AL,32
MOV DL,AL
MOV AH,2
INT 21H
INC BL
INC SI
DEC COUNT
CMP COUNT,0
JAE MAIN
JMP CLH
CLH: MOV DL,BL
MOV AH,2
INT 21H
CODE ENDS
END START

第1个回答  2011-11-18
肯定程序中有问题,跳转到了不该跳的地方了。编汇编程序,基本功要好。
多练习。追问

能告诉我什么地方错了吗,我检查不出来

追答

我没有耐心看别人的程序呀。已经多年不编汇编了,
现在一直用C++BUILDER了。我最长编过17张纸的
汇编,都没出错过。
我只是替你点一点了,

追问

你帮我看看吧 我是初学者

追答

不管是谁,看程序是最痛苦的,宁肯编程序。
说真的很难看明白的,

本回答被网友采纳
第2个回答  2011-12-04
代码有一部分错了
相似回答