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

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

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


 

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

18980. ФУНКЦИОНАЛЬНЫЕ ЧАСТИ ПЕРСОНАЛЬНОЙ ЭВМ. МИКРОПРОЦЕССОР 242 KB
  ФУНКЦИОНАЛЬНЫЕ ЧАСТИ ПЕРСОНАЛЬНОЙ ЭВМ. МИКРОПРОЦЕССОР СТРУКТУРА ПЕРСОНАЛЬНОГО КОМПЬЮТЕРА Все современные ЭВМ используют микропроцессорную технику которая характеризуется большой интеграцией электронных элементов на единицу площади. Одним из следствий ...
18982. ВНУТРЕННЯЯ ПАМЯТЬ ПЕРСОНАЛЬНОЙ ЭВМ 98 KB
  ВНУТРЕННЯЯ ПАМЯТЬ ПЕРСОНАЛЬНОЙ ЭВМ СТРУКТУРА ПАМЯТИ ПЕРСОНАЛЬНОГО КОМПЬЮТЕРА Обрабатываемые данные и выполняемая программа должны находиться в запоминающем устройстве памяти ЭВМ куда они вводятся через устройства ввода. Ёмкость памяти измеряется в ве
18983. ВНЕШНЯЯ ПАМЯТЬ ПЕРСОНАЛЬНОЙ ЭВМ 117 KB
  ВНЕШНЯЯ ПАМЯТЬ ПЕРСОНАЛЬНОЙ ЭВМ ОБЩАЯ ХАРАКТЕРИСТИКА ВНЕШНЕЙ ПАМЯТИ Внешняя память ВЗУ предназначена для долговременного хранения больших объемов данных и программного обеспечения и обмена ими с оперативной памятью. В настоящее время структура и технич...
18984. ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ 152.5 KB
  ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ. ОБЩИЕ ПРИНЦИПЫ ИСПОЛЬЗОВАНИЯ ИЗБЫТОЧНОСТИ ДЛЯ ОБЕСПЕЧЕНИЯ ПОМЕХОУСТОЙЧИВОСТИ КОДОВ. Для обеспечения высокой достоверности передачи информации по каналу с помехами применяют помехоустойчивое кодирование. Помехоустойчивы
18985. Предмет и метод экономической теории 1.02 MB
  ТЕМА 01. Предмет и метод экономической теории Учебные цели Пять что изучает экономическая теория. Изучить методы экономического анализа. Выяснить различия между нормативной и позитивной экономикой. Уяснить чем отличается микроэкономика от макроэконо
18986. Теория потребительского поведения. Закономерности развития потребительских предпочтений 1.04 MB
  Теория потребительского поведения Учебные цели Раскрыть содержание предельной полезности товара показать ее отличие от общей полезности и сформулировать закон убывающей предельной полезности. Уяснить правило максимизации полезности...
18987. Рынок труда. Понятие предельного продукта труда в денежном выражении 630.5 KB
  А. Титков УМК ЭТ Тема 10. Рынок труда Учебные цели Выяснить особенности спроса на труд. Определить понятие предельного продукта труда в денежном выражении и предельных издержек на труд. Выявить факторы определяющие изменение спроса на труд. Усвоить правил
18988. Распределение Максвелла 326.5 KB
  Лекция I 1. Распределение Максвелла. Статистическая физика изучает свойства макроскопических тел т.е. систем состоящих из огромного числа частиц. Например для аудитории с размерами учитывая что каждый моль воздуха занимает объем 224 л и содержит число Авогадро мол