adfun.ru
 
BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Форматы загружаемых объектных модулей
Автор ""
Размер 67980 Байт
Страница 2 из 9
СКАЧАТЬ КНИГУ ЦЕЛИКОМ


     7.2.1. Определение сегмента
            ДДДДДДДДДДДДДДДДДДДД

     Модуль представляет собой совокупность объектного  кода,
описываемую    последовательностью    записей,    создаваемых
транслятором. Объектный код  представляет  собой  непрерывные
участки  памяти,  содержимое  которых  определяется  во время
трансляции. Этими  участками  являются  логические  сегменты.
Модуль  определяет  атрибуты каждого ЛСЕГ. Запись определения
сегмента (SEGDEF)  содержит  всю  информацию  по  ЛСЕГ  (имя,
длина,   выравнивание   и   т.п.).  Сборщик  запрашивает  эту
информацию, когда комбинирует различные ЛСЕГ и  устанавливает
сегментную  адресацию.  SEGDEF всегда следует за заголовочной
записью.

     7.2.2. Адресация сегмента
            ДДДДДДДДДДДДДДДДДД

     Механизм  адресации  микропроцессора  8086  обеспечивает
адресацию   64К   памяти  в  каждом  из  четырех  фрагментов,
адресуемых базовыми регистрами - CS (регистр сегмента кодов),
DS и ES (регистры сегмента данных) и  SS  (регистр  стэкового
сегмента).

     Возможное  количество  ЛСЕГ,  составляющих образ памяти,
чаще всего намного превышает количество имеющихся  сегментных
(базовых)  регистров. Поэтому при модульном программировании,
когда собираются множество небольших ЛСЕГ,  требуется  частая
перезагрузка базовых регистров.

     Разумеется, такая перезагрузка нежелательна. Лучше всего
собирать  небольшие  по  размеру  ЛСЕГ  вместе  в  один блок,
помещающийся в одном фрагменте. В этом случае все ЛСЕГ  можно
адресовать,  использую  один  и тот же базовый регистр. Таким
блоком и является группа (см. Раздел 7.1.1).

     Для введения взаимной адресации внутри группы, вы должны
явно определить каждую группу в  модуле.  Запись  определения
группы  (GRPDEF)  как  раз предназначена для этого и содержит
список имен сегментов.

     GRPDEF  следует  сразу  за  всеми  SEGDEF,  т.к.  GRPDEF
обращается  к  ним  для описания группы. Все остальные записи
идут после GRPDEF.


     7.2.3. Определение имен
            ДДДДДДДДДДДДДДДД

     Определение имен осуществляется  с  помощью  трех  типов
записей - PUBDEF, COMDEF и EXTDEF.


     7.2.4. Индексы
            ДДДДДДД

     Понятие  индекс  понимается  в  этой  главе,  как целое,
указывающее  на  конкретный  элемент  из  списка   элементов.
Например,  индекс  имени,  индекс  сегмента,  индекс  группы,
индекс типа и т.п.

     _________________________________________________________
     Примечание
               Индекс обычно положительное число. Значение ноль
               зарезервировано и может нести особый смысл,  в
               зависимости от типа индекса (например, нулевой
               индекс сегмента указывает на абсолютный псевдо-
               сегмент без имени; нулевой индекс типа указывает
               на тип "без типа".
     _________________________________________________________

     В  целом, значения индексов в объектных файлах обычно не
превышают 50-100, поэтому отводимая для них память  также  не
превышает 1-2 байта.

     Если  старший  бит  первого  (и  возможно единственного)
байта равен нулю, то значение индекса варьируется в  пределах
0-127  и  занимает  один  байт.  Если  этот  бит  равен 1, то
значение индекса это число, между 0 и 32К-1,  занимающее  два
байта и определяемое следующим образом: младшие восемь бит во
втором байте, а старшие семь бит в первом байте.


                   7.3. Концепция привязки
                        НННННННННННННННННН

     Привязка   это   адресная   привязка   объектного   кода,
запрашиваемая транслятором и выполненная сборщиком.

     Для  специфицирования привязки необходимо указать  четыре
типа данных:

     - Место и тип привязываемого адресного поля.

     - Один из двух возможных режимов привязки.






- Цель, т.е. адрес в памяти к которому обращается адресное поле. - Фрагмент, к которому имеет место обращение. а) Существует пять типов адресных полей: - Указатель (старшее слово имеет больший адрес). - База это старшее слово указателя (сборщику безразлично, есть ли младшее слово указателя или нет). - Смещение это младшее слово указателя (сборщику безразлично, следует ли за ним старшее слово). - Старший байт это старший байт смещения (сборщику безразлично, предшествует ли младший байт). - Младший байт это младший байт смещения (сборщику безразлично следует ли за ним старший байт). ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДї Указатель: і і АДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ ЪДДДДДДДДДДДДї База: і і АДДДДДДДДДДДДЩ ЪДДДДДДДДДДДДДї Смещение: і і АДДДДДДДДДДДДДЩ ЪДДДДДДї Старший байт: і і АДДДДДДЩ ЪДДДДДДї Младший байт: і і АДДДДДДЩ Тип адресного поля указывается в поле LOC поля LOCAT записи FIXUPP, а его местоположение - в поле DATA_RECORD_OFFSET того же поля LOCAT. б) Сборщик Microsoft linker выполняет привязку в одном из двух режимов: - Внутрисегментный режим используется для привязки 8-битовых и 16-битовых смещений, указываемых в командах CALL, JUMP и JUMP SHORT. - Межсегментный режим используется при всех других режимах адресации (8086). в) Цель это объект в MAS к которому осуществляется обращение (точнее, самый младший байт этого объекта). Сборщик определяет цель одним из шести способов, причем три способа из указанных являются основными. Каждый из основных способов использует два вида данных - индекс Х и смещение D: Метод Определение цели ______________________________________________________ (Т0) Х - это индекс сегмента. Цель это D-ный байт в логическом сегменте, идентифицируемом индексом сегмента. (Т1) Х - это индекс группы. Цель это D-ный байт в логическом сегменте, идентифицируемом индексом группы. (Т2) Х - это индекс внешнего имени. Этот индекс идентифицирует внешнее имя, которое, в свою очередь, дает адрес соответствующего байта. Целью является байт, D-ный после указанного. ______________________________________________________ Остальные способы используют только один вид данных - индекс Х, т.е. смещение D считается равным нулю. Метод Определение цели ______________________________________________________ (Т4) Х - это индекс сегмента. Цель это первый байт в ЛСЕГ, идентифицируемом индексом сегмента. (Т5) Х - это индекс группы. Цель это первый байт в логическом сегменте указанной группы. Этот ЛСЕГ идет первым в группе. (Т6) Х - это индекс внешнего имени. Целью является байт, который адресуется внешним именем, которое, в свою очередь, идентифицируется индексом внешнего имени. _______________________________________________________ Таким образом, определение цели можно записать следующим образом: Номенклатура Метод ______________________________________________________


Страницы : 1 [2] 3 4 5 6 7 8 9


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

частная стоматология в Москве:
надежная стоматологическая клиника
протезирование зубов и
отбеливание зубов в стоматологии
Музыка - скачать mp3 музыка
каталог партнерские программы
ручной бесплатный обмен ссылками цифровые камеры цифровые фотоаппараты -
цифровые видеокамеры

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.