汇编语言练习(一)

汇编语言练习(一)

编写程序段从键盘接收一个字符,如输入为Y或y,在屏幕上输出‘yes’;如输入为N或n,在屏幕上输出‘NO’; 然后退出。如输入其它字符,屏幕上输出‘please input again’,然后等待重新输入。

汇编代码

DATAS SEGMENT   ;此处输入数据段代码
   STRING DB 'INPUT A LETTER: $'  
    STRING1 DB 'YES $'
    STRING2 DB 'NO $'
    STRING3 DB 'PLEASE INPUT AGAIN: $'
    BUFF DB 100
    	 DB ?
    	 DB 100 DUP('$')
DATAS ENDS
CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS;,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
  ;此处输入代码段代码
    MOV DX ,OFFSET STRING
    MOV AH, 09H
    INT 21H
    
L:  MOV DX,OFFSET BUFF
    MOV AH,0AH
    INT 21H
    mov ah,2
    mov dl,10
	int 21h
	mov ah,2
	mov dl,13
	int 21h
	MOV AH,06H
	XOR SI,SI
	MOV CL,BUFF[1]
    MOV DL,BUFF[SI+2]
    CMP DL,'Y'
    JZ O1
    CMP DL,'y'
    JZ O1
    CMP DL,'N'
    JZ O2
    CMP DL,'n'
    JZ O2
	MOV DX,OFFSET STRING3
  	MOV AH,09H
  	INT 21H
	JMP L

O1: MOV DX ,OFFSET STRING1
    MOV AH, 09H
    INT 21H
    JMP EXIT
    
O2: MOV DX,OFFSET STRING2
    MOV AH,09H
    INT 21H
JMP EXIT
   
EXIT:
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

你可能感兴趣的:(嵌入式)