utp - capítulo 8 organizacion de registros

32
Capítulo 8

Upload: michel-anderson

Post on 15-Jun-2015

2.598 views

Category:

Documents


1 download

DESCRIPTION

oranizacion de computadoras tema8

TRANSCRIPT

Page 1: UTP - Capítulo 8 Organizacion de registros

Capítulo 8

Page 2: UTP - Capítulo 8 Organizacion de registros

Organización de registrosRegistros visibles al usuario: son utilizados

por el programador. Registros de control y estado: son utilizados

por la UC para controlar la operación de la CPU (no son visibles por el programador).

Page 3: UTP - Capítulo 8 Organizacion de registros

Registros visibles al usuarioPropósito general Datos Dirección Códigos de condición

Page 4: UTP - Capítulo 8 Organizacion de registros

Registros visibles al usuario Pueden ser asignados a una variedad de

funciones: cualquier registro de propósito general puede

contener el operando para cualquier código de operación (verdadero propósito)

pueden existir restricciones (ej. Registros dedicados a operaciones especifcas)

Page 5: UTP - Capítulo 8 Organizacion de registros

Discusión¿Todos los registros de propósito general ó

especializar su uso? Todos de propósito general: afecta al tamaño

de las instrucciones. Especializados: puede estar implícito en el

código de operación a qué registro se refiere (ej. Acumulador). Se ahorran bits. Limitan la flexibilidad del programador.

No hay una receta.

Page 6: UTP - Capítulo 8 Organizacion de registros

Número de registrosAfecta al tamaño de la instrucción. Mayor Nº de registros, más bits para

especificarlos en la instrucción. Pocos registros: más referencias a memoria No óptimo: entre 8 y 32 reg. Más, no hay

gran mejora (aumenta tamaño de la instrucción).

Page 7: UTP - Capítulo 8 Organizacion de registros

Longitud de los registrosDe direcciones: deben ser capaces de

almacenar la dirección más grande. De datos: deben estar habilitados para

almacenar la mayoría de los tipos de datos. Algunas máquinas permiten 2 registros

contiguos utilizados como un solo registro para almacenar valores de doble longitud.

Page 8: UTP - Capítulo 8 Organizacion de registros

Bits de condición (banderas)Bits establecidos por la CPU como resultado

de operaciones. Pueden ser utilizados por las instruccionesde

bifurcación condicional. Generalmente no son alterados por el

programador

Page 9: UTP - Capítulo 8 Organizacion de registros

Registros de control y estadoEmpleados para controlar la operación de la

CPU. En la mayoría de las máquinas no sonvisibles al usuario.

Los 4 esenciales para la ejecución deContador de programa (PC)Registro de instrucción (IR)Registro de dirección de memoria (MAR)Registro buffer de memoria (MBR)

Page 10: UTP - Capítulo 8 Organizacion de registros

Reg. de control y estado Los 4 reg recién mencionados se emplean

para el movimiento de datos entre la cpu y memoria.

Dentro de la CPU los datos se deben presentar a la ALU para procesamiento, ésta puede acceder al MBR y a los reg visibles por el usuario. Puede haber también reg temporales adicionales paraintercambiar datos con el MBR y demás reg visibles.

Page 11: UTP - Capítulo 8 Organizacion de registros

Organización de registrosCPU PII Intel (principales)De uso general

Page 12: UTP - Capítulo 8 Organizacion de registros

Organización de registrosCPU PII Intel (principales)segmentos

Page 13: UTP - Capítulo 8 Organizacion de registros

Organización de registrosCPU PII Intel (principales)PC y banderas

Page 14: UTP - Capítulo 8 Organizacion de registros

Organización de registrosCPU PII Intel (principales)AX: acumulador, es el principal en las

operaciones aritméticasBX : puntero base (dir de memoria)CX : contador, interviene en instrucciones de

cicloDX: datos, participa en multiplicación y

división

Page 15: UTP - Capítulo 8 Organizacion de registros

