Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 16.06.2009
Сообщений: 40

Шифрование сдвигом

12.02.2012, 10:43. Показов 2372. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно зашифровать файл арифметическим сдвигом на 3 позиции
данные сохраняются в файл символьном виде длина 128,
а после расшифровать, должен получиться исходник

Программу пишу на паскале с asm'овскими вставками
Вложения
Тип файла: txt FILE1.TXT (52 байт, 26 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.02.2012, 10:43
Ответы с готовыми решениями:

Программа со сдвигом Влево и со сдвигом в право
Задание: Написать программу на Assembler которая бы сдвигала 1 светодиод в лево и в право как показано на прикреплённом задании. Далее...

Вставка 0 или 1 в любой бит байта со сдвигом влево
Ребят, помогите пожалуйста студенту? "Реализуйте с помощью логических операций вставку заданного значения (0 или 1) в любой бит байта со...

Вывод символов в алфавитном порядке от A до Z "лесенкой", со сдвигом на один шаг
Напишите программу, пожалуйста: Выводит на экран символы от А до Z "лесенкой", со сдвигом вправо. Символы - жёлтого цвета, фон - синего....

4
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16372 / 7684 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
13.02.2012, 05:50
Talor, арифметическим сдвигом это каким? Есть "арифметический сдвиг вправо на три позиции", значит код символа нужно делить на 8, но при этом учитывая что различия в символах как раз в последних разрядах то сообщение после такого шифрования восстановить не удастся. Есть "арифметический сдвиг влево на три позиции", значит код символа перед шифровкой нужно умножать на 8, а при дешифрировании код зашифрованного символа нужно делить на 8
0
0 / 0 / 0
Регистрация: 16.06.2009
Сообщений: 40
13.02.2012, 20:39  [ТС]
В общем нужно прибавить к каждому символу строки (файла) 3 в asm, так чтобы это можно было вставить в паскаль

Добавлено через 1 час 35 минут
Выдает какую-то чушь (((
(в консоли выводит первый символ для проверки себя)
в файл не пишет, ну что с ним делать???

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
uses crt;
var f,f1:text;
    s:string;
    i,ksm,ksl,kst:integer;
begin
clrscr;
assign(f,'file1.txt');
readln(s);
s:='file1.txt';
assign(f,s);
{$I-} reset(f);  {$I+}
if IOResult <> 0 then
ksm:=0;ksl:=0;kst:=0;
while not eof(f) do
 begin
  readln(f,s);
  kst:=kst+1;
  ksm:=ksm+length(s);
  for i:=1 to length(s) do
  if (s[i]<>' ')and((s[i-1]=' ')or(i=1)) then
  {если не пробел, а перед ним пробел или это первый символ}
  ksl:=ksl+1;
 end;
writeln('kol-vo simvolov=',ksm);
writeln('kol-vo slov=',ksl);
writeln('kol-vo strok=',kst);
 
while not eoln (f) do
asm
mov ax,ksm
add ax,3
mov ksm,ax
end;
 assign(f1,'shif.txt');
        {$I-} reset(f1);  {$I+}
        if IOResult <> 0
           then  rewrite(f1)
                 else append(f1);
write(f1,' ',ksm);
writeln(f1);
 
close(f1);
close(f);
 
 
readln
end.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16372 / 7684 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
14.02.2012, 13:12
Talor, если прибавлять/отнимать от каждого символа, то это уже не "шифрование арифметическим сдвигом", а "шифр Цезаря" используй поиск на сайте
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
14.02.2012, 13:35
Цитата Сообщение от Mikl___ Посмотреть сообщение
а "шифр Цезаря"
, он же алфавитный сдвиг, ТС сдвиги перепутал.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.02.2012, 13:35
Помогаю со студенческими работами здесь

Деление сдвигом
нужно разделить 64 на 8 делаю так Mov Ax,64 MOV CX,3 SHR AX,CX Но, преподаватель говорит, что мол не так должно быть, и ставит...

Умножение/деление со сдвигом
Помогите исправить код. Пожалуйста. Операции умножения и деления выполнять с помощью операций сдвига. F= y-(96*x)/16 (8-битные со...

Деление и умножение сдвигом
Объясните пожалуйста как разделить 10 на 3 сдвигами

Адресация памяти по базе со сдвигом
Необходимо составить свою фамилию, имя, отчество из массива данных, представляющего собой алфавит, используя косвенные методы адресации....

Программа с циклическим сдвигом и с использованием макроопределения
Здравствуйте, может у кого есть данная программа на ассемблере? Поделитесь, пожалуйста... Пользователь вводит два числа А и В в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru