Здавалка
Главная | Обратная связь

Создание проекта и написание программы на ассемблере TASM



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

 

Цель работы

· ознакомление с общими принципами построения программ на языке ассемблера;

· настройка TASM в интегрированной среде RADAsm

· обучение работе с программами Tasm.exe, Tlink.exe;

· создание *.EXE файла первой программы

· просмотр работы программы в Турбоотладчике (Td.exe);

 

Предмет исследования

Программирование на языке ассемблера или использование его в других языках дает широкий спектр возможностей для программиста в создании полноценных, по истине, профессиональных программ.

Язык ассемблера — это символическое представление машинного языка. Все процессы, происходящие на вашем компьютере, так или иначе, команды (инструкции) машинного языка. Отсюда понятно, что, несмотря на общее название, язык ассемблера для каждого типа компьютера свой. По-настоящему решить проблемы, связанные с аппаратурой невозможно без знания языка ассемблера.

Для первоначального ознакомления с ассемблером традиционно используется в качестве примера программа, выводящая на экран сообщение "Привет!".

Контрольные вопросы

1. Из чего состоит процесс ассемблирования программы?

2. Чем отличается трансляция от компоновки?

3. Объясните назначение каждого из перечисленных файлов, получаемых при создании исполняемой программы на языке ассемблер *.asm, *.exe, *.rap, *.obj.

4. Что такое "Турбоотладчик", расскажите основы пользования им?

5. В чем особенность программы на языке ассемблера?

6. Есть у ассемблера своя собственная среда программирования?

7. Какие окна содержит отладчик OllyDBG?

 

Задание к работе

1. Настройте для интегрированной среды RADAsm турбо ассемблер.

2. Разработать приложение, выводящее на экран MessageBox с сообщением «Hello (указать вашу фамилию)».

3. Загрузить отладчик OllyDBG и пошагово просмотреть выполнение программы.

Пример выполнения лабораторной работы в среде разработки RadASM

Настройка TASM

Среда разработки RadASM представляет собой среду разработки программного обеспечения для ОС Windows, изначально предназначенную для написания программ на языке ассемблера. Имеет гибкую систему файлов настроек, благодаря чему может быть использована как среда разработки программного обеспечения на высокоуровневых языках, а также документов, основанных на языках разметки.

Проект представляет собой набор файлов. В файле «Имя_проекта.rap» (расширение – rap) содержится информация о настройках проекта; файлах, входящих в проект. Помимо этого файла, проекта так же содержит файл «Имя_проекта.asm» (расширение – asm) – файл, содержащий основную часть программы. Так же могут входить дополнительные файлы.

Главное окно программ при запуске выглядит следующим образом (рисунок 1).

Окно программы содержит несколько областей: панель меню; панель инструментов; рабочую область; обозреватель проектов; свойство проекта и так далее, которые можно настроить при необходимости.

Для подключения ассемблера TASM в среде RADASM необходимо:

1) Если каталог RADASM находиться на диске С, достаточно скопировать папку TASM на диск С.

2) Если каталог RADASM находиться в любом другом месте необходимо указать пусть к папке TASM. Путь указывается в файле...RadAsm22\tasm.ini, для этого заходим в него и правим Paths

Ассемблер TASM настроен.

Создание проекта и написание программы на ассемблере TASM

Для создания нового проекта необходимо зайти в меню «Файл» и выбрать пункт «Новый проект» (рисунок 2).

Рисунок 2 – Окно пункта меню «Файл»

 

В выпадающем списке «Ассемблер» необходимо выбрать строку «tasm» (см. рис.)

Ввести имя проекта. Имя проекта должно содержать ОДНО СЛОВО БЕЗ ПРОБЕЛОВ. При необходимости ввести описание. По умолчанию проекты сохраняются в папке «radasm\Masm\Projects», где radasm – имя папки, содержащий среду. Необходимости указать местоположение проекта на диске D:\\... Нажать кнопку «Next >».

 

Рисунок 3 – Выбор типа проекта

Далее открывается окно выбрать базовый шаблон проекта (см. рис. 4). Шаблоны находятся в папке «radasm\Tasm\Templates\». В шаблоне уже прописан базовый код, общий для всех проектов и необходимые настройки компилятора и отладчика. После создания проекта, в редакторе будет загружена программа (рисунок 5). В данной лабораторной работе не используется шаблон (Нажимаем «Next >».)

Рисунок 4 – Выбор шаблона проекта

 

Предпоследнее окно Мастера предлагает выбрать типы создаваемых файлов – выбираем Asm (исходные файлы ассемблера), и папки – выбираем папку Bak, используемую для размещения предыдущих копий файлов (рисунок 5).

Рисунок 5 – Выбор типов файлов и папок

 

Последнее окно Мастера определяет доступные для работы с проектом пункты меню запуска приложения Создать и выполняемые команды. В данной сборке выполняемые команды уже настроены, поэтому в нем можно ничего не менять, хотя использоваться будут не все пункты созданного меню, а только следующие: Assemble (транслировать или, точнее, ассемблировать), Link (компоновать), Run (выполнить) и Run w/Debug (выполнить в подключенном отладчике).

Рисунок 6 – Пункты меню запуска приложения

 

В результате будет создан проект TASM приложения. Перейти на заготовку можно, дважды щелкнув левой клавишей мыши по файлу *.asm в окне навигатора Project, расположенном справа вверху.

Далее вводим листинг программы.

 

Далее переходим к запуск программы консольного приложения с

Для запуска заготовки необходимо выполнить:

• трансляцию Создать/Assemble,

• компоновку Создать/Link,

• запуск на выполнение Создать/Run.

В процессе трансляции (ассемблирования) исходная программа на ассемблере преобразуется в двоичный эквивалент.

Откомпилируем введенную программу. Для этого в меню «Создать» выбрать пункт «Assemble» или нажать клавишу F5. В результате компиляции возникла ошибка? В тексте программы пропущена строка подключения библиотеки. Для устранения ошибки необходимо в библиотеках TASM выбрать нужный файл и подключить(includelib).

Если трансляция проходит нормально, то в окне Output, которое появляется под окном программы, выводится текст:

 

Рисунок 7 – Окно вывода с информацией об ассемблировании

 

Примечание – Окно Output появляется и закрывается. Чтобы повторно посмотреть результаты, необходимо установить курсор мыши на верхнюю часть строки состояния под окном текста программы (нижнюю рамку окна Output).

Результатом нормального завершения ассемблирования является создание файла, содержащего объектный модуль программы, – файла *.obj.

Следующий этап – компоновка программы. На этом этапе к объектному (двоичному) коду программы добавляются объектные коды используемых подпрограмм. При этом в тех местах программы, где происходит вызов процедур, указывается их относительный адрес в модуле. Сведения о компоновке также выводятся в окно Output:

В случае ошибки компоновки:

Создаем в папке проекта любой файл соответствующего названия и расширения, данном случае 654.res.

Если процессы трансляции и компоновки прошли нормально, то ее можно запустить на выполнение. При этом открывается окно консоли, в которое выводится сообщение:

Окно закрывается при нажатии «OK».

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.