在記憶體中定義乙個用於加密的key和明文本串,用這個key的每個字元依次和明文本串的對應字元進行異或操作得到密文字串,並將密文字串儲存在另乙個變數中。例如:key為「abxmv#7」
;在記憶體中定義乙個用於加密的key和明文本串,
;用這個key的每個字元依次和明文本串的對應字
;符進行異或操作得到密文字串,並將密文字串
;儲存在另乙個變數中。例如:key為「abxmv#7」
datas segment
;此處輸入資料段**
buf1 db 'i love you'
,'$'
count1 equ $-buf1
buf2 db 'abxmv#7'
,'$'
count2 equ $-buf2
buf3 db 100
dup(?)
datas ends
stacks segment
;此處輸入堆疊段**
stacks ends
codes segment
assume cs:codes,ds:datas,ss:stacks
start:
mov ax,datas
mov ds,ax
;此處輸入**段**
mov si,
0 mov di,
0loop_begin:
mov ah,buf1[si]
mov al,buf2[di]
xor ah,al
mov buf3[si]
,ah inc si
cmp si,count1
je print ;只能從這裡跳出
inc di
cmp di,count2
je initialize_di
jmp loop_begin
initialize_di:
mov di,
0 jmp loop_begin
print:
mov si,
0 xor cx,cx
mov cx,count1
subprint:
xor dx,dx
mov dl,buf3[si]
mov ah,
02h int
21h inc si
loop subprint
mov ah,
4ch int 21h
codes ends
end start
在記憶體中定義乙個用於加密的key和明文本串,key中的每個數字表示將明文本串中的對應字元進行旋轉移位的次數,負數表示左移位,正數表示右移位。加密key的長度為10個位元組:-2, 4, 1, 0, -3, 5, 2, -4, -4, 6。先用加密key處理字串的前10個位元組,再處理接下來的10個位元組,以此類推。將密文字串儲存在另乙個變數中。
;done;==
====
====
====
====
====
====
;在記憶體中定義乙個用於加密的key和明文本串,
;key中的每個數字表示將明文本串中的對應字元
;進行旋轉移位的次數,負數表示左移位,正數表示
;右移位。加密key的長度為10個位元組:-2,
4,1,
0,;-
3,5,
2,-4
,-4,
6。先用加密key處理字串
;的前10個位元組,再處理接下來的10個位元組,以此類推。
;將密文字串儲存在另乙個變數中。
;description
data segment use16
buf1 db 'i love you'
,'$'
count1 equ $-buf1
buf2 db -2,
4,1,
0,-3
,5,2
,-4,
-4,6
count2 equ 10
buf3 db 100
dup(?)
data ends
;description
code segment use16
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov es,ax
mov si,
0 mov di,
0loop1:
mov ah,buf1[si]
mov al,buf2[di]
cmp al,
0 jl loop2 ;ajge loop3;a>=b有符號
loop2:
neg al
mov cl,al
rol ah,cl
mov buf3[si]
,ah jmp loop4
loop3:
mov cl,al
ror ah,cl
mov buf3[si]
,ah jmp loop4
loop4:
inc si
cmp si,count1
je end0
inc di
cmp di,count2
je loop5
jmp loop1
loop5:
mov di,
0 jmp loop1
end0:
mov cx,count1
mov si,
0end1:
mov dx,
0 mov dl,buf3[si]
inc si
mov ah,
02h int
21h loop end1
mov ah,
4ch int
21hcode ends
end start
彙編 題目 26,27 字串處理
我的這種思路好像更簡單一點 現有一組字串為data,name,time,file,code,path,user,exit,quit,text,請編寫程式從鍵盤輸入4個字元的字串,若存在將其修改為disk,並將結果在顯示器上顯示。datas segment buf1 db data,name,time...
1077 字串加密
time limit 1 sec memory limit 128 mb submit 5589 solved 2760 submit status web board 輸入一串字元 長度不超過100 和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想 將每個字母c加乙...
1164 字串加密
題目描述 輸入一串字元 長度不超過100 和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想 將每個字母c加乙個序數k,即用它後面的第k個字母代替,變換公式 c c k。如果字母為z,則後乙個字母是a,也就是字母字元形成乙個圓。輸入 輸入第一行是若干字元,以回車結束。輸...