Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

arx011010_ch1

.pdf
Скачиваний:
21
Добавлен:
11.05.2015
Размер:
1.98 Mб
Скачать

В ЭВМ используются два основных способа организации передачи данных между памятью и периферийными устройствами: программно-управляемая передача и прямой доступ к памяти (ПДП).

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

1.сформировать начальный адрес области обмена ОП;

2.занести длину передаваемого массива данных в один из внутренних регистров, который будет играть роль счетчика;

3.выдать команду чтения информации из УВВ; при этом на шину адреса из МП выдается адрес УВВ, на шину управления - сигнал чтения данных из УВВ, а считанные данные заносятся во внутренний регистр МП;

4.выдать команду записи информации в ОП; при этом на шину адреса из МП выдается адрес ячейки оперативной памяти, на шину управления - сигнал записи данных в ОП, а на шину данных выставляются данные из регистра МП, в который они были помещены при чтении из УВВ;

5.модифицировать регистр, содержащий адрес оперативной памяти;

6.уменьшить счетчик длины массива на длину переданных данных;

7.если переданы не все данные, то повторить шаги 3-6, в противном случае

закончить обмен.

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

Альтернативой программно-управляемому обмену служит прямой доступ к памяти - способ быстродействующего подключения внешнего устройства, при котором оно обращается к оперативной памяти, не прерывая работы процессора. Такой обмен происходит под управлением отдельного устройства - контроллера прямого доступа к памяти (КПДП).

Структура ЭВМ, имеющей в своем составе КПДП, представлена на рис 18.2.

Рис. 18.2. Обмен данными в режиме прямого доступа к памяти Перед началом работы контроллер ПДП необходимо инициализировать: занести

начальный адрес области ОП, с которой производится обмен, и длину передаваемого массива данных. В дальнейшем по сигналу запроса прямого доступа контроллер фактически выполняет все те действия, которые обеспечивал микропроцессор при программно-управляемой передаче.

21

Последовательность действий КПДП при запросе на прямой доступ к памяти со стороны устройства ввода-вывода следующая:

1.Принять запрос на ПДП (сигнал DRQ) от УВВ.

2.Сформировать запрос к МП на захват шин (сигнал HRQ).

3.Принять сигнал от МП (HLDA), подтверждающий факт перевода микропроцессором своих шин в третье состояние.

4.Сформировать сигнал, сообщающий устройству ввода-вывода о начале выполнения циклов прямого доступа к памяти (DACK).

5.Сформировать на шине адреса компьютера адрес ячейки памяти, предназначенной для обмена.

6.Выработать сигналы, обеспечивающие управление обменом (IOR, MW для передачи данных из УВВ в оперативную память и IOW, MR для передачи данных из оперативной памяти в УВВ).

7.Уменьшить значение в счетчике данных на длину переданных данных.

8.Проверить условие окончания сеанса прямого доступа (обнуление счетчика данных или снятие сигнала запроса на ПДП). Если условие окончания не выполнено, то изменить адрес в регистре текущего адреса на длину переданных данных и повторить

шаги 5-8.

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

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

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

A0-A23- шина адреса;

D0-D15- двунаправленная шина данных, допускает обмен как байтами, так и словами (2 байта);

CLKшинный тактовый сигнал, синхронизирует работу процессора, ОП и УВВ; MRуправляющий сигнал чтения из ОП;

MWуправляющий сигнал записи в ОП;

IORуправляющий сигнал чтения из УВВ;

IOWуправляющий сигнал записи в УВВ; IRQi- запрос прерывания от i-го источника;

DRQi- запрос прямого доступа к памяти по i-му каналу контроллера ПДП; DACKi- разрешение прямого доступа к памяти i-му каналу контроллера ПДП; AENсигнал занятости шин обменом в режиме ПДП,

READYсигнал готовности УВВ к обмену.

Магистраль обеспечивает подключение до семи внешних устройств, работающих в режиме прямого доступа к памяти, и до 11 запросов прерываний от УВВ. Еще четыре запроса прерываний зарезервированы за устройствами, входящими в состав стандартной конфигурации ЭВМ, и на магистраль не выведены.

Современные системы включаю два типа шин:

Системная шина, соединяющая процессор с ОЗУ и Кэш-памятью 2-го уровня;

22

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

Рис. 4. Системные и интерфейсы ввода-вывода

Системная шина при архитектуре DIB (Dual independent bus) физически разделена на две:

Первичная шина (FSB, Frontside bus), связывающая процессор с ОЗУ и ОЗУ c периферийными устройствами;

Вторичная шина (BSB, Backside bus) для связи с кэш памятью.

Использование двойной независимой шины повышает производительность за счет возможности для процессора параллельно обращаться к различным уровням памяти. Обычно термины FSB и системная шина используются как синонимы.

Интерфейсная система микропроцессора – реализует сопряжение и связь с другими устройствами ПК.

Генератор тактовых импульсов генерирует последовательность электрических импульсов; частота генерируемых импульсов определяет так же и тактовую частоту машины.

Системная шина – основная интерфейсная система компьютера, обеспечивающая сопряжение и связь всех его устройств между собой. Системная шина включает в себя:

кодовую шину данных (КШД);

кодовую шину адреса (КША);

кодовую шину инструкций (КШИ);

шину питания.

Системная шина обеспечивает три направления передачи информации:

между микропроцессором и основной памятью;

между микропроцессором и портами ввода-вывода внешних устройств;

между основной памятью и портами ввода-вывода внешних устройств. Пропускная способность шины зависит от ее разрядности (есть шины 8-, 16-, 32-и

64-разрядные) и тактовой частоты, на которой шина работает. К системной шине в разных ПК могут подключаться:

шины расширений – шины общего назначения, позволяющие подключать большое число самых разнообразных устройств (наиболее часто встречаются шина ISA (Industry Standard Architecture – архитектура промышленного стандарта) и шина

EISA (Extended ISA);

локальные шины, специализирующиеся на обслуживании небольшого количества

23

устройств определенного класса.

Таблица 1.

 

Основные характеристики внутренних интерфейсов

 

 

 

 

 

Пиковая пропускная

 

 

Стандарт

Типичное

 

Примечания

 

применение

способность

 

 

 

 

ISA

Звуковые карты, модемы

2 Мбит/c

Практически

не

 

 

до 8,33 Мбит/c

используется с

1999

 

 

33 Мбит/c

г.

 

 

 

EISA

Сети, адаптеры SCSI

Практически

не

 

 

 

используется,

 

 

 

133 Мбит/c (32-

замещается PCI

 

PCI

Графические карты,

Стандарт

 

для

 

адаптеры SCSI, звуковые

битовая шина с

периферийных

 

 

карты новых поколений

частотой 33 МГц)

устройств

 

 

PCI-X

-//-

1 Гбит/с (62-

Расширение

PSI,

 

 

битовая шина с

предложенное

IBM,

 

 

частотой 133 МГц)

HP,

 

Compaq.

 

 

 

Увеличена

скорость

 

 

 

и

количество

 

 

До 16 Гбит/с

устройств.

 

 

PCI Express

-//-

Разработка

 

 

 

 

 

интерфейса

3-го

 

 

 

поколения,

может

 

 

 

заменить

 

AGP.

 

 

 

Последовательная

 

 

528 Мбит/c, 2x-

шина.

 

 

AGP

Графические карты

Стандарт

для

Intel-

 

 

графика (2x-

PC начиная с Pentium

 

 

графические карты)

II,

сосуществует

 

 

800 Мбит/c (4x-

вместе с PCI

 

AGP PRO

3D-графика

Поддерживает

 

 

 

графика)

видеокарты,

 

 

 

 

потребляющие

 

 

 

 

мощность до 100 Вт

 

 

 

(AGP до 25 Вт)

 

Существуют следующие стандарты универсальных локальных шин: VLB и PCI. Шина VLB (VESA Local Bus – локальная шина VESA) разработана в 1992 г. Ассоциацией стандартов видеооборудования (VESA – Video Electronics Standards Association), поэтому часто ее называют также шиной VESA. Шина PCI (Peripheral Component Interconnect –

соединение внешних устройств) разработана в 1993 г. фирмой Intel. Шина PCI является намного более универсальной, чем VLB, имеет свой адаптер, позволяющий ей настраиваться на работу с любым МП. Локальные шины IDE (Integrated Device Electronics), EIDE (Enhanced IDE), SCSI (Small Computer System Interface) используются чаще всего в качестве интерфейса только для внешних запоминающих устройств. Локальная шина AGP, появившаяся в ПК последних моделей, служит для подключения видеоадаптеров.

Как правило, современный персональный компьютер на базе x86-совместимого микропроцессора устроен следующим образом: микропроцессор через FSB подключается к системному контроллеру (обычно системный контроллер персонального компьютера

24

называют «северным мостом», англ. North Bridge). Системный контроллер имеет в своем составе контроллер ОЗУ(в некоторых современных персональных компьютерах контроллер ОЗУ встроен в микропроцессор), а также контроллеры шин, к которым подключаются периферийные устройства. Получил распространение подход, при котором, к северному мосту подключаются наиболее производительные периферийные устройства, например, видеокарты с шиной PCI Express 16x, а менее производительные устройства (микросхема BIOS'а, устройства с шиной PCI) подключаются к т. н. «южному мосту» (англ. South Bridge), который соединяется с северным мостом специальной шиной. Набор из «южного» и «северного» мостов часто называют чипсетом (англ. chipset).

Таким образом, FSB работают в качестве магистрального канала между процессором и чипсетом.

Некоторые компьютеры имеют внешнюю кэш-память, подключенную через «заднюю» шину (англ. back side bus), которая быстрее, чем FSB, но работает только со специфичными устройствами.

Каждая из вторичных шин работает на своей частоте (которая может быть как выше, так и ниже частоты FSB). Иногда частота вторичной шины является производной от частоты FSB, иногда задаётся независимо.

Параметры FSB

 

 

 

Теоретическая

Процессор

частота FSB, МГц

Тип FSB

пропускная

 

 

 

cпособность, МБ/с

Pentium II

66 / 100

GTL+

533

/ 800

Pentium III

100 / 133

AGTL+

800 / 1066

Pentium 4

100 / 133 / 200

QPB

3200 / 4266 / 6400

Pentium M

100 / 133

QPB

3200

/ 4266

Pentium D

133 / 200

QPB

4266

/ 6400

Pentium 4 EE

200 / 266

QPB

6400

/ 8533

Intel Core

133 / 166

QPB

4266

/ 5333

Intel Core 2

200 / 266

QPB

6400

/ 8533

Xeon — ядро P6

100 / 133

GTL+

800 / 1066

Xeon — ядро

100 / 133 / 166 / 200 /

QPB

3200 / 4266 / 5333 / 6400 /

Netburst

266

8533

 

Athlon

100 / 133

EV6

1600

/ 2133

Athlon XP

133 / 166 / 200

EV6

2133 / 2666 / 3200

Athlon

600 / 800 / 1000

HyperTransp

4800 / 6400 / 8000

64/FX/Opteron

ort

 

 

 

PowerPC 970

900 / 1000 / 1250

7200 / 8000 / 10000

Замечания:

 

 

 

 

Все типы системных шин (FSB) 64 разрядные.

процессоры Pentium 4, Pentium M, Pentium D, Pentium EE, Xeon, Intel Core и Intel Core 2 используют системную шину QPB (Quad Pumped Bus), передающую данные 4 раза за цикл.

процессоры Athlon и Athlon XP используют FSB, передающую данные два раза за цикл

(англ. Double data rate)

Интерфейсы периферийных устройств

IDE (Interface Device Electronics) – интерфейс устройств со встроенным контроллером. При создании этого интерфейса разработчики ориентировались на

25

подключение дискового накопителя. За счет минимального удаления контроллера от диска существенно повышается быстродействие. Раньше (на начальном этапе развития ПЭВМ) большая часть “интеллекта” для управления передачей данных между компьютером и дисковым накопителем была сосредоточена на плате контроллера и компьютера. При замене дисков, часто возникали проблемы совместимости контроллера с новым жестким диском. Контроллеры IDE существенно изменили ситуацию, так как в этом стандарте значительно большую роль стал играть контроллер на плате дисковода, поэтому фактический интерфейс между накопителем и компьютером стал относительно простым.

Интерфейс имеет скорость передачи порядка 1,5-3 Мбайт/с. Наиболее распространненой модификацией IDE является ATA (AT Attacment) IDE – 40-проводной интерфейс. IDE-адаптер часто встраивается в системную плату.

ATAPI , ATA-2 – расширение позволяющее подключать до четырех устройств, включая CD-ROM и стример.

EIDE (Enchanced IDE) – расширенный адаптер для шин PCI и VLB, позволяющий подключать до четырех устройств, с максимальной скоростью 11,1 Мбайт/c, обьем диска до 8 Гбайт.

 

Характеристики IDE/ATA интерфейсов

Таблица 2.

 

 

 

 

 

 

 

Спецификация

ATA

ATA-3

ATA-5

ATA-6

Максимальная

4

16

66

100

пропускная

способность, Mбайт/c

 

 

 

 

Количество

2

2

2

2

соединений

 

 

на 1 кабель

на 1 кабель

Характеристики

40 контактов

40 контактов

40 контактов

40 контактов

кабеля

 

 

80-жильный

80-жильный

Дата выпуска, г

1981

1996

1999

2000

SCSI (Small Computer System Interface), произносится как “скази” – интерфейс системного уровня, стандартизированный ANSI, в отличии от интерфейсных портово (COM, LPT, IR, MIDI) представляет собой шину: сигнальные выводы множества устройств-абонентов соединяются друг с другом.

Интерфейс позволяет подключать до семи устройств с контроллерами: дисковые накопители, CD-ROM и т.д. Любое устройство может инициировать обмен с другим целевым устройством. Режим обмена может быть синхронным или асинхронным.

Основное назначение SCSI-шины, заключается в обеспечении аппаратной независимости подключаемых к компьютеру устройств определенного класса (по cспецификации 1985 г.). В отличие от жестких шин расширения SCSI-шина реализуется в виде отдельного кабельного шлейфа, который допускает соединение до 8 устройств (SCSI-1) внутреннего и внешнего исполнения. Одно из них – хост-адаптер (host adepter) связывает шину с системной шиной компьютера, семь других свободны для периферии.

Кшине могут подключаться:

дисковые внутренние и внешние накопители (CD-ROM, винчестеры, сменные винчестеры, магнитооптические диски и т .д.);

стримеры;

сканеры;

фото-, видеокамеры;

другое оборудование.

26

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

адаптеры.

Адаптер – это устройство, которое обеспечивает связь между центральной частью ПВЭМ и конкретным внешним устройством.

Конструктивно они оформляются в виде печатных плат, которые с одной стороны имеют стандартный разъём для сопряжения с системной шиной, а с другой специфический разъём для связи соответствующим устройством. Следует отметить, что по мере совершенствования элементной базы ПЭВМ складываются предпосылки уменьшения потребности в адаптерах, так как часть их обязанностей берут на себя электронные схемы управления самих устройств и некоторые микросхемы на системной плате.

Лекция 2. Центральный процессор

2.1.Оперативная память и процессор

Рассмотрим вопросы, как выполняются прикладные программы пользователя и в каком месте происходит их выполнение. Для этого необходимо подробно ознакомится с взаимодействием оперативной памяти и центрально процессора.

Рис. 2.1. Взаимодействие оперативной памяти и процессора.

Программы загружаются в оперативную память с ж/д, загрузку осуществляет операционная система. Загрузка операционной системы осуществляется в ответ на выбор пользователя. Далее операционная система производит настройку программы для выполнения. Операционная система сообщает начальный адрес ячейки, где хранится программа в оперативной памяти, после этого ОС инициирует (вызывает) процесс выполнения программы. Центральный процессор последовательно выполняет данные команды программы, начиная с указанной. Выполнив текущую команду, процессор переходит к следующей, и так дальше до конца программы. Завершив программу, процессор не будет знать, что ему дальше делать, поэтому любая программа должна завершаться командами, передающими управление операционной системе компьютера. Таким образом, выполнив все команд программы, процессор передает управление операционной системе.

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

27

Рис. 2.2. Байт, слово и двойное слово.

Некоторые данные (например, коды символов) требуют для своего хранения 1 байт; для других данных этого места на хватает, и под них в памяти выделяется 2, 4, 8 или еще большее число байтов. Обычно пары байтов называют словами, а четверки - двойными словами (рис. 2.2), хотя иногда термином "слово" обозначают любую порцию машинной информации.

При обсуждении содержимого многобайтового данного приходится ссылаться на составляющие его байты; эти байты условно нумеруются от нуля и располагаются (при их изображении на бумаге) в порядке возрастания номера справа налево, так что слева оказываются байты с большими номерами, а справа - байты с меньшими номерами. Крайний слева байт принято называть старшим, а крайний справа - младшим. Такой порядок расположения байтов связан с привычной для нас формой записи чисел: в многоразрядном числе слева указываются старшие разряды, а справа - младшие. Следующее число, если его написать за предыдущим, опять начнется со старшего разряда и закончится младшим. Однако в памяти компьютера данные располагаются в более естественном порядке непрерывного возрастания номеров байтов и, таким образом, каждое слово или двойное слово в памяти начинается с его младшего байта и заканчивается старшим (рис. 2.3).

Рис. 2.3. Нумерация байтов в многобайтовых данных.

Строго говоря, в памяти компьютера можно хранить только целые двоичные числа, так как память состоит из двоичных запоминающих элементов. Для записи иных данных, например, символов или дробных чисел, для них предусматриваются правила кодирования, т.е. представления в виде последовательности битов той или длины. Так, действительное число одинарной точности занимает в памяти двойное слово (32 бит), в котором 23 бит, отводятся под мантиссу, 8 бит под порядок и еще один бит под знак числа. Программы, работающие с такого рода данными, должны, естественно, знать правила их записи и руководствоваться ими при обработке и представлении этих данных.

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

28

ячеек памяти или регистров процессора используют иногда восьмеричную, а чаще - шестнадцатеричную системы счисления. Для процессоров Intel используется шестнадцатеричная система.

Каждый разряд шестнадцатеричного числа может принимать 16 значений, из которых первые 10 обозначаются обычными десятичными цифрами, а последние 6 - буквами латинского алфавита от А до F, где А обозначает 10, В - И, С - 12, D - 13, Е - 14, a F - 15. В языке ассемблера шестнадцатеричные числа, чтобы отличать их от десятичных, завершаются буквой h (или Н). Таким образом, 100 - это десятичное число, a l00h - шестнадцатеричное (равное 256). Поскольку одна шестнадцатеричная цифра требует для записи ее в память компьютера четырех двоичных разрядов, то содержимое байта описывается двумя шестнадцатеричными цифрами (от 00h до FFh, или от 0 до 255) , а содержимое слова - четырьмя (от 0000h до FFFFh, или от 0 до 65535).

Помимо ячеек оперативной памяти, для хранения данных используются еще запоминающие ячейки, расположенные в процессоре и называемые регистрами. Достоинство регистров заключается в их высоком быстродействии, гораздо большем, чем у оперативной памяти, а недостаток в том, что их очень мало - всего около десятка. Поэтому регистры используются лишь для кратковременного хранения данных. В режиме МП 86, который мы здесь обсуждаем, все регистры процессора имеют длину 16 разрядов, или 1 слово (в действительности в современных процессорах их длина составляет 32 разряда, но в МП 86 от каждого регистра используется лишь его половина). За каждым регистром закреплено определенное имя (например, АХ или DS), по которому к нему можно обращаться в программе. Состав и правила использования регистров процессора будут подробно описаны ниже, здесь же мы коснемся только назначения сегментных регистров, с помощью которых осуществляется обращение процессора к ячейкам оперативной памяти.

Казалось бы, для передачи процессору адреса какого-либо байта оперативной памяти, достаточно записать в один из регистров процессора его номер. В действительности поступить таким образом в 16-разрядном процессоре нельзя, так как максимальное число (данное или адрес), которое можно записать в 16-разрядный регистр, составляет всего 216 - 1 = 65535, или 64К-1, и мы получим возможность обращения лишь к первым 64 Кбайт памяти. Для того, чтобы с помощью 16-разрядных чисел адресовать любой байт памяти, в МП 86 предусмотрена сегментная адресация памяти, реализуемая с помощью сегментных регистров процессора.

2.2. Cегментная адресация

Суть сегментной адресации заключается в следующем. Обращение к памяти осуществляется исключительно с помощью сегментов - логических образований, накладываемых на те или иные участки физической памяти. Исполнительный адрес любой ячейки памяти вычисляется процессором путем сложения начального адреса сегмента, в котором располагается эта ячейка, со смещением к ней (в байтах) от начала сегмента (рис. 2.4). Это смещение иногда называют относительным адресом.

29

Рис. 2.4. Образование физического адреса из сегментного адреса и смещения.

Начальный адрес сегмента без четырех младших битов, т.е. деленный на 16, помещается в один из сегментных регистров и называется сегментным адресом. Сам же начальный адрес хранится в специальном внутреннем регистре процессора, называемом теневым регистром. Для каждого сегментного регистра имеется свой теневой регистр; начальный адрес сегмента загружается в него процессором в тот момент, когда программа заносит в соответствующий сегментный регистр новое значение сегментного адреса.

Процедура умножения сегментного адреса на 16 (или, что то же самое, на 10h) является принципиальной особенностью реального режима, ограничивающей диапазон адресов, доступных в реальном режиме, величиной 1 Мбайт. Действительно, максимальное значение сегментного адреса составляет FFFFh, или 64К-1, из чего следует, что максимальное значение начального адреса сегмента в памяти равно FFFF0h, или 1 Мбайт - 16. Если, однако, учесть, что к начальному адресу сегмента можно добавить любое смещение в диапазоне от 0 до FFFFh, то адрес последнего адресуемого байта окажется равен 10FFEFh, что соответствует величине 1 Мбайт + 64 Кбайт - 17.

Диапазон адресов, формируемых процессором, называют адресным пространством процессора; как мы видим, в реальном режиме он немного превышает 1 Мбайт. Заметим еще, что для описания адреса в пределах 1 Мбайт требуются 20 двоичных разрядов, или 5 шестнадцатеричных. Процессор 8086 имел как раз 20 адресных линий и не мог, следовательно, выйти за пределы 1 Мбайт; современным 32-разрядным процессорам, если они работают в реальном режиме, доступно несколько большее (почти на 64 Кбайт) адресное пространство. Если же процессор работает в защищенном режиме (с

использованием 32-разрядных регистров), то его адресное пространство увеличивается до 232 байт = 4 Гбайт.

2.3. Регистры процессора

Помимо ячеек памяти для хранения данных (кратковременного) можно использовать регистры – ячейки, расположенные в центральном процессоре и доступные из машинных программ.

Все регистры имеют размер слова (16 разрядов), за каждым из них закреплено определенной имя (AX, SP и т.т.). Процессор содержит четырнадцать 16-разрядных программно-адресуемых регистров, которые принято объединять в следующие группы:

регистры общего назначения (AX, BX, CX, DX, SI, DI, BP, SP);

сегментные регистры (CS, DS, SS, ES);

указатель команд (IP);

регистр флагов (Flags).

Вгруппу регистров данных включаются четыре регистра АХ, ВХ, СХ и DX. Программист может использовать их по своему усмотрению для временного хранения любых объектов (данных или адресов) и выполнения над ними требуемых операций. При этом регистры допускают независимое обращение к старшим (АН, ВН, СН и DH) и младшим (AL, BL, CL и DL) половинам. Так, команда

mov BL, АН

пересылает старший байт регистра АХ в младший байт регистра ВХ, не затрагивая при этом вторых байтов этих регистров. Заметьте, что сначала указывается операнд-приемник,

апосле запятой - .операнд-источник, т.е. команда как бы выполняется справа налево.

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]