Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛЕКЦИЯ1.DOC
Скачиваний:
1
Добавлен:
22.07.2019
Размер:
107.52 Кб
Скачать

Оперативная память слова

Программный

сегмент

06FF

0006

0

2

Сегмент данных

4

6

Ячейка meml

Код команды inc meml

Смещение к ячейке meml

I—— Содержимое DS - 10E2h

10E20h Базовый адрес сегмента (на границе параграфа) lDE22h

lDE24h lDE26h Физический адрес ячейки meml

10Е28П Вычисление физического адреса:

lDE2h * 10h = lDE20h + ООО6h

=1DE26h

Рис. 1.3. Формирование физического адреса

В примере предполагается, что сегмент данных, адресуемый через регистр DS, имеет базовый адрес lDE20h, а ячейка meml расположена в байтах 6 и 7 этого сегмента (смещение meml относительно начала сегмента равно 6).

Поскольку младшая 16-ричная цифра базового адреса сег­мента должна быть равна 0, сегмент всегда начинается с адре­са, кратного 16, т.е. на границе 16-байтового блока памяти (параграфа). Число, хранящееся в сегментном .регистре, называ­ют сегментным адресом. Следует помнить, что сегментный ад­рес в 16 раз меньше физического; его можно рассматривать, как номер параграфа, с которого начинается данный сегмент.

Регистр CS обеспечивает адресацию к сегменту, в котором находятся программные коды, регистры DS и ES - к сегментам с данными (таким образом, в любой момент времени програм­ма может иметь доступ к 128 Кбайт данных), а регистр SS -к сегменту стека, который на машинах типа IBM PC, в отли­чие от других вычислительных систем, может быть очень большим и достигать 64 Кбайт. Сегментные регистры, естест­венно, не могут выступать в качестве регистров общего назна­чения.

Указатель команд IP "следит" за ходом выполнения про­граммы, указывая в каждый момент относительный адрес ко­манды, следующей за исполняемой. Регистр IP программно не­доступен (IP - это просто его сокращенное название, а не мнемоническое обозначение, используемое в языке программи­рования); наращивание адреса в нем выполняет микропроцес­сор, учитывая при этом длину текущей команды. Команды пе­реходов, прерываний, вызова подпрограмм и возврата из них изменяют содержимое IP, осуществляя тем самым переходы в требуемые точки программы.

Регистр флагов, эквивалентный регистру состояния процессо­ра других вычислительных систем, содержит информацию о те­кущем состоянии процессора (рис. 1.4). Он включает 6 флагов состояния и 3 бита управления состоянием процессора, кото­рые, впрочем, тоже называются флагами.