Extended Linear Address Record
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Сергей Борщ 13 апреля 2005 г. 17:49
В ответ на: IAR мне генерит такой код отправлено Гм 13 апреля 2005 г. 16:29

The encoding for all the current record types are:
'00'Data Record
'0l'End of File Record
'02'Extended Segment Address Record
'03'Start Segment Address Record
'04'Extended Linear Address Record
'05'Start Linear Address Record

The 32-bit Extended Linear Address Record is used to specify bits 16-31 of the Linear Base Address (LBA), where bits 0-15 of the LBA are zero. Bits 16-31 of the LBA are referred to as the Upper Linear Base Address (ULBA). The absolute memory address of a content byte in a subsequent Data Record is obtained by adding the LBA to an offset calculated by adding the LOAD OFFSET field of the containing
Data Record to the index of the byte in the Data Record (0, 1, 2, ... n). This offset addition is done modulo 4G (i.e., 32-bits), ignoring any carry, so that offset wrap-around loading (from OFFFFFFFFH to
OOOOOOOOOH) results in wrapping around from the end to the beginning of the 4G linear address defined by the LBA. The linear address at which a particular byte is loaded is calculated as:
(LBA + DRLO + DRI) MOD 4G
where:
DRLO is the LOAD OFFSET field of a Data Record.
DRI is the data byte index within the Data Record.
When an Extended Linear Address Record defines the value of LBA, it may appear anywhere within a 32-bit hexadecimal object file. This value remains in effect until another Extended Linear Address Record is encountered. The LBA defaults to zero until an Extended Linear Address Record is encountered.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru