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

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

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


 

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

14611. Проектування логічної структури сховища даних з архітектурою шини 242.47 KB
  8 Лабораторна робота № 2 з дисципліни: Технології сховищ даних на тему: Проектування логічної структури сховища даних з архітектурою шини Мета роботи: Вивчення порядку методів та засобів проектування і побудови сховища даних з архітекту...
14612. Проектування логічної структури сховища даних з архітектурою зведення даних 181.48 KB
  7 Лабораторна робота № 3 з дисципліни: Технології сховищ даних на тему: Проектування логічної структури сховища даних з архітектурою зведення даних Мета роботи: Вивчення порядку методів та засобів проектування і побудови сховища даних з ар...
14614. Моделювання репозиторію метаданих у сховищах даних 548.5 KB
  Лабораторна робота № 4 з дисципліни: Технології сховищ даних на тему: Моделювання репозиторію метаданих у сховищах даних Мета роботи: Вивчення порядку методів та засобів створення структури та складу метаданих для сховищ даних за схемою Захмана роз
14615. Моделювання процесів підготовки, інтеграції та завантаження даних 135.39 KB
  Лабораторна робота № 5 з дисципліни: Технології сховищ даних на тему: Моделювання процесів підготовки інтеграції та завантаження даних Мета роботи: Вивчення порядку методів та засобів добування узгодження інтеграції даних створення оперативни
14616. Моделювання процесів оперативного аналізу даних 231.29 KB
  Лабораторна робота № 6 з дисципліни: Технології сховищ даних на тему: Моделювання процесів оперативного аналізу даних Мета роботи: Вивчення порядку методів та засобів створення аналітичних та підсумкових даних і документів на основі технології...
14617. Исследование системы автоматической регулировки усиления 263 KB
  ПОЯСНИТЕЛЬНАЯ ЗАПИСКА к лабораторной работе Исследование системы автоматической регулировки усиления Цель работы: изучение и исследование системы АРУ при различных параметрах структурной схемы. Краткие теоретические сведения Рисунок 1 Обобщённая структурн...
14618. ИССЛЕДОВАНИЕ ТРЕХФАЗНОЙ ЦЕПИ ПРИ СОЕДИНЕНИИ ПРИЕМНИКОВ ЗВЕЗДОЙ 67.77 KB
  Лабораторная работа № 3 ИССЛЕДОВАНИЕ ТРЕХФАЗНОЙ ЦЕПИ ПРИ СОЕДИНЕНИИ ПРИЕМНИКОВ ЗВЕЗДОЙ. Цель работы: Исследование режимов работы трехфазной цепи при соединении нагрузки звездой. Симметричный и несимметричный режимы. Влияние нейтрального провода. ПОРЯДОК В