Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Выходные данные




Выходными данными Приложения являются:

· Файл, содержащий преобразованный в чисто ассемблерный код исходный код программы, написанной на языке Макроассемблера для УУМ-32. Этот файл строится только в случае подачи на вход Приложения файла, содержащего исходный код программы с использованием макросов. Помимо ассемблерного кода данный файл содержит специальные комментарии, указывающие, по какой строке какого файла была построена результирующая строка. Эти комментарии необходимы для того, чтобы в случае возникновения ошибки предоставить пользователю ссылку на исходный файл и строку, на основании которой была построена результирующая строка, а не на саму результирующую строку. Пример файла см. в Приложении 4.

· Файл, содержащий объектный код программы. Объектный файл содержит машинное представление символических команд и данных, а также записи, необходимые для работы компоновщика. Ниже приведено краткое описание формата объектных файлов УУМ32:

§ Формат объектных файлов - текстовый, записи представляют собой строки, разделённые символами перевода строки.

§ Пустые и некорректные строки игнорируются (это сделано, чтобы можно было вставлять комментарии в учебных целях).

§ Строки состоят из полей, разделяемых символом "|" (ASCII 7C).

§ Некоторые поля (имена секций) имеют переменную (произвольную) длину.

§ Несимвольные поля (адреса, объектный код) записываются в шестнадцатеричном виде.

Виды записей объектного файла:

1) Заголовок секции

Формат: H|ИМЯ|ДЛИНА

В одном объектном файле может быть несколько секций.

2) Объектный код

Формат: T|АДРЕС_БЛОКА|ДЛИНА_БЛОКА|ОБЪ_КОД_БЛОКА

- АДРЕС_БЛОКА - 4 байта

- ДЛИНА_БЛОКА - 1 байт

- ОБЪ_КОД_БЛОКА - шестнадцатеричные коды команд и данных, разделённые символом '|'

3) Модификатор

Формат: M|АДРЕС_ПОЛЯ|ДЛИНА_ПОЛЯ|ИМЯ<+/->

- "+" – значение имени прибавляется

- "-" – значение имени вычитается

адрес - 4 байта, длина - 1 байт.

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

4) Определение внешних имён (экспорт из секции)

Формат: D|ИМЯ1|АДРЕС1|ИМЯ2|АДРЕС2...

5) Список внешних ссылок (импорт в секцию)

Формат: R|ИМЯ1|ИМЯ2|...

6) Конец секции

Формат: E

 

Пример объектного файла см. в Приложении 5.

 

· Файл листинга. Листинг представляет собой текстовый файл, который содержит:

§ Текст исходной программы с удаленными комментариями и удобочитаемой структурой

§ Адреса каждой команды и записи данных

§ Машинное представление команд и данных в соответствующем формате

Пример файла листинга см. в Приложении 6.

 

· Список ошибок, обнаруженных во время компиляции. Для каждой обнаруженной ошибки указывается, если возможно, файл, в котором была обнаружена ошибка, и номер строки, содержащей ошибку.


 


Поделиться:

Дата добавления: 2015-08-05; просмотров: 65; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты