有人能告诉我这段代码中哪里有错误,它无法加密。

问题描述:

DATA SEGMENT

INFO0 DB 10,'选项(1)加密,(2)解密,(3)退出:$'

INFO1 DB 13,10, '请输入一个关键值(1-9):$'

INFO2 DB 13,10,'明文是:$'

INFO3 DB'再见!$'

VLE DB 100 DUP

MENU DB 3

KEY DB'1'

TEXT DB 40,?, 40 DUP,?,

CRLF DB 0AH,0DH,'$'

CRLF2 DB 0AH,0DH,0AH,0DH,'$'

数据结束



代码段

ASSUME CS:代码,DS:数据

START:

MOV AX,DATA

MOV DS,AX



主要:

;打印主菜单

LEA DX,INFO0

MOV AH,9

INT 21H



;得到选项

MOV AH,1

INT 21H

;根据用户的选择

CMP AL,'1'

JZ ENCRYPT;测试是否加密

JMP QUIT;退出其他选项



ENCRYPT:

;问钥匙

LEA DX,INFO1

MOV AH,9

INT 21H



;得到钥匙

MOV AH,1

INT 21H

MOV VLE,AL

;问明文

LEA DX,INFO2

MOV AH,9

INT 21H



;获得明文

LEA DX,TEXT

MOV AH,10

INT 21H



MOV CL,TEXT

ENCRYPT_NEXT:

ADD CL,VLE

MOV [DI],CL

INC DI

LOOP ENCRYPT



MOV DX,OFFSET INFO2

MOV AH,9; lead mes_0

INT 21H



MOV DX,抵消DI

mov AH,9

INT 21H



退出:

;说再见

LEA DX,INFO3

MOV AH,9

INT 21H



MOV AH,4CH

INT 21H

代码结束

END START

DATA SEGMENT
INFO0 DB 10,'Options (1)Encrypt, (2)Decrypt, (3) Exit: $'
INFO1 DB 13, 10,'Please input a key value (1-9): $'
INFO2 DB 13, 10,'The plaintext is: $'
INFO3 DB 'Goodbye!$'
VLE DB 100 DUP
MENU DB 3
KEY DB '1'
TEXT DB 40, ?, 40 DUP,?,
CRLF DB 0AH, 0DH, '$'
CRLF2 DB 0AH, 0DH, 0AH, 0DH, '$'
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX

MAIN:
; print the main menu
LEA DX,INFO0
MOV AH,9
INT 21H

; get the option
MOV AH,1
INT 21H
; at user's option
CMP AL,'1'
JZ ENCRYPT ; test if encrypt
JMP QUIT ; exit on other options

ENCRYPT:
; ask the key
LEA DX,INFO1
MOV AH,9
INT 21H

; get the key
MOV AH,1
INT 21H
MOV VLE, AL
; ask the plaintext
LEA DX,INFO2
MOV AH,9
INT 21H

; get the plaintext
LEA DX,TEXT
MOV AH,10
INT 21H

MOV CL,TEXT
ENCRYPT_NEXT:
ADD CL,VLE
MOV [DI], CL
INC DI
LOOP ENCRYPT

MOV DX, OFFSET INFO2
MOV AH, 9 ;lead mes_0
INT 21H

MOV DX,offset DI
mov AH,9
INT 21H

QUIT:
; say goodbye
LEA DX,INFO3
MOV AH,9
INT 21H

MOV AH,4CH
INT 21H
CODE ENDS
END START

'

INFO1 DB 13,10,'请输入一个键值(1-9):
'
INFO1 DB 13, 10,'Please input a key value (1-9):


'

INFO2 DB 13,10,'明文是:
'
INFO2 DB 13, 10,'The plaintext is:


'

INFO3 DB'再见!
'
INFO3 DB 'Goodbye!