Assembler. Шифрование.

  • Автор темы Автор темы stilldreaming
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
S

stilldreaming

Ребят, помогите пожалуйста с заданием. Сам уже замучался, знакомых кто может помочь нету. Расчитываю на вас.
Задание такое
текст для шифрования вводится в командной строке. Удалить пробелы и зашифровать текст. Текст разбивается на тройки букв. Коды букв каждой тройки складываются с кодами букв слова DOG по модулю 26(при этом считается, что код буквы A - 1 и так далее). Хвост текста(остаток от разбиения на тройки не изменять.

вот текст того, что я написал:
[codebox].MODEL SMALL
.STACK 100h
.DATA
text_b DB 83 DUP(?)
text_c DB 80 DUP(?)
.CODE
encode PROC
mov al,es:[di]
mov ah,0
add al,'D'
sub al,80h
mov bl,26
cbw
idiv bl
add ah,40h
mov [si],ah
inc si
inc di
mov al,es:[di]
mov ah,0
add al,'O'
sub al,80h
mov bl,26
cbw
idiv bl
add ah,40h
mov [si],ah
inc si
inc di
mov al,es:[di]
mov ah,0
add al,'G'
sub al,80h
mov bl,26
cbw
idiv bl
add ah,40h
mov [si],ah
inc si
inc di
clc
ret

encode ENDP

start:
mov ax,@data
mov ds,ax
mov cx,0
mov cl,es:[80h]
mov si,82h
mov di, offset text_b
mov dx,0
dec cl
n: mov al,es:[si]
cmp al,20h
je cont
cmp al,0Dh
je __end
mov [di],al
inc di
inc bl
cont: inc si
loop n

__end: mov al,bl
mov bl,3h
cbw
idiv bl
mov cx,0
mov cl,al

mov si, offset text_c
mov di, offset text_b

n1: call encode
loop n1


end_prog: mov word ptr [si],0A0Dh
inc si
inc si
mov byte ptr [si],'$'


mov dx, offset text_c
mov ah,09h
int 21h
mov ah,04Ch
mov al,0h
int 21h
END start[/codebox]



для любого набора символов, программа все кодирует одинаково( в зависимости от количества символов).
Подскажите где ошибки плз.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab