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

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

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


 

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

76057. Основы моделирования процессов и систем с применением пакета MSOfficeSystem 4.75 MB
  Компьютеры перестали быть монополией заводов, банков, крупных объединений. Сегодня они стали достоянием и небольших предприятий, магазинов, учреждений, бюро трудоустройству и даже ферм. Секретарь практически любого учреждения при подготовке докладов и писем производит обработку текстов.
76058. Создание автоматизированной информационной системы для фирмы «Удача» 1.84 MB
  Выявляются наиболее важные компоненты деятельности данной фирмы: Сотрудники – в их обязанности входит составление каталога рассылка каталога оформление заказов продажи оформление счетов и накладных решение бухгалтерских задач реклама а также внесение информации в базу данных.
76059. Прогнозирование оценки за экзамен 3.5 MB
  Целью моей работы: показать можно ли использовать нейронные сети и эффективно ли их применение в данной области. Полносвязанной нейронной сетью называется многослойная структура в которой каждый нейрон произвольного слоя связан со всеми нейронами предыдущего слоя а в случае первого слоя со всеми входами нейронной сети.
76060. Право: понятие, характеристика, признаки, принципы 58.5 KB
  Разграничение права и закона имеет большой гуманистический смысл ибо тогда право рассматривается как критерий качества закона установления того насколько последний признаёт права человека его интересы и потребности.
76061. Антропогенный морфогенез в границах ландшафтов Рязанской области 7.5 MB
  Максимальный показатель антропогенной нагрузки характерен для ландшафтов с чехлом покровных суглинков залегающих на неогеновых песках см. Показатель антропогенной нагрузки изза гражданского строительства здесь ниже но все же достаточно высок и составляет 5 359 295 м3.
76062. Бизнес-план фирмы «ДомМаркет» 70.92 KB
  Предприятия малого бизнеса являются гибкой и динамичной формой реализации предпринимательской деятельности позволяющей свободно выразить деловой и творческий потенциал иметь определенные заработки для достойного образа жизни.
76065. Проектирование структурированной кабельной системы ООО «Прокуратов» 1.21 MB
  Вышеперечисленные стандарты описывают почти одинаковые кабельные системы; но несколько различаются в терминологии и определениях норм для родственных параметров. Кроме терминологии, в этих стандартах имеются различия в списке применимых кабелей: в 1568-А определен коаксиальный кабель 50 Ом...