code segment
assume cs:code
ORG 100H
start:
push cs
pop ds
LEA DX,mes
mov ah,9
int 21h
mov si,150h ;十进制ASCII存于150H起单元
mov di,15ah ;BCD后再存于15AH起内存
mov cx,20 ;只够输入20个字符
T0:
mov ah,1
int 21h
cmp al,'0'
jb T1
cmp al,'9'
ja T1
mov [si],al
sub al,30h ;转换为BCD码
mov [di],al ;存入CS:[15AH]
jmp T2
T1:mov al,0ffh ;不是0~9,存入FF
mov [si],al
mov [di],al
T2:inc si
inc di
T3:loop T0
mov ah,4ch
int 21h
mes db 'Input a Number: $'
code ends
end start