Clase03sistemaop
Páginas: 5 (1244 palabras)
Publicado: 5 de octubre de 2015
Clase #3
Facultad de Ingeniería
Universidad de la República
Instituto de Computación
Curso 2010
Veremos
Registros
Repertorio de instrucciones
Modos de direccionamiento
El stack
Formatos de datos
Control de la CPU
1
Estructura de la CPU
Recordemos, la CPU debe:
Cargar instrucciones de memoria (Fetch)
Interpretar instrucciones
Procesar y transferir datos
Senecesita almacenamiento temporal,
los registros
La CPU y el bus del sistema
2
Estructura interna de la CPU
Registros
La cantidad, tamaño y función de los
registros varía según el diseño del
procesador
Es una de las decisiones más importantes
del diseño
Los registros constituyen el nivel superior
de la jerarquía de memoria (próximas
clases…)
3
Tipos de Registros
Visibles al programadorPropósito general
• Cuanto más generales, mayor flexibilidad para el usuario
• Frecuentemente existen restricciones. Ej., la suma se aplica
siempre sobre el registro AC.
Datos
• operandos de ALU
Direcciones
• segmento, puntero de stack, etc.
Códigos de condición
• Se acceden implícitamente mediante instrucciones de salto
condicional
• En general forman parte de la palabra de estado
Control y estado(PC, IR, MBR y MAR)
Algunos son visibles al programador y otros no
Ej. PC, IR, MBR, MAR, palabra de estado
Palabra de Estado (Program
Status Word)
Conjunto de bits de significado
individual
Códigos de Condición
Ej. el resultado de la última
operación fue cero (Z)
Lectura implícita por parte del
programador
Ej. Jump if zero
Usualmente NO se pueden
setear explícitamente
Otros bits
Interruptenable/disable
Supervisor/usuario
OITSZAPC
Overflow Flag
Interrupt Flag
Trap Flag
Sign Flag
Zero Flag
Auxiliary Flag
Parity Flag
Carry Flag
4
Ejemplos de Organización de
Registros
Repertorio de instrucciones
(1/2)
Es el conjunto de instrucciones distintas que
puede ejecutar la CPU
Elementos de una instrucción:
Código de operación
Referencia a operandos origen
Referencia a operandos destinoReferencia a la siguiente instrucción
Operandos
Registros
Memoria
Entrada/Salida
5
Repertorio de instrucciones
(2/2)
Formato
Tipos
Procesamiento
Almacenamiento
Transferencia de datos
Control
Modos de direccionamiento
(1/8)
Tipos
Inmediato
Directo
Indirecto
Registro
Indirecto con registro
Con desplazamiento
Pila
6
Modos de direccionamiento
(2/8)
Inmediato
El operando es parte de lainstrucción
Ejemplo add 5 (AC <- AC + 5)
Instruction
Opcode
Operand
Modos de direccionamiento
(3/8)
Directo
El campo de dirección contiene la dirección
de memoria
Ejemplo: add A (AC<-AC+memoria(A))
7
Modos de direccionamiento
(4/8)
Indirecto
La dirección de memoria del campo
dirección contiene la dirección de
memoria del operando
Ejemplo: add (a)
(AC<-AC+memoria(memoria(A)))
Modos dedireccionamiento
(5/8)
Registro
El operando está contenido en el registro
indicado en dirección
Ejemplo: inc R (R<-R+1)
8
Modos de direccionamiento
(6/8)
Indirecto con registro
El operando está en la dirección contenida en el
registro indicado en dirección
Ejemplo: load (AC) (AC<-memoria(AC))
Modos de direccionamiento
(7/8)
Con Desplazamiento
Referencia a registro puede ser implícita o explícitaUsos
• Relativo (jmp etiqueta, PC <- PC + etiqueta)
• Con registro base (load (R+5), (AC<-memoria(R+5))
• Indexado (mov R0, TABLA[R1])
9
Modos de direccionamiento
(8/8)
Pila
En este caso se trabaja con operandos
relativos al tope del stack
Ejemplo: add
•
•
•
•
pop(tmp1)
pop(tmp2)
tmp1<-- tmp1 + tmp2
push (tmp1)
Llamadas anidadas
10
Uso del Stack
(1/2)
Uso del Stack
(2/2)
11
Tiposde Datos: ejemplo
Orden de los Bytes:
Little-Endian y Big-Endian
Indican de qué forma se almacena en
memoria la secuencia de bytes que
Big
Dir Endian
representan un escalar multi-byte
Little endian indica que el byte menos
significativo de la secuencia de bytes
será almacenado en la dirección de
memoria menor
Little
Endian
0 byte n
byte 0
1 byte n-1
byte 1
2 byte n-2
byte 2
En la imagen...
Leer documento completo
Regístrate para leer el documento completo.