- 题目
- 不停循环加密key的同时,扫描key中的每个字符串
ASSUME CS:CODES,DS:DATAS
DATAS SEGMENT
BUF1 DB'ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJ'
COUNT1 EQU $-BUF1
BUF2 DB -2,4,1,0,-3,5,2,-4,-4,6
COUNT2 EQU 10
BUF3 DB 100 DUP (?)
DATAS ENDS
CODES SEGMENT
START:
MOV AX,DATAS
MOV DS,AX
MOV SI,0
MOV DI,0
S:
MOV AH,BUF1[SI]
MOV AL,BUF2[DI]
CMP AL,0
JL LEFT;LESS 小于左移
JNL RIGHT;正数右移
LEFT:
NEG AL;求补
MOV CL,AL
ROL AH,CL
MOV BUF3[SI],AH
JMP NEXT
RIGHT:
MOV CL,AL
ROR AH,CL
MOV BUF3[SI],AH
JMP NEXT
NEXT:
INC SI
CMP SI,COUNT1
JE EXIT;处理完成
INC DI
CMP DI,COUNT2
JE S0
JMP S
S0:
MOV DI,0
JMP S
EXIT:
MOV AH,4CH
INT 21H
CODES ENDS
END START