.model small
.stack 100h
.data
msg1 db 10, 13, '请输入4位数字:$'
msg2 db 10, 13, '对应的四位密码是:$'
input db 5
output db 5
.code
main proc
mov ax, @data
mov ds, ax
; 输出提示信息
mov ah, 09h
lea dx, msg1
int 21h
; 读取用户输入的4位数字
mov ah, 01h
int 21h
mov bl, al
mov ah, 01h
int 21h
mov bh, al
mov ah, 01h
int 21h
mov cl, al
mov ah, 01h
int 21h
mov ch, al
; 加密数字
mov al, bl
sub al, '0'
mov bl, al
mov al, output[bl]
add al, '0'
mov output[0], al
mov al, bh
sub al, '0'
mov bh, al
mov al, output[bh]
add al, '0'
mov output[1], al
mov al, cl
sub al, '0'
mov cl, al
mov al, output[cl]
add al, '0'
mov output[2], al
mov al, ch
sub al, '0'
mov ch, al
mov al, output[ch]
add al, '0'
mov output[3], al
; 输出加密后的密码
mov ah, 09h
lea dx, msg2
int 21h
mov ah, 09h
lea dx, output
int 21h
mov ax, 4C00h
int 21h
main endp
end main