;从键盘上接收4位16进制数,并在屏幕上显示与之等值的二进制数
DATA SEGMENT
NUM DW 0
CRLF DB 0AH,0DH,'$'
DATA ENDS
STACK SEGMENT PARA STACK
DW 128 DUP(?)
TOP LABEL WORD
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK,DS:DATA
MAIN PROC FAR
START:
MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
LEA SP,TOP
MOV CX,4 ;循环接收4位16进制数
L0: MOV AH,1
INT 21H
CMP AL,40H ;若为A,B,C,D,E,F,则要先减去7再减去30H才能转化为实际数
DATA SEGMENT
NUM DW 0
CRLF DB 0AH,0DH,'$'
DATA ENDS
STACK SEGMENT PARA STACK
DW 128 DUP(?)
TOP LABEL WORD
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK,DS:DATA
MAIN PROC FAR
START:
MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
LEA SP,TOP
MOV CX,4 ;循环接收4位16进制数
L0: MOV AH,1
INT 21H
CMP AL,40H ;若为A,B,C,D,E,F,则要先减去7再减去30H才能转化为实际数