Студопедия

КАТЕГОРИИ:

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



Формат файла листинга




Читайте также:
  1. GIF (Graphics Interchange format – формат графічного обміну).
  2. III. Полная схема замещения трансформатора.
  3. IV. Экспериментальное определение параметров схемы замещения трансформаторов.
  4. MS Excel. Числовой формат от денежного отличается
  5. V. Упрощенная схема замещения трансформатора и внешняя характеристика.
  6. VI. Потери мощности и КПД трансформатора.
  7. А. Владимир I — государственный деятель, реформатор, полководец
  8. Автотрансформатор
  9. Автотрансформатор латр измерительные трансформаторы
  10. Автотрансформатор — устройство, экономичность принципы работы и регулирования.

Листинг ассемблера содержит информацию о процессе ассемблирования и состоит из нескольких секций:

Заголовок страницы

Каждая страница листинга начинается с заголовка, содержащего имя программы, имя проекта, число и время трансляции и номер страницы, например:

 

A51 MACRO ASSEMBLER LAB1 05/05/2008 20:59:18 PAGE 1

 

Далее следуют строки с номером версии программы-транслятора и именем выходного объектного файла. В следующей строке приводится содержимое командной строки, с помощью которой вызывается транслятор:

 

MACRO ASSEMBLER A51 V8.00b

OBJECT MODULE PLACED IN lab1.OBJ

ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE lab1.a51 SET(SMALL) DEBUG EP

 

Исходный текст с кодами команд

Исходный текст выводится в листинге в четыре столбца. Столбец LOC содержит адрес ПЗУ, по которому размещается код команды. Для директивы Ассемблера EQU в этом столбце выводится значение, присваиваемое соответствующему имени. В столбце OBJ выводятся коды команд. В столбце LINE указаны номера строк исходного текста. Далее в столбце SOURCE выводится исходный текст программы.

 

LOC OBJ LINE SOURCE

1 ; Задание имен констант

0030 2 Addr equ 30H ; Начальный адрес ОЗУ

0010 3 Lng equ 16 ; Количество данных

00BC 4 Const equ 0BCh ; Константа заполнения

0000 7830 7 mov R0,#Addr ;Загрузка адреса в регистр R0

0002 74BC 8 mov A,#Const ; Загрузка констанды в регистр

; - аккумулятор

0004 7A10 9 mov R2,#Lng ; Загрузка длины в регистр R2

0006 10 loop: ; Метка начала цикла

0006 F6 11 mov @R0,A ; Запись аккумулятора в ОЗУ по

; адресу регистра R0

0007 08 12 inc R0 ; Увеличение адреса на единицу

0008 DAFC 13 djnz R2,loop ; Уменьшить счетчик на 1,

; сравнить с нулем и перейти в начало цикла, если не нуль

 

Исключить исходный текст из листинга можно директивой $NOLIST.

 

Таблица символических имен

Таблица символических имен содержит информацию о типе, значении и других атрибутах определенных в программе имен:

 

N A M E TYPE VALUE ATTRIBUTES

ADDR N NUMB 0030H A

CONST N NUMB 00BCH A

LNG N NUMB 0010H A

LOOP C ADDR 0006H A

Отменить генерирование таблицы имен можно директивой $NOSYMBOLS.

 



Тип имени определяется следующими буквами:

B - символ ссылается на память типа BIT.

C - символ ссылается на память типа CODE.

D - символ ссылается на память типа DATA.

I - символ ссылается на память типа IDATA.

N - символ – имя числа.

X - символ ссылается на память типа XDATA.

Дополнительно тип имени определяется словами:

ADDR - символ типа адрес.

NUMB - символ типа число.

SEG - символ – имя сегмента.

Число, следующее после определения типа, - это адрес имени в памяти (для адресов) или размер (для сегментов). Следующий после адреса символ A означает, что адрес абсолютный и неперемещаемый. Символ R – признак перемещаемого адреса.

 

Перекрестные ссылки

Директива $XREF включает информацию о перекрестных ссылках в таблицу символов:

 

XREF SYMBOL TABLE LISTING

---- ------ ----- -------

NAME TYPE VALUE ATTRIBUTES / REFERENCES

ADDR . . . . N NUMB 0030H A 3# 8

CONST. . . . .N NUMB 00BCH A 5# 9

LNG. . . . . .N NUMB 0010H A 4# 10

LOOP . . . . .C ADDR 0006H A 11# 14

В столбце REFERENCES выводится список строк, в которых содержатся ссылки на соответствующие имена. Номера с символом '#’ - строки, в которых имена определяются.



 

Банки регистров

В этой строке перечисляются банки регистров, используемые программой. По умолчанию указывается только нулевой банк регистров. Используемые банки регистров определяются директивой $REGISTERBANK.Эта информация используется компоновщиком при подключении библиотечных объектных модулей:

 

REGISTER BANK(S) USED: 0 1

 

Предупреждения и ошибки

Проблемы, встречающиеся во время трансляции, генерируют сообщения об ошибках и предупреждениях. Эти сообщения выводятся на экран монитора и в листинг:

 

ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)

 


Дата добавления: 2015-04-05; просмотров: 3; Нарушение авторских прав





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