Organización de registrosCPU PII Intel (principales)SI y DI : apuntadores que utilizan las

instrucciones que recorren arreglos o tablasBP y SP : también son apuntadores a

memoria, pero a una zona especial: pila ó stack

Page 16: UTP - Capítulo 8 Organizacion de registros

CPU MOTOROLA 68000

Page 17: UTP - Capítulo 8 Organizacion de registros

CPU MOTOROLA 68000De direcciones

Page 18: UTP - Capítulo 8 Organizacion de registros

Organización de registrosCPU MOTOROLA 68000registros de 32 bits de datos

9 registros de direcciones2 stacks: uno para usuario y otro para S.O.

Page 19: UTP - Capítulo 8 Organizacion de registros

Instrucciones - IntelTienen la forma :instrucción destino,fuente destino y fuente son 2 operandos, donde c/u

de ellos está especificado por alguno de los mdd vistos, el otro operando es un registro de la CPU

Page 20: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel Llamando :

memoria= especificación de una dirección de memoria

reg = registro de la CPUinm = dato inmediato

Page 21: UTP - Capítulo 8 Organizacion de registros

Instrucciones - IntelInstrucción mem, reg

Instrucción reg , memInstrucción reg , regInstrucción reg , inmInstrucción mem, inm

Page 22: UTP - Capítulo 8 Organizacion de registros

Instrucciones - IntelEl nombre destino y fuente proviene del

hecho que si hay un movimiento de datos, es desde la derecha (fuente) hacia la izquierda (destino).

En una suma hay 2 operandos y el resultado se almacena en el lugar del operando izquierdo (destino).

Page 23: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento por registro

Ejemplos:ADD AX,BX AX=AX+BXADD AL,AH AL=AL+AHMOV AL,CH AL=CHSUB AX,BX AX=AX - BX

Page 24: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento Inmediato

Ejemplos:ADD AX,35AFh AX=AX+35AFhADD AL,15 AL=AL+15MOV AL,3Eh AL=3EhSUB AX,1234h AX=AX - 1234h

Page 25: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento DirectoEjemplos:

ADD AX, [35AFh]AX = AX + contenido direcc. 35AFh y 35B0hADD AL, DATOAL = AL + contenido variable DATO (8 bits)MOV CH, NUM1CH = contenido variable NUM1 (8 bits)

Page 26: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento Indirecto por registroEjemplos:

ADD AX, [BX]AX = AX + dato almacenado en dirección contenida en BX y la que sigue

MOV [BX], ALdato en la dirección contenida en BX = AL

Page 27: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento base + índice

CX, [BX+SI]CX = dato almacenado en la direcc. BX+SI y la

siguienteMOV [BX+DI], ALdato almacenado en la direcc. BX+DI = AL

Page 28: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento Relativo por registro

MOV AL, [BX+2]AL=dato almacenado en dir BX+2MOV [BX+2Ah], AXdato almacenado en dir BX+2Ah y la que sigue =

AX (16 bits)

Page 29: UTP - Capítulo 8 Organizacion de registros

Instrucciones - Intel 8086Direccionamiento relativo base+índiceEjemplos:

MOV AL, [BX+SI+2]AL = dato almacenado en la dir BX+SI+2MOV [BX+DI+2Ah], AXdato almacenado en la dir BX+DI+2Ah y laque sigue = AX (16 bits)

Page 30: UTP - Capítulo 8 Organizacion de registros

Formatos de instrucción-Criterios de diseño¿Instrucciones cortas ó largas? No de bits/seg ancho de banda de la memoria Velocidad procesador/Velocidad memoria Instrucciones más cortas el procesador “parece” más rápido.

Page 31: UTP - Capítulo 8 Organizacion de registros

Formatos de instrucción-Criterios de diseñoSuficientes bits para para expresar todas lasoperaciones deseadas. La experiencia demuestra dejar bits libres

para el futuro. Cantidad de bits de datos.

Page 32: UTP - Capítulo 8 Organizacion de registros