回 帖 发 新 帖 刷新版面

主题:程序改错

请帮忙检查一下:
有输入但是无法输出
谢谢!


DATA SEGMENT
     BUFF DB  40
          DB   ?
          DB  40 DUP (?)
     A DB 'PLEASE IN PUT A STRING ',0AH,0DH,'$'
     B DB 'THE MUN IS :',0AH,0DH,'$'
     C DB 'THE LETTER IS :',0AH,0DH,'$'
     D DB 'ERROR','$'
     E  DW 0
     F DW 0
     
DATA ENDS


CODE SEGMENT
ASSUME CS:CODE,DS:DATA 
START:
      MOV DX,OFFSET A
      MOV AH,09H
      INT 21H
      MOV DX,OFFSET BUFF
      MOV AH,0AH
      INT 21H
      MOV BX,OFFSET BUFF

NEXT:CMP BX,'0'
     JAE NEXT1
     JMP WRONG
NEXT1:CMP BX,'9'
     JA NEXT2
     JMP NUM
NEXT2:CMP BX,'A'
      JAE NEXT3
       JMP WRONG
NEXT3:CMP BX,'Z'
    JA NEXT4
    JMP LETTER
NEXT4:CMP BX,'a'
    JAE NEXT5
    JMP WRONG
NEXT5:CMP BX,'z'
    JA WRONG
   JMP LETTER

NUM:INC E
    INC BX
    CMP BX,'$'
    JE OUT1
    JMP NEXT1

LETTER:INC F
    INC BX
    CMP BX,'$'
    JE OUT2
   JMP NEXT1

OUT1:MOV DX,OFFSET B
     MOV AH,09H
     INT 21H
     MOV DX,E
     MOV AH,09H
    INT 21H
    JMP EXIT
OUT2:MOV DX,OFFSET C
    MOV AH,09H
    INT 21H
    MOV DX,F
    MOV AH,09H
    INT 21H
    JMP EXIT

WRONG:MOV DX,OFFSET D
     MOV AH,09H
     INT 21H
EXIT:MOV AH,4CH
     INT 21H
CODE ENDS
     END START










回复列表 (共1个回复)

沙发

START:
   后面加上

      mov ax,data
      mov ds,ax

我来回复

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