Добавил:
kostikboritski@gmail.com Выполнение курсовых, РГР технических предметов Механического факультета. Так же чертежи по инженерной графике для МФ, УПП. Писать на почту. Дипломы по кафедре Вагоны Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

литература / Пухальский Проектирование микропроцессорных систем 2001

.pdf
Скачиваний:
333
Добавлен:
12.11.2017
Размер:
21.12 Mб
Скачать

4.7. Система команд арифметического сопроцессора 8087

483

Среда и полное состояние NDCP. Содержи-

 

 

 

Memory

мое регистров слова управления CW, слова состоя-

Offset

is___________________ о

 

ния SW, слова тэгов TW, указателя инструкции IP и

 

______Control Word_____

 

указателя данных DP называется средой NDCP (Еп-

+2

______ Status Word______

~

vironment — 7 слов; рис. 4.42).

 

 

----------- 7ag Worrf-----------

g

Среда NDCP и содержимое регистрового стека

+6

Instruction Pointer

называется полным

состоянием NDCP (47 слов;

+10

 

 

Data Pointer

 

^

рис. 4.43). Имеются команды сохранения в памяти и

 

 

загрузки из памяти среды и полного состояния:

 

-------- -----:— —— ---------------

FSTENV dst и FLDENV src — сохранение в памяти

+

raction

 

и загрузка из памяти среды, FSAVE dst и FRSTOR

 

Fraction 3 1 1 6

— g

src — сохранение в памяти и загрузка из памяти

 

Fraction 47 + 32

й

uT

полного состояния.

 

 

 

Fraction 63 - 48

 

Команда FSTENV dst используется в основном

 

—— - хР °~ п1 ^ 0-------------

в подпрограммах

обработки

незамаскированных

+

 

Fraction 1 5 - 0

особых случаев, так как предоставляет детальную

 

 

Fraction 31 - 16

информацию о причине, вызвавшей особый случай.

 

Fiaction 47 - 32

н

Команды FSAVE dst и FRSTOR src необходи-

 

 

Ггас,юп 63 - 48

_

мы в подпрограммах обработки запросов прерыва-

 

—— Exponent 1 4 - 0 -------------

ний от внешних устройств, в которых и с п о л ь з у

ю т с я __________________________

команды NDCP. Поскольку при вызове подпрограм-

+^4

__

Fraction 15-5-0

__

 

'мы происходит переключение на решение другой

 

_ Fraction 31 - 1 6

_ р

задачи, то текущее

состояние

следует сохранить

 

__

Fraction 47 - 3 2

__

н

в памяти, а при возврате из подпрограммы восстано-

 

__

Fraction 63 + 48

__

 

вить его. Для изучения арифметического сопроцес-

+92

S

Exponent 1 4 - 0 _________

сора 8087 дополнительно можно привлечь литерату­

 

 

 

 

 

 

ру [13, 20, 21].

 

 

Р ис- 4.43. Формат полного состояния

4.7. Система команд арифметического сопроцессора 8087

По назначению команды NDCP разделяются на 6 групп: команды передачи данных (Data Transfer), команды сравнения (Comparison), команды загрузки констант (Constants), арифмети­ ческие команды (Arithmetic), трансцендентные команды (Transcendental) и команды управления сопроцессором (Processor Control).

Ф орм аты команд NDCP 8087. Ниже приведены форматы всех команд NDCP. Если ко­ манда способна адресовать операнд в памяти (в команде есть поле г/т), то она может содер­ жать еще один или два байта смещения (dispS или disp 16). Режимы адресации данных в памяти такие же, что и в МП 8086, т. е. задаются полями mod и r/т в соответствии с табл. 4.9. Только для значения поля mod = 11 поле r/m = ST(/), т. е. адресуются не регистры МП, а регистры ре­ гистрового стека NDCP.

Время выполнения команд указано в числе тактов сигнала CLK. Если команда адресует операнд в памяти, то к указанному числу тактов следует добавить число тактов еа, затрачивае­ мое на вычисление эффективного адреса ЕА, которое зависит от используемого в команде ре­ жима адресации данных (см. § 4.2). Минимальная длина команд NDCP составляет два байта, и первый байт всех команд содержит код D7_3 = 1 1 0 1 1 = ESCAPE — признак команд NDCP.

31*