Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ассемблер.doc
Скачиваний:
26
Добавлен:
25.08.2019
Размер:
526.34 Кб
Скачать

3.1. Модель программирования 8088

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

Набор регистров 8088 состоит из нескольких групп. Все регистры 8088 показаны по группам на Фиг 3.1.

Регистры общего назначения

  ( 16 бит )  

Старший 8 бит

Младший 8 бит

AX

AH

AL

BX

BH

BL

CX

CH

CL

DX

DH

DL

Адресные регистры

SI

DI

BP

Регистры управления

SP

IP

FLAGS

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

CS

DS

ES

SS

Фиг. 3.1 Регистры 8088

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

3.2. Регистры общего назначения

В первую группувходят регистры, используемые в основном для вычислений. Все эти общие регистры имеют размер 16 бит, но программа может работать и со старшими или младшими 8-ю битами каждого регистра отдельно. Например. регистр AX состоит из 16 бит. Программа может обратиться к старшим 8 битам AX как к регистру AH, а младшие 8 бит образуют регистр AL. То же самое верно для регистров BX, CX и DX. Программа может рассмматривать группу регистров как четыре 16-битовых, восемь 8-битовых или некоторую комбинацию 8- и 16-битовых регистров.

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

Регистр AX соответствует сумматору более ранних процессоров. Хотя 8088 значительно более универсален, например, в части арифметических операций, чем ранние машинывроде процессора 8080, регистр AX имеет несколько специальных функций. Фирма Intel оптимизировала набор команд 8088, привлекая к выполнению некоторых операций регистр AX. Например, существуют непосредственные операции, в которых один из операндов подразумеваетсясамой командой. Непосредственные операции с регистрами AX и AL (16- и 8-битовый сумматоры соответственно) обычно требуют более короткой команды, чеманалогичные операции с привлечением других регистров общего назначения. А меньший размер команды позволяет получать более компактные и быстродействующие программы.

Регистр BX служит как регистром для вычислений, так и адресным регистром. При использовании в качестве 16-битового регистра он может служить для определения адреса операнда. Способы адресации для микропроцессора 8088 выделены в следующий пункт.

Набор команд 8088 использует регистр CX в качестве счетчика к некоторым иструкциям. Эти команды используют находящееся в CX значение как указатель числа итераций команды или фрагмента программы.

Регистр DX служит как расширение аккумулятора для многоразрядныхопераций умножения и деления. В этих 32-битовых операциях участвут одновременно регистры AX и DX.

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