740

Процесс создание и отладки программы на языке ассемблера

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

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

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

Русский

2013-01-06

88 KB

32 чел.

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

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

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

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

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

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

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

Кафедра                    ЭиВТ                   

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

РАБОТА №2

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

Тема: Процесс создание и отладки программы на языке ассемблера

                    

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

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

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

                                                     

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

       Студент          ПО - 110       

  (группа)

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

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

        ______________________                                   

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

2012

Цель  работы:  Знакомство с методами создания и отладки программ, написанных на языке ассемблера.

Задание: Создать  программу,  на  языке  ассемблера  выполняющую  арифметическую операцию и ввод/вывод с консоли. 

Ход работы:

  1.  Изучение  способов ассемблирования  и  создания  исполняемого  файла  с помощью  программ Turbo Assembler (TASM.EXE)  и Turbo Link (TLINK.EXE).

  1.  Знакомство  с  командами  и  интерфейсом  отладчика Turbo Debbuger (TD.EXE), изучение трассировки и исправления программ.  

  1.  Написания кода программы, согласно варианту задания.

Арифметическая

операция

Операция

ввода-вывода

Res=X+Y

x,y – трехбайтные

Ввод символа

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

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

code segment

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

assume cs: code, ds:data, ss: stek

start:

mov ax, data ;в ах записывается адрес области данных

mov ds, ax ;адрес переписывается в регистр

mov ax,word ptr [X] ;из памяти в регистр ах записывается младшее слово числа Х

mov bx,word ptr [Y] ;из памяти в регистр bх записывается младшее слово числа Y

add ax,bx ;складываем младшие части чисел Х и Y, результат в ax

mov word ptr [Result],ax ;запись ax в результат на младшую позицию

mov ah,byte ptr [X+2] ;записываем в ah старшее слово числа X

mov bh,byte ptr [Y+2] ;записываем в bh старшее слово числа Y

adc ah,bh ;складываем старшие части чисел Х и Y, результат в ah

mov byte ptr [Result+2],ah ;запись ah в результат на старшую позицию

mov ah,1 ;функция 1 сервиса DOS: ввод символа с эхом c клавиатуры

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

mov [Chr],al ;запись символа «1» в память 31h

mov ah, 9 ;функция 9 сервиса DOS: вывод строки на CON (до '$')

mov dx, offset Msg ;запись в регистр dx начального адреса строки

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

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

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

code ends

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

data Segment

X db 23h,1h,0h

Y db 56h,4h,0h

Result dd (?) ;резервирование памяти под результат

Msg db 13,10,'Enter:' ;вывод сообщения

Chr db '0', '$'

data ends ;конец сегмента данных

;Опишем сегмент стека

stek segment stack

dw 128 dup (?) ;под стек отводится 128 слов

stek ends

end Start

  1.  Трансляция, компоновка, трассировка программы.

Трансляция  операторов  языка  в  машинные  коды  ЭВМ. Для  этого используется  программа TASM,  которая  осуществляет  трансляцию исходного  текста  в  машинные  коды  и  генерацию  объектного  модуля. В результате  

получается  модуль (объектный  файл, .obj)  а,  при необходимости, файл  с  листингом  программы (.lst)  и файл  перекрёстных ссылок (.crf).

Компоновка,  создание  исполняемого  файла (.ехе  или .com).  Используется  программа TLINK.  При  помощи  компоновщика  можно  объединить несколько отдельно оттранслированных исходных модулей в один исполняемый файл.

При  необходимости  может  быть  выполнена  трассировка полученной  программы  с  целью  поиска  алгоритмических  ошибок  при помощи отладчика программ TD.

                                                                              Трассировка программы

       Окно  дизассемблера      Окно  регистров  и  окно  регистра  флагов       

Окно  шестнадцатеричного  просмотра (дампа)

Вывод: В ходе выполнения данной лабораторной работы мы ознакомились  с  методами  создания  и  отладки  программ, написанных на языке ассемблера.


 

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

20024. Понятие алгоритма. Исполнитель алгоритма. Система команд исполнителя (на примере учебного исполнителя). Свойства алгоритма. Способы записи алгоритмов; блок-схемы 53.5 KB
  Понятие алгоритма. Исполнитель алгоритма. Свойства алгоритма. Рассмотрим пример алгоритма для нахождения середины отрезка при помощи циркуля и линейки.
20025. Битва под Москвой 11.08 KB
  7 ноября 1941 года на Красной Площади состоялся традиционный военный парад участвовавшие в нём войска сразу отправлялись на фронт. 56 декабря 1941 года советские войска перешли в контрнаступление под Москвой. Советские войска перешли в наступление с целью уничтожить РжевскоВяземскую группировку противников. Советские войска потерпели серьезное поражение под Харьковым и Керчью чем было предрешено падение Севастополя.
20027. Коренной перелом в ходе второй мировой войны 15.6 KB
  Сталинградская битва 17 июля 19422 февраля 1943 По советскому плану уран окружение противника в районе сталинграда 19 ноября 1942 красная армия перешла в наступление и окр немецкую группировку под командованием Паулюса. 5 июля 1943 делится на два этапа оборонительные сражения и контрнаступление 12 июля 43 танковое сражение под Прохоровкой.
20028. Полный разгром фашистской германии и завершение 2 мировой войны 11.93 KB
  Январь 1944 снятие блокады Ленинграда 1944 корсуньшевченковская операция. Июньавгуст 1944 Белорусская операция Багратион была освобождена Белоруссия Латвия часть Литвы Август 1944 ЛьвовскоСандомирская операция освобождены: Львов Западная Украина Позже ЯсскоКишеневская операция освобождена: Молдавия и часть Румынии Апрель 1945 года Восточно Прусская операция советские войска ступили в Кенинсберг Май 1945 заключительная Берлинская операция битва началась у Зееловских высот 2 мая Берлинский гарнизон сдался В ночь с 89 мая ...
20029. СССР в 1945-1953. Восстановление экономики после ВОВ. Послевоенный сталинизм 14.66 KB
  В конце 1940 возникло ленинградское дело обвинение видных деятелей партии в намерении превратить ленинград в опору борьбы со сталиным были расстреляны Вознесенский Радионов Кузнецов. 1953 дело врачей было арестовано группа врачей кремлевской больницы по обвинению в том что она якобы повинны смерти жданова и пытались умертвить других государственных деятелей но со смертью сталина дело было прекращено.
20030. Послевоенный мир, его разделение на две системы. Переход в холодной войне 15.91 KB
  ОВД Организация Варшавского ДоговораСССР. Гонка вооружений наращивание СССР и США количества вооружений с целью достижения качественного превосходства. В СССР эта политика проявлялась в создании железного занавеса системы международной самоизоляции. Причины холодной войны: Победа во II мировой войне привела к резкому усилению СССР и США.
20031. Попытки реформирования советской системы в 1950-60. Н.С Хрущев 17.59 KB
  С Хрущев. Борьба за личное лидерство длилась вплоть до весны 1958 но в итоге к власти пришел Хрущев.Начатая Хрущевым критика сталинизма привела к некоторой либерализации общественной жизни общества оттепель. Хрущева В 1954 г.
20032. СССР в период застоя(1964-1985) 14.54 KB
  к и в политической экономической и культурной жизни страны все было стабильно не было ничего нового. В культурной жизни зарождалось дессидентское движениенелегальные кружки интеллигенции выступающие за свержение коммунизма правительство полностью контролировало культурную жизнь странывыссылка из страны неугодных большевикам людейсолженицын плесецаявишневская 18 лет руководство брежнева перевели государство в состояние развала 1982Брежнев умирает с 18821884 правил Андропов а 18841885 Черненко общество жило от похорон до похорон...