Motorola 68881

Motorola 68881

El Motorola 68881 es un coprocesador matemático diseñado para funcionar además de la familia de microprocesadores Motorola m68k .

El Motorola 68882 es una versión mejorada del 68881, pero bastante compatible con el resto.

usar

El 68881 y el 68882 se han utilizado como coprocesador opcional en muchos modelos de Atari , Amiga y Macintosh .

Formatos numéricos

Motorola 68881

El Motorola 68881 conoce cuatro formatos de números:

Precisión ampliada, más de 12 bytes
95 signo
94-80 expositor
79-64 siempre cero
63-0 mantisa


Precisión doble (IEEE), más de 8 bytes
63 signo
62-52 expositor
51-0 mantisa


Precisión simple (IEEE), en 4 bytes
31 signo
30-23 expositor
22-0 mantisa


Empaquetado con precisión , más de 12 bytes
95 signo de mantisa
94 signo de exponente
93-92 00, o NAN o infinito si 11
91-80 los tres dígitos decimales menos significativos del exponente
79-76 el dígito decimal más significativo del exponente de mantisa
75-68 no tomado en cuenta
67-64 la figura más significativa de la mantisa
63-0 mantisa

Registros de datos y control

Sus 8 registros de datos (del FP0 al FP7) tienen 10 bytes (80 bits ) de ancho, aunque el tamaño de un real de precisión extendida puede abarcar 12 bytes.

También tiene 3 registros de control:

FPCR ( Floating Point Control Register ), 32 bits de los cuales solo se utilizan los primeros
3-0 ? cero
5-4 REDONDO método de redondeo
00: más cercano
01: cero
10: menos infinito
11: más infinito
7-6 ANTERIOR precisión de redondeo
00: extendido
01: simple
10: doble
11: reservado
8 INEX1 salida decimal incorrecta
9 INEX2 funcionamiento incorrecto
10 DZ división por cero
11 UNFL desbordamiento
12 OVFL Desbordamiento
13 FUNCIONAR error de operando
14 SNAN Señal de no número
15 BSUN Sucursal / Conjunto en UNorderd


FPSR ( Registro de estado de coma flotante ), 32 bits divididos en 4 bytes
7-0 mayor excepción
2-0 siempre cero
3 INEX! INEX2! OVFL
4 DZ
5 UNFL e INEX2
6 OVFL
7 BSUN! SNAN! OPERR
15-8 estado de excepciones
8 INEX1: salida decimal incorrecta
9 INEX2: transacción incorrecta
10 DZ: división por cero
11 UNFL: desbordamiento
12 OVFL: desbordamiento
13 OPERR: error de operando
14 SNAN: señal que no es un número
15 BSUN: Rama / Conjunto en UNorderd
23 signo de un cociente
22-17 cociente
24 NAN: no es un número
25 Yo: infinito
26 Z: cero
27 N: negativo
31-28 cero


FPIAR ( Registro de dirección de instrucción de punto flotante ) es el registro de dirección de la instrucción actual.

Potencia

68881

68882