180 likes | 398 Views
ТИПЫ СОПРОЦЕССОРОВ. С адресацией операндов в памяти Стековые Регистровые Комбинированные. Floating point сопроцессоры . FPU, FIS , 8087. Работа с вещественными числами. Представление вещественных чисел в компьютере Мантисса и показатель Формат представления мантиссы Нормализация
E N D
ТИПЫ СОПРОЦЕССОРОВ • С адресацией операндов в памяти • Стековые • Регистровые • Комбинированные
Floating point сопроцессоры FPU, FIS, 8087
Работа с вещественными числами • Представление вещественных чисел в компьютере • Мантисса и показатель • Формат представления мантиссы • Нормализация • Выполнение основных операций • Переполнение и антипереполнение
Типы сопроцессоров • Стековая обработка (FIS) • Регистровая обработка (FPU) • Представление команд для FIS и FPU
Архитектура сопроцессора Intel 80x87 Регистры • R0-R7 • Tags • CW • SW • Указатель команды • Указатель операнда
Регистры как стек • Формат регистров R0-R7 • Форматы внешнего представления ВЧ • Указатель ST • Адресация в стеке • Циклический список регистров
Значения тегов • 15-14,13-12,11-10….,1-0 • 00 Вещественное число • 10 Нечисло (NAN) • 01 Ноль • 11 Пусто
Слово управления • IC (1) 12 (для совм. – управл. бескон.) • RC (2) 10-11 00-блж 01-8 10 +8 11 к0 • PC (2) 8-9 00-один 10-дв 11-расш • PM (1) 5 точность • UM (1) 4 антипереполнение • OM (1) 3 переполнение • ZM (1) 2 деление на 0 • DM (1) 1 денормализация • IM (1) 0 недействительная команда
Слово состояния • B (1) 15 • C3 (1) 14 • ST (3) 11-13 • C2 (1) • C1 (1) • C0 (1) • ES (1)
Форматы команд • 11011xxx mod xxx r/m – с памятью • 11011xxx 11 xxx ST(I) – с регистром • 11011xxx 11 xxxxxx - без операндов FADD NAME FADD [BX] FADD NAME[BX][SI] Точность в ассемблере – типы DD,DQ,DT FADD ST(3) FABS
FLD FILD FBLD FST FIST FSTP FISTP FBSTP FXCH FLD1 FLDPI FLDLG2 FLDLN2 FLDL2T FLDL2E Команды передачи данных
FXXX FXXX memory FIXXX memory FXXX ST,ST(I) FXXX ST(I),ST FXXXP ST(I),ST ADD SUB MUL DIV SUBR DIVR Арифметические команды
Использование стека .DATA ; ВЫЧИСЛЕНИЕ ДИСКРИМИНАНТА A DD VALUE ; КОЭФФИЦИЕНТЫ B DD VALUE C DD VALUE FOUR DD 4.0 ; КОНСТАНТА .CODE FLD B FMUL ST, ST(0) FLD FOUR FMUL A FMUL C FSUB
Дополнительные арифметические • FSQRT • FSCALE • FPREM • FRNDINT • FXTRACT • FABS • FCHS
FCOM FICOM FCOMP FICOMP FCOMPP FTST FXAM Пример использования FCOM FSTSW AX ;запись из SW в AX SAHF ;и в регистрфлагов JE LABEL Команды сравнения
Трансцендентные • FPTAN • FPATAN • FYL2X • FYL2XP1 • F2XM1 • FSIN • FCOS • FSINCOS
F (N) STCW F LDCW F (N) STSW F (N) CLEX F (N) INIT F (N) STENV FLDENV F (N) SAVE FRSTOR FINCSTP FDECSTP FFREE FNOP FSETPM FWAIT Административные