Сегментные регистры

В программной модели микропроцессора имеется шесть сегментных регистров: CS, SS, DS, ES, GS, FS. Сегментные регистры предназначены для обеспечения доступа к оперативной памяти.

В реальном режиме работы микропроцессора в этих регистрах содержатся адреса памяти, с которых начинаются соответствующие сегменты. Микропроцессор поддерживает следующие типы сегментов:

· Сегмент кода. Содержит команды программы. Для доступа к этому сегменту служит регистр CS (code segment register) – сегментный регистр кода. Он содержит адрес сегмента с машинными командами, к которому имеет доступ микропроцессор (то есть эти команды загружаются в конвейер микропроцессора);

· Сегмент данных. Содержит обрабатываемые программой данные. Для доступа к этому сегменту служит регистр DS (data segment register) – сегментный регистр данных, который хранит адрес сегмента данных текущей программы;

· Сегмент стека. Этот сегмент представляет собой область памяти, называемую стеком. Для доступа к этому сегменту служит регистр SS (stack segment register) – сегментный регистр стека, содержащий адрес сегмента стека;

· Дополнительный сегмент данных. Неявно алгоритмы выполнения большинства машинных команд предполагают, что обрабатываемые ими данные расположены в сегменте данных, адрес которого находится в сегментном регистре DS. Адреса дополнительных сегментов данных содержатся также в регистрах ES, GS, FS (extension data segment registers).

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

Понятие программной модели IA-32. Регистры состояния и управления.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: