Адресация памяти в реальном режиме, сегментация памяти, сегментные регистры.

 

Процессор делит адресное пространство на произвольное количество сегментов, каждый из которых содержит не более 64 Кбайт. Адрес первого байта сегмента всегда кратен 16 и называется адресом сегмента или параграфом сегмента.

Для работы с памятью используются 2 шины – шина адреса и шина данных. Физически память устроена таким образом, что возможна адресация как 16-битовых слов, так и отдельных байтов памяти. Процессоры i80386, i80486 могут адресовать 32-битовые слова памяти.

ФА передается из процессора в память по шине адреса. Ширина шины адреса определяет максимальный объем физической памяти, непосредственно адресуемой процессором. Например, при 20-разрядной ША и 16-разрядной ШД можно адресоваться к 1 Мбайту памяти, причем к байтам и словам размером в 16 бит, 00000h<=ФА<=FFFFFh.

Возникает проблема представления 20-разрядного ФА при помощи содержимого 16-разр. регистров à используется 2-х компонентный ЛА, состоящий из сегмента памяти и смещения внутри сегмента.

Для получения 20-разрядного ФА к сегментной компоненте приписываются справа 4 нуля, затем прибавляется компонента смещения. Формат ЛА: <сегмент: смещение>.

 

Микропроцессоры имеют 14 специализированных регистров:

  1. регистры общего назначения - используются для временного хранения промежуточных результатов и операндов арифметических и логических операций: АХ (аккумулятор), ВХ (база), СХ (счетчик), DX (данные). Можно адресоваться к старшему (AH, BH, …) или младшему (AL, …) байту.
  2. сегментные регистры – хранят начальные адреса 4-х сегментов:
    1. DS: сегмент данных,
    2. CS – кода,
    3. ES – дополнительный (расширенный) сегмент данных,
    4. SS - стека).

Каждый сегментный регистр, обеспечивает адресацию памяти объемом 64 Кбайт, которая называется текущим сегментом. Адрес в сегментном регистре автоматически умножается на 16, чтобы он указывал на одну из 16-байтовых границ мегабайтного адресного пространства микропроцессора. Адрес в CS складывается с IP для получения ссылки на текущую команду. DS плюс смещение указывает на ячейку в сегменте данных. ES используется для адресации данных, находящихся в разных физических сегментах.

  1. IP – указатель команд,
  2. SP – указатель вершины стека,
  3. BP – указатель базы (основания) стека – используется только в момент загрузки для
  4. SI – индекс источника,
  5. DI – индекс назначения.
  6. регистр флагов: по битам: 15-12 – не используютсяся, OF- флаг переполнения, DF – направления, IF – прерывания, TF – трассировки, SF – знака, ZF – нуля, 5 – не используется, AF – вспомогательного переноса, 3 – не используется, PF – четности, 1 – не используется, CF – переноса.








Дата добавления: 2015-07-30; просмотров: 2014;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.