汇编语言上机考试三星题——加密的key和明文字符串(二)

  • 题目
    在这里插入图片描述
  • 不停循环加密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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值