Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

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






Битовые начальные адреса сегментов памяти9 Ответ следующий





Поскольку все эти адреса кратны 16 (см. ранее), то в них младшие

Бита (последняя шестнадцатеричная цифра) всегда нулевые, а по-

Тому эти биты можно не хранить явно, а лишь подразумевать.

Именно так и делается: в сегментном регистре всегда хранятся толь-

Ко первые 16 битов (первые четыре шестнадцатеричные цифры) на-

Чального адреса сегмента (эта величина называется номером сег-

Мента или просто сегментом). При вычислении же абсолютного ад-

реса (А.,5,.) по паре s: D процессор сначала приписывает справа к

Содержимому регистра s четыре нулевых бита (другими словами,

Умножает на 16) и лишь затем прибавляет смешение о, причем сум-

мирование ведется по модулю 220:

. А.,бс = 16 х [s] + D (mod 220).

Если, например, в регистре CS хранится величина I234h, тогда

адресная пара 1234h:507h определяет абсолютный адрес, равный

16 х 1234h + 507h= 12340h + 507h = 12847h.

Сегментные р е г и с т ры по умолчанию. Согласно опи-

Санной схеме сегментирования адресов, замену абсолютных адресов

На адресные пары надо производить во всех командах, имеющих опе-

Ранд-адрес. Однако был разработан способ, позволяющий избежать

Выписывания таких пар в большинстве команд. Суть его в том, что

Устанавливается по умолчанию, какой именно сегментный регистр

На какой сегмент памяти будет указывать, и что в командах задается

только смещение: не указанный явно сегментный регистр автомати-

Чески восстанавливается согласно этой договоренности. И только

При необходимости нарушить эту договоренность надо полностью

указывать адресную пару. Список умолчаний приводится в табл. 4.4.

С учетом такого распределения ролей сегментных регистров ма-

шинные программы обычно строятся так: все команды программы

Размещаются в одном сегменте памяти, начало которого заносится в

Регистр cs, а все данные размещаются в другом сегменте, начало







Date: 2015-11-13; view: 398; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию