Cтраница 4
Хотя установка базового адреса библиотеки не гарантирует уникальность размещения, но это всегда лучше, чем игнорирование данной установки; в этом случае размещение всегда имеет место, но шанс, что два различных исполняемых файла повторно разместят ту же библиотеку в том же самом адресе, невысок. [46]
Регистр хранения базового адреса BAR и регистр хранения базового числа циклов ПДП WCR хранят базовые значения адреса и числа циклов ПДП, участвуют в автоинициализации. При начальной загрузке контроллера ПДП исходными параметрами происходит одновременная запись в регистры CAR, BAR, CWR и WCR. В процессе выполнения циклов ПДП содержимое BAR и WCR не изменяется. Прочитать состояние этих регистров невозможно. [47]
![]() |
Интерфейс Core-PIC. [48] |
После выборки базового адреса процедуры обслуживания исключения ядро входит в состояние обработки исключений. PC, a именно адрес исполняемого набора, заносится в стек исключений вместе с SR. Набор команд выбирается по адресу соответствующего вектора исключения. Этот адрес записывается на шину адреса как значение регистра VBA и смещение таблицы исключений, или как значение из внутренней таблицы адресов векторов исключений в следующих случаях: при внутренних исключениях; при внешних прерываниях с адресом вектора по умолчанию. Шесть младших разрядов базового адреса вектора исключений всегда равны нулю. [49]
При формировании адреса базовый адрес и индекс рассматриваются в качестве 24-битовых положительных двоичных чисел. Аналогично смещение рассматривается в качестве 12-битового положительного двоичного числа, к которому слева приписывается 12 нулей. Все три компонента складываются как 24-битовые двоичные числа, причем переполнение в результате игнорируется. Сумма всегда имеет 24 бита. Биты адреса нумеруются числами 8 - 31 в соответствии с нумерацией битов базового адреса и битов индекса в общем регистре. [50]
Однако при совмещении базовый адрес может задавать не любую ячейку, а только те ячейки, адреса которых содержат О в младших разрядах, соответствующих смещению. [51]
В) - базовый адрес ( содержимое 24 младших разрядов общего регистра, номер которого указан в поле В команды); ( X) - индекс ( содержимое 24 младших разрядов общего регистра, указанного в поле Х) D - смещение. [52]
![]() |
Базирование ( относительная адресация. [53] |
Однако при совмещении базовый адрес может задавать не любую ячейку, а только те, адреса которых содержат 0 в младших разрядах, соответствующих смещению. [54]
В) - базовый адрес ( содержимое 24 младших разрядов общего регистра, номер которого указан в поле В команды); ( X) - индекс ( содержимое 24 младших разрядов общего регистра, указанного в поле X); D - смещение. [55]
При формировании адреса базовый адрес и индекс трактуются как 24-разрядные положительные двоичные числа. Аналогично смещение трактуется как 12-разрядное положительное двоичное число. Все три компоненты складываются как 24-разрядные двоичные числа. [56]
Адрес относительно некоторого базового адреса. [57]