2.4. Tipos de operandos El tipo de un dato viene determinado por la

Anuncio
2.4. Tipos de operandos
(Última modificación el 04/03/08)
El tipo de un dato viene determinado por la operación
que se realice con él.
Categorías generales más importantes:
(1)
(2)
(3)
(4)
Número
Dirección
Campo de bits
Carácter
1
(1) Números
Son usuales tres tipos de datos numéricos:
(i) Enteros (MIPS)
- Con signo, representados en complemento a 2.
- Sin signo, en binario natural.
Tamaños: byte, media palabra (half-word), palabra (word).
(ii) Punto flotante (MIPS)
IEEE 754: simple precisión (32 bits) y doble precisión (64 bits).
(iii) Decimal (no en la MIPS)
En BCD (Decimal Codificado en Binario):
- Empaquetado: 2 dígitos decimales por byte.
Ejemplo: 01001001 = 49.
- Desempaquetado: 1 dígito/byte.
Ejemplo: 00000100 00001001 = 49.
2
(2) Direcciones (de memoria)
En algunos modos de direccionamiento (indirecto por registro, base +
desplazamiento) se utilizan registros para contener direcciones.
Son números naturales (en la MIPS tienen 32 bits).
(3) Caracteres
Códigos binarios para representar caracteres.
Hay varios estándares, uno de ellos es el ASCII, de 8 bits, que es el que
usaremos con el PCSPIM.
MIPS no tiene instrucciones específicas para tratamiento de caracteres.
(4) Campos de bits
Un objeto de n bits es considerado como n datos de 1 bit, sobre los que
se pueden aplicar operaciones lógicas.
3
Tipos de datos del VAX
• Enteros: 8 (B), 16 (W), 32 (L), 64 (Q) y 128 (O) bits.
• Punto flotante: 32 (F), 64 (D,G) y 128 (H) bits.
• BCD (P): 4 bits por dígito.
• Cadena numérica (T,S): 8 bits por dígito.
• Cadena de caracteres (C): 8 bits por carácter.
4
Formatos numéricos del Pentium II
5
Tipos de datos en la MIPS
(1)Número:
(i) Enteros:
- Entero con signo (complemento a 2) (32 bits): add rd,rs,rt
- Entero sin signo (32 bits): addu rd,rs,rt
(ii) Punto flotante IEEE:
- Simple precisión (16 bits): add.s fd,fs,ft
- Doble precisión (32 bits): add.d fd,fs,ft
(2) Dirección:
La instrucción lw rt,desp(rs) carga la palabra en la dirección
‘rs+desp’ en el registro rt.
El operando en el registro rs (base) es una dirección a la que se le suma
un desplazamiento (valor entero).
(3) Campo de bits (32 bits): and rd,rs,rt
6
Descargar