738

Инструкции обработки цепочек на языке ассемблер

Лабораторная работа

Информатика, кибернетика и программирование

Изучить команды обработки цепочек процессора i8086. Зашифровать строку по таблице. Таблица считается известной.

Русский

2013-01-06

89 KB

12 чел.

Министерство образования и науки Российской Федерации

Муромский институт (филиал)

Федерального государственного бюджетного образовательного учреждения высшего профессионального образования

«Владимирский государственный университет

имени Александра Григорьевича и Николая Григорьевича Столетовых»

(МИ(филиал)ВлГУ)

Факультет                  ФРЭКС                  

Кафедра                    ЭиВТ                   

ЛАБОРАТОРНАЯ

РАБОТА №4

по программированию на языке ассемблера

Тема: Инструкции обработки цепочек

                    

        Руководитель

                                                             Бейлекчи Д.В.                   

           (фамилия, инициалы)

                                                     

(подпись)   (дата)

       Студент          ПО - 110       

  (группа)

      Алексеев  К. В.               

           (фамилия, инициалы)

        ______________________                                   

       (подпись)   (дата)

2012

Цель  работы:  Изучить команды обработки цепочек процессора i8086. 

Задание: Зашифровать строку по таблице. Таблица считается известной.

Ход работы:

Код программы:

;описание сегмента данных

data segment

msg1 db 'Введите строку символов (a-z) и нажмите Enter:',10,13,'$'

msg2 db 'Результат:',10,13,'$'

stroka db 100 dup (?),'$'

;coding         'abcdefghijklmnopqrstuvwxyz'   соответствие кодирования

table1 db 'zyxwvutsrqponmlkjihgfedcba'

len dw ?

data ends

;описание сегмента стэка

stak segment stack

db 256 dup(?)

stak ends

;описание сегмента кода

code segment

;указание соответсвующих сегментных регистров сегментам

assume ds:data,es:data,cs:code,ss:stak

start:

;настройка регистров DS,ES на начало сегмента данных

mov ax,data

mov ds,ax

mov es,ax

mov ah,9 ;ф-я 9 вывод строки заканчивающейся $

lea dx,msg1 ;загрузка адреса переменной в dx

int 21h;вызов прерывания

lea dx,stroka  ;загрузка адреса переменной для хранения символа в dx

call input      ;вызов процедуры считывания с клавиатуры

mov len,ax ;занесение в переменную len количества введенных символов + 2

sub len,2 ;отнимаем 2 для получения количества символов без признаков перевода строки

lea si,stroka ;загрузка адреса строки в si

lea di,stroka;загрузка адреса строки в di

mov cx,len ;занесение количества введеных символов в счетчик сх

cld ;обработка строки слева на право

;цикл шифрования

cycle:

lodsb ;загрузка элемента строки в al

sub ax,61h ;отнимаем 61 - получаем смещение в таблице шифрования для данной буквы

mov bx,ax ;занесение смещения в таблице шифрования в bx

mov al,table1+bx ;занесение в al элемента с таблицы что соответствует смещению

stosb ;запись элемента из al в строку

loop cycle ;цикл пока сх не равен 0

mov ah,9 ;ф-я 9 вывод строки заканчивающейся $

lea dx,msg2 ;загрузка адреса переменной в dx

int 21h;вызов прерывания

mov ah,9 ;ф-я 9 вывод строки заканчивающейся $

lea dx,stroka ;загрузка адреса строки в dx

int 21h;вызов прерывания

mov ah,8 ;ввод без вывода на экран для задержки

int 21h;вызов прерывания

mov ax,4C00h;запись номера функции завершения работы программы

                                   ;с кодом 0

int 21h;вызов прерывания

;процедура ввода

input proc

mov ah,3Fh ;ф-я 3Fh универсальная функция считывания

mov bx,0 ;считывание с клавиатуры

mov cx,100 ;кол-во считываемых символов символов

int 21h;вызов прерывания

ret ;возврат в главную программу

input endp  ;конец процедуры

code ends

end start

Тестирование программы:

Вывод: В данной лабораторной работе я изучил инструкции обработки цепочек.


 

А также другие работы, которые могут Вас заинтересовать

82913. Причини виникнення пожежі – порушення правил протипожежної безпеки. Правила поведінки під час виникнення пожежі 46.5 KB
  Вогонь Правильно а звідки береться вогонь Відгадайте ще одну загадку. І мають душу щедру Хоч дерева сини Згоряючи до щенту Вогонь дають вони. Бесіда Отже сьогодні ми поговоримо про вогонь. Вогонь як ви знаєте може бути добрим другом для людини але може бути і страшним ворогом який забирає життя.
82914. Вода та її властивості 180 KB
  Давайте пригадаємо що таке природа На які групи вона поділяється Повітряземля і водаце природа Природа це я і ти це природа.вода Гостею нашого сьогоднішнього уроку буде вода а наша краплинка просто відірвалась від неї. Хто пригадає: який колір має вода смак запах Сьогодні краплинка хоче розповісти нам про властивості води.
82915. Лісові зони світу 33.5 KB
  Що побачили куди потрапили Чому це ліс Які ознаки лісу знаєте це великі ділянки землі на яких ростуть дерева розташовані близько одне від одного. Проте ліс це не тільки дерева але й інші рослини і тварини які живуть серед дерев. Кожна група рослин утворює свій поверх ярус...
82916. Зелене диво Землі — рослини. Різноманітність живих організмів. Значення рослин у природі та житті людей 52.5 KB
  Мета: продовжити формувати поняття природа нежива і жива, уявлення про царства живої природи, значення рослин, різноманітність рослин на землі, про види рослин; продовжити виробляти навички дослідницької роботи та спостереження; розвивати логічне мислення, виховувати естетичні почуття.
82917. Як розмножуються тварини 265.5 KB
  Мета: ознайомити учнів з особливостями розмноження комах, риб, плазунів, земноводних, птахів, звірів; розвивати вміння спостерігати, аналізувати, порівнювати, робити висновки; виховувати пізнавальний інтерес до природи, бажання досліджувати, берегти і вивчати природу.
82918. Крымские горы, урок правоведения 65.5 KB
  Ознакомить учеников с географическим положением климатом растительным и животным миром Крымских гор; развивать познавательный интерес наблюдательность творческие навыки; воспитывать любовь и бережное отношение к природе патриотические и эстетические чувства; Оборудование: компьютер мультимедийный экран проектор мультимедийная презентация Крымские горы слайды с картой Крымских гор картины и фотографии с изображением изучаемых объектов демонстрационные материалы карточки для индивидуальной работы учебник для 4 класса...
82919. Басни И.А.Крылова 197.5 KB
  Урок сопровождается презентацией в которой отражается каждое из заданий Игра проверяет знания по басням: Ворона и Лисица Стрекоза и муравей Слон и Моська Кукушка и петух Мартышка и очки Зеркало и обезьяна Лебедь Щука и Рак Чиж и голубь Заяц на ловле Задачи урока: 1 закрепить знания учащихся о жанре басни и баснях...
82920. Визначні місця Лондона 69 KB
  London is the most interesting place in the world. There are about 10 thousand streets in London. About eight million people live in the city. There are a lot of bridges over the Thames. Tower Bridge is the most famous. It is more than 100 years old. From Tower Bridge you can see the Tower of London.
82921. Розпізнавання геометричних фігур. Задачі на збільшення (зменшення) числа на кілька одиниць 39.5 KB
  Мета: навчитися розпізнавати геометричні фігури, записувати числа в таблицю розрядів. Розв’язувати задачі на збільшення (зменшення) числа на кілька одиниць. Розвивати логічне мислення, увагу, спостережливість. Виховувати позитивне ставлення до ближнього.