740

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

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

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

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

Русский

2013-01-06

88 KB

29 чел.

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

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

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

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

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

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

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

Кафедра                    ЭиВТ                   

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

РАБОТА №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.

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

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

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

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


 

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

47568. ЗАДАНИЯ И МЕТОДИЧЕСКИЕ УКАЗАНИЯ. ЭЛЕКТРИЧЕСКИЕ СЕТИ И СИСТЕМЫ 1.02 MB
  Задания и методические указания для выполнения курсового проекта по дисциплине Электрические сети и системы ГОС – 2000. Морозова Введение Основная цель выполнения курсового проекта по дисциплине Электрические системы и сети заключается в понимании и усвоении принципов проектирования сетей электрических систем методов расчета и анализа их установившихся режимов.1 Содержание курсового проекта Для заданного варианта расположения и мощности потребителей выбрать схему развития районной электрической сети при соблюдении...
47569. Методические рекомендации. Финансы и кредит 229 KB
  Учет и операционная деятельность в банках для специальности Учет и операционная деятельность в банках для специальности Тема 2 Особенности организации проведения операций банка с собственными векселями Уставный капитал банка его структура функции и порядок отражения в бухгалтерском учете
47570. Методичні рекомендації. Правознавство 280 KB
  Особлива увага присвячена вибору теми дослідження роботі з джерелами та літературою побудові структури та оформленню роботи підготовці до попереднього захисту та захисту магістерської роботи в Державній екзаменаційній комісії. Методичні рекомендації містять пояснювальну записку основні етапи виконання магістерської роботи правила оформлення та захисту магістерської роботи додатки а також список літератури. Головною метою даних методичних рекомендацій є надання допомоги студентудипломнику у вирішенні поставленних завдань щодо...
47572. Методические рекомендации по оформлению выпускной квалификационной работы студентов факультета туризма и гостеприимства 163.5 KB
  Структура выпускной квалификационной дипломной работы Структура выпускной квалификационной дипломной работы должна включать следующие основные разделы: титульный лист установленного образца приложение 1 оглавление введение основная часть дветри главы заключение список использованной литературы и источников приложения. Оглавление в дипломе курсовой реферате и других работах представляет собой перечень разделов работы с указанием страниц на которых они расположены. По правилам оформления оглавление содержание...
47573. Методические рекомендации. Таможенное дело 173.5 KB
  Учебно-методический комплекс. Методические рекомендации по выполнению и защите выпускных квалификационных работ для студентов специальности 036401 «Таможенное дело» дневной и заочной формы обучения
47574. Методичні вказівки. Охорона праці 693 KB
  ГОНЧАРА МЕТОДИЧНІ ВКАЗІВКИ до написання розділів “Охорона праціâ€ в дипломних роботах бакалаврів та “Охорона праці та безпека у надзвичайних ситуаціях†в дипломних роботах проектах спеціалістів і магістрів ДНУ ім.ГОНЧАРА Кафедра безпеки життєдіяльності МЕТОДИЧНІ ВКАЗІВКИ до написання розділів “Охорона праціâ€ в дипломних роботах бакалаврів та “Охорона праці та безпека у надзвичайних ситуаціях†в дипломних роботах проектах спеціалістів і магістрів ДНУ ім.Гончара...