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

В большинстве случаев, независимо от выбранного языка программирования, предлагается следующая методика разработки программ (с учетом специфики языка ассемблер):

1. Этап постановки и формулировки задачи:

— изучение предметной области и сбор материала в проблемно-ориентированном контексте;

— определение назначения программы, выработка требований к ней представление требований в формализованном виде;

— формулирование требований к представлению исходных данных и выходных результатов;

— определение структуры входных и выходных данных;

— формирование ограничений и допущений на исходные и выходные данные.

2. Этап проектирования:

— формирование «ассемблерной» модели задачи;

— выбор метода реализации задачи;

— разработка алгоритма реализации задачи;

— разработка структуры программы в соответствии с выбранной моделью памяти.

3. Этап кодирования:

— уточнение структуры входных и выходных данных и определение ассемблерного формата их представления;

FASM. Установка FASM. Структура программы на ассемблере. Урок 1

— комментирование текста программы и составление предваритель-ного описания программы.

4. Этап отладки и тестирования:

— составление тестов для проверки правильности работы программы;

— обнаружение, локализация и устранение ошибок в программе, выявленных в тестах;

— корректировка кода программы и ее описания.

5. Этап эксплуатации и сопровождения.

Традиционно у существующих реализаций ассемблера нет интегрированной среды, подобной интегрированным средам Turbo Pascal, Turbo С или Visual C++, поэтому для выполнения всех функций по вводу кода программы, ее трансляции, редактированию и отладке необходимо использовать отдельные служебные программы. Большая часть их входит в состав специализированных пакетов ассемблера.

Общая схема процесса разработки программы на ассемблере приведена на рис. 4.10.

1. Ввод исходного текста программы
2. Создание объектного модуля
3. Создание загрузочного модуля
4. Отладка программы

Рис. 4.10. Процесс разработки программы на ассемблере

На первом шаге с использованием любого текстового редактора вводится код программы, т.е. создается исходный файл. Основным требованием к текстовому редактору является то, чтобы он не вставлял посторонних символов (спецсимволов редактирования). Файлу целесообразно задавать расширение asm. (В программной оболочке Norton Commander текстовый файл создается при нажатии клавиш Shift+F4).

Второй шаг — трансляция программы. На этом шаге формируется, объектный модуль, который включает в себя представление исходной программы в машинных кодах и некоторую другую информацию, необходимую для отладки и компоновки его с другими модулями.

Читайте также:
Прекращена работа программы библиотека dll функции

Третий шаг разработки программы — создание исполняемого (загрузочного) модуля или компоновка программы. Главная цель этого шага — преобразовать код и данные в одном или нескольких объектных файлах (исходные модули могут быть написаны на одном или нескольких языках) в их перемещаемое выполняемое изображение. Результатом работы компоновщика является создание загрузочного файла с расширением ехе. После этого операционная система может загрузить такой файл в память и выполнит его.

Как я стал программистом на ассемблере / #itstory2019

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

Вопросы и задания для самопроверки

1. Центральный процессор: назначение и структура.

2. Принципы работы центрального процессора.

3. Виды памяти ЭВМ.

4. ОЗУ, ПЗУ, CMOS, специальная память.

6. Внешние устройства хранения информации.

7. Структура команды на языке ассемблер.

8. Способы адресации в команде ассемблера.

9. Структура программы на языке ассемблер.

10. Команды микропроцессора. Приведите пример.

11. Исходная и объектная программы.

12. Этапы разработки программы на языке ассемблер.

13. Написать команды на ассемблере, позволяющие выполнить следующие действия:

а) Поместить число из регистра H в аккумулятор.

б) Записать в регистры H и L адрес ячейки памяти 201016.

в) Число в аккумуляторе сложить с числом, адрес которого записан в регистрах H и L.

г) Сложить содержимое аккумулятора с числом 1816 (число взять из команды).

ГЛАВА 5. Устройство персонального компьютера

Источник: studopedia.su

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

Общая схема процесса разработки программы на ассемблере включает 4 этапа.

  1. Ввод исходного текста программы.
  2. Создание объектного модуля.
  3. Создание загрузочного модуля.
  4. Отладка программы.

Трансляция программы

На этапе трансляции осуществляется перевод команд ассемблера в соответствующие машинные команды. В результате трансляции формируются файл объектного модуля и файл листинга. Объектный модуль включает в себя представление исходной программы в машинных кодах и некоторую другую информацию, необходимую для отладки и компоновки его с другими модулями.

При использовании пакета TASM получение объектного модуля исходного файла производится программой (ассемблером) tasm.exe. Формат командной строки для запуска tasm.exe следующий: TASM [ключи] имя_исходного_файла [, имя_объектного_файла] [, имя_файла_листинга] [, имя_файла_перекрестных_ссылок] tasm.exe prg_6_l , , , tasm.exe prg_6_l , ,prg_list, tasm.exe prg_6_l , , n u l , Ключ /z разрешает вывод на экран строк исходного текста программы, в которых ассемблер обнаружил ошибки. Ключ /zi управляет включением в объектный файл номеров строк исходной программы и другой информации, не требуемой при выполнении программы, но используемой отладчиком.

Читайте также:
Программа для обновления всех драйверов booster

Компоновка программы

Полный формат командной строки для запуска компоновщика: TLINK [ключи] список объектных файлов [,имя загрузочного модуля] [,имя файла карты] [,имя файла библиотеки] [,имя файла определений] [,имя ресурсного файла] Отладка программы Запуск отладчика удобнее производить из командной строки с указанием исполняемого модуля отлаживаемой программы: td имя_исполняемого_модуля Запустить программу в отладчике можно в одном из четырех режимов:

  1. Безусловное выполнение (F9).
  2. Выполнение по шагам (F7, F8).
  3. Выполнение до текущего положения курсора (F4).
  4. Выполнение с установкой точек прерывания (F2, F9) .

Макросредства языка ассемблераМакросредства – средства модификации текста программы во время ее трансляции. Предназначены для облегчения написания программ на языке ассемблера и для улучшения понимания исходного текста программы. Программа, написанная на макроязыке, транслируется в два этапа.

  1. Этап макрогенерации.
  2. Этап ассемблирования.

Схема взаимодействия элементов макросредствМакроопределения Описание макроса, т.е. макроопределение, имеет следующий вид: MACROENDMМакрокоманды Обращение к макросу осуществляется через макрокоманду, которая записывается следующим образом: После выполнения макроподстановки формируется макрорасширение. Пример: Макроопределение SUM MACRO S1, S2, REZ PUSH AX MOV AX, S1 ADD AX, S2 MOV REZ, AX POP AX ENDM Макрокоманда SUM 5, ALFA, BX Макрорасширение PUSH AX MOV AX, 5 ADD AX, ALFA MOV BX, AX POP AX

Источник: studfile.net

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

Ассемблер представляет собой машинный язык в символической форме, которая достаточно понятна и удобна программисту. Наиболее распространенными являются ассемблер фирмы Microsoft -MASM и Turbo Assembler фирмы Borland — TASM. Они очень похожи, однако мы будем пользоваться пакетом программ TASM, в который входят три нужные нам программы: Turbo Assembler (tasm.exe), Turbo Link (tlink.exe) Turbo Debugger (td.exe).

Полный цикл создания программы на Ассемблере можно представить в виде последовательности четырех этапов (рис. 4.3).

Этапы создания ассемблерной программы

Рис. 4.3 — Этапы создания ассемблерной программы

Исходный модуль программы создается в любом текстовом редакторе, например в «Блокноте» и сохраняется в виде файла с именем, присвоенным по правилам MS DOS , с обязательным расширением asm: XXXXXXXX.asm (например, hello_l.asm).

Читайте также:
Как установить программу мой мир

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

Для получения исполняемого модуля, который можно запустить на выполнение, требуется последовательно выполнить этапы ТРАНСЛЯЦИИ и КОМПОНОВКИ. Для этого используются программы, входящие в состав пакета ассемблера TASM фирмы Borland.

Трансляция производится с помощью компилятора [1] Турбо Ассемблера, который является исполняемой программой tasm.exe, работающей в режиме командной строки. Вызов компилятора производится командой DOS:

tasm /z /zi /п , где /z — ключ, разрешающий вывод на экран строк исходного текста программы, в которых ассемблер обнаружил ошибки;

/zi — ключ, управляющий включением в результирующий файл полных сведений о номерах строк и именах исходного модуля;

/п — ключ, который исключает из листинга информацию о символических обозначениях в программе.

Следующие далее параметры определяют имена файлов исходного (*.asm), объектного (*.obj) и листинга (*.lst). Причем в командной строке достаточно указать только имена файлов, без расширений, например

tasm /z /zi /п hellol hellol hellol

Если исходный модуль не содержит ошибок, то на экран выводится сообщение об успешной трансляции, а в текущем каталоге появится новые файлы — объектный (hello l.obj) и листинга (hello_l.lst).

Компоновка объектных модулей с библиотечными модулями производится вызовом программы-компоновщика tlink.exe из командной строки:

Ключ /v передает в загрузочный файл информацию, используемую при отладке программ.

Следующее далее имя файла обозначает имя объектного модуля. Расширение в этом имени можно не указывать.

Для нашего примера компоновка будет осуществляться следующей командой:

tlink /v hello l

В случае успешного окончания компоновки в текущем каталоге появляется исполняемый файл — загрузочный модуль hello_l.exe, и файл карты сборки hello_l.map.

Загрузочный модуль может быть запущен на выполнение командой DOS

hello_l.exe .

Для отладки создаваемых программ используется программа-отладчик Turbo Debugger (td.exe).

Если на каком-то этапе создания программы появляются сообщения об ошибках, либо ошибки выявляются на стадии отладки, то требуется внести коррективы в исходный модуль и вновь выполнить этапы трансляции и компоновки.

  • [1] Компилятор транслирует весь текст исходного модуля в ходе одного непрерывного процесса. При этом создается объектный модуль, который далее обрабатывается без участия компилятора.

Источник: bstudy.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru