Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


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




Организация и использование памяти микропроцессорами Intel имеет специфику, которая заключается в том, что МП аппаратно поддерживает структурную организацию программы при ее расположении в памяти из нескольких непрерывных частей с определенным назначением, которые называются сегментами (сегментированная организация памяти). В общем случае любая программа состоит из сегмента кода (содержит код программы), сегмента данных (содержит обрабатываемые программой данные), сегмента стека (содержит стек программы) и дополнительного сегмента данных (также может содержать обрабатываемые программой данные). Минимально программа может состоять из одного сегмента (сегмента кода). Важно отметить, что физически сегменты друг от друга ничем не отличаются (это в любом случае ячейки памяти, заполненные нулями и единицами) и их назначение определяет сам программист.

Для того чтобы обращаться к соответствующим сегментам и необходимы сегментные регистры, которые фактически содержат адреса памяти с которых начинаются соответствующие сегменты. При этом сегменты при каждой загрузке программы в память могут располагаться в разных местах памяти.

Для доступа к сегменту кода служит регистр CS (Code segment register) – сегментный регистр кода, сегменту данных – регистр DS (Data segment register) – сегментный регистр данных, сегменту стека – SS (Stack segment register) – сегментный регистр стека и дополнительному сегменту данных – регистр ES (Extension data segment register) – дополнительный сегментный регистр данных.

В большинстве случаев для доступа к определенной информации в памяти МП сам использует необходимые сегментные регистры. Для выборки из памяти следующей исполняемой команды используется регистр CS. Неявно алгоритмы выполнения большинства машинных команд предполагают, что обрабатываемые ими данные расположены в сегменте данных, адрес которого находится в сегментном регистре DS. Если необходимо использовать дополнительный сегмент данных, то адрес его начала (регистр ES) необходимо указывать в команде явно.

Работа стека будет рассмотрена ниже. Пока можно заметить, что это область памяти, работа с которой основана на следующем принципе: последний записанный в эту область элемент выбирается первым (LIFO – Last In, First Out или FILO – First In, Last Out). При работе со стеком также неявно используется регистр SS.

Запись в сегментные регистры возможна только через промежуточный регистр общего назначения.





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


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 618 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Если президенты не могут делать этого со своими женами, они делают это со своими странами © Иосиф Бродский
==> читать все изречения...

2464 - | 2329 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.