回 帖 发 新 帖 刷新版面

主题:[求助]程序进入了死循环,找不到原因

程序输出时,不断循环输出,应该是进入了死循环,不过我无法找出原因
DATA SEGMENT
DATA ENDS
STACK SEGMENT
STACK ENDS
CODE SEGMENT
    ASSUME CS:CODE,DS:DATA,SS:STACK
START:
      MOV AX,DATA
      MOV DS,AX
      MOV BX,0 ;ASCII码
      MOV CX,8 ;行,外层循环
LOOPA:XOR AX,AX
      MOV SI,AX
      PUSH CX
      MOV CX,16 ;列,内层循环
LOOPB:PUSH CX
      CMP BX,32
      JA OUTPUT
      MOV DL,' '    
      MOV AH,2
      INT 21H
      INC BX
      INC SI
      POP CX
      JMP LOOPB
OUTPUT:
      MOV DX,BX
      MOV AH,2
      INT 21H
      INC BX
      INC SI
      POP CX
      JMP LOOPB

      MOV DL,0AH
      MOV AH,2
      INT 21H
      MOV DL,0DH
      MOV AH,2
      INT 21H
     
      POP CX
      LOOP LOOPA

      MOV AH,4CH
      INT 21H
CODE ENDS
    END START

回复列表 (共1个回复)

沙发

内循环的CX没有减。

我来回复

您尚未登录,请登录后再回复。点此登录或注册