Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Motorola S HEX




Intel HEX-86

Шестнадцатеричный формат

Лекция 5

ORG 100h

START: …………..;Точка старта программы

…………..

CODE ENDS

END START

Отсутствие указанной директивы приведет к генерации ошибки линковщика.

 

Шестнадцатеричный формат характерен для кросс-ассемблеров и представляет собой файл, в котором в текстовом символьном виде записана двоичная информация. Файл разбивается на записи (ASCII-строки) со своими адресами загрузки и контрольными суммами. Каждая запись начинается с поля маркера записи и кончается полем контрольной суммы. Всякая информация, размещенная после поля контрольной суммы до маркера следующей записи, игнорируется.

Существует несколько разновидностей шестнадцатеричного формата, например: Intel-83, Intel-86, Intel-386, Motorola, Tektronix. Рассмотрим две из них.

 

Каждая запись состоит из 6 последовательно расположенных полей. Поле данных имеет переменную длину. Параметры каждого поля представлены в таблице 1.

Таблица 1

  №   Поле   Длина в байтах   Позиция в записи   Описание
    Маркер записи       Символ ‘:’ (код 3Ah)
    Количество байт в записи     2 - 3 Количество байт данных 00-признак конца файла
    Адрес загрузки       4 - 7 Начальный адрес загрузки данных текущей записи  
    Тип записи       8 - 9 00-двоичные данные 01-конец файла 02-номер параграфа 04-номер сегмента
    Данные     -   10 - n   По два шестнадцатеричных символа на каждый байт исходной информации, указанной в поле 2
    Контрольная сумма       (n+1) – (n+2) Контрольная сумма как дополнение до 0 суммы по модулю 256 всех байт в полях 2-5

 

Для последней записи, содержащей признак конца файла, адрес загрузки используется как адрес старта программы.

Пример 1 записи Intel-86 (в символьном коде):

: 02 0210 00 FB88 69

Здесь: 02h – количество байт данных в записи; 0210h-адрес загрузки; 00h-тип записи (двоичные данные); FB88h-данные; 69h-контрольная сумма.

Пример 2 записи Intel-86 (в символьном коде):

: 00 0000 01 FF

Здесь: 00h – признак конца файла; 0000h-адрес старта программы; 01h-тип записи (конец файла); FFh-контрольная сумма.

Каждая запись состоит из 6 последовательно расположенных полей. Поля адреса загрузки и данных имеют переменную длину. Параметры каждого поля представлены в таблице 2.

Таблица 2

  №   Поле     Длина в байтах   Позиция в записи     Описание
    Индикатор         Символ ‘S’ (код 53h)
    Тип записи         0-заголовок 1 - 16р адресация 2 - 24р адресация 3 - 32р адресация 9 – конец файла
    Количество байт в записи       3 - 4 Со следующего поля (4) до поля контрольной суммы (6) включительно
    Адрес загрузки     4 – 8   5 - x x=08 – для 16р адресации x=10 – для 24р адресации x=12 – для 32р адресации
    Данные     -   (x+1) - n По два шестнадцатеричных символа на каждый байт исходной информации
      Контрольная сумма     (n+1) – (n+2)   Дополнение до 1 суммы по модулю 256 полей 3 - 5

 

Пример записи Motorola S HEX (в символьном коде):




Поделиться с друзьями:


Дата добавления: 2014-12-16; Просмотров: 980; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.