23
ESCUELA: PONENTE: BIMESTRE : Arquitectura de Computadores CICLO : CIENCIAS DE LA COMPUTACIÓN II BIMESTRE Ing. Greyson Alberca Prieto Octubre Febrero 2009

Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Embed Size (px)

DESCRIPTION

Repertorio de InstruccionesPonente: Ing. Greyson Alberca Prieto

Citation preview

Page 1: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

•ESCUELA:

•PONENTE:

•BIMESTRE:

Arquitectura de Computadores

•CICLO:

CIENCIAS DE LA COMPUTACIÓN

II BIMESTRE

Ing. Greyson Alberca Prieto

Octubre – Febrero 2009

Page 2: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Contenidos

1. Aritmética del Computador2. Repertorio de Instrucciones3. Unidad de Control4. Unidad Aritmético Lógica

Bibliografía ・Organización y Arquitectura de Computadores, William Stalling

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

22

Page 3: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Objetivos

Identificar los elementos esenciales Identificar los elementos esenciales de una instrucción del computadorde una instrucción del computador

Definir los códigos de operación y Definir los códigos de operación y su funcionamiento.su funcionamiento.

Conocer como ocurre la referencia Conocer como ocurre la referencia a operandos. a operandos.

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

33

Page 4: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Temas1. Características de las instrucciones máquina1. Características de las instrucciones máquina

1.1.1.1. Elementos de una instrucción Elementos de una instrucción máquinamáquina

1.2.1.2. Representación de la Representación de la instruccionesinstrucciones

1.3.1.3. Tipos de instruccionesTipos de instrucciones 1.4.1.4. Número de direccionesNúmero de direcciones 1.5.1.5. Diseño del repertorio de Diseño del repertorio de

instruccionesinstrucciones2.2. Tipos de operandosTipos de operandos

2.1.2.1. NúmerosNúmeros 2.2.2.2. CaracteresCaracteres 2.3.2.3. Datos LógicosDatos Lógicos 2.4.2.4. DivisiónDivisión

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

44

Page 5: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Temas

3.3. Tipo de operacionesTipo de operaciones 3.1.3.1. Transferencia de datosTransferencia de datos 3.2.3.2. AritméticasAritméticas 3.3.3.3. LógicasLógicas 3.4.3.4. conversiónconversión 3.5.3.5. Entrada/SalidaEntrada/Salida 3.6.3.6. Control del sistemaControl del sistema 3.7.3.7. Control de flujoControl de flujo

4.4. Lenguaje ensambladorLenguaje ensamblador

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

55

Page 6: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Introducción

El funcionamiento de la CPU esta determinado por las instrucciones que ejecuta(instrucciones máquina o instrucciones de computador). El conjunto de instrucciones se determina “repertorio de instrucciones”

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

66

Page 7: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Conjunto de instrucciones que son entendidos por CPU

Códigos máquina Binarias Generalmente representadas en

código ensamblador

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

77

Repertorio de InstruccionesRepertorio de Instrucciones

Page 8: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Características de las Características de las instrucciones máquinainstrucciones máquina

Elementos de una instrucción Elementos de una instrucción máquinamáquina

Código de operaciónCódigo de operación Referencia de datos fuenteReferencia de datos fuente Referencia al operando resultadoReferencia al operando resultado Referencia a la siguiente instrucciónReferencia a la siguiente instrucción

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

88

Page 9: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Representación de la Representación de la instruccionesinstrucciones

Cada instrucción dentro del computador se representa en una secuencia de bits

Para facilitar la representación se usan Para facilitar la representación se usan representaciones simbólicas, tenemos.representaciones simbólicas, tenemos.

ADD SumarADD Sumar SUB restarSUB restar MPY MultiplicarMPY Multiplicar DIV DividirDIV Dividir LOAD Cargar datos a memoriaLOAD Cargar datos a memoria

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

99

Page 10: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Tipos de instruccionesTipos de instrucciones

De procesamiento de datosDe procesamiento de datos De almacenamiento de datosDe almacenamiento de datos De transferencia de datosDe transferencia de datos De ControlDe Control

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1010

Page 11: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Número de direcciones El número de direcciones para una instrucción El número de direcciones para una instrucción

depende del diseño del CPUdepende del diseño del CPU Van desde una , dos, tres y hasta cuatro. En el Van desde una , dos, tres y hasta cuatro. En el

caso de cuatro los elementos son: dos caso de cuatro los elementos son: dos operadores, un resultado y la dirección de la operadores, un resultado y la dirección de la instrucción siguiente(en la mayoría de casos instrucción siguiente(en la mayoría de casos viene implícita).viene implícita).

La definición del número de direcciones varía La definición del número de direcciones varía mucho pues si el número de direcciones es de mucho pues si el número de direcciones es de uno, esto implica una CPU menos compleja, uno, esto implica una CPU menos compleja, instrucciones más cortas, lo mismo ocurre si son instrucciones más cortas, lo mismo ocurre si son de tres o cuatro va subiendo la complejidad.de tres o cuatro va subiendo la complejidad.

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1111

Page 12: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Diseño del repertorio de instrucciones

Aspectos de diseño fundamentales en el Aspectos de diseño fundamentales en el diseño de un repertorio de diseño de un repertorio de instrucciones:instrucciones: Repertorio de operacionesRepertorio de operaciones Tipos de datosTipos de datos Formato de instruccionesFormato de instrucciones Registros Registros DireccionamientoDireccionamiento

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1212

Page 13: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Tipos de operandosTipos de operandos

Como las instrucciones máquina operan Como las instrucciones máquina operan con datos con datos Las categorías más importantes de Las categorías más importantes de datos son:datos son: NúmerosNúmeros CaracteresCaracteres Datos LógicosDatos Lógicos DivisiónDivisión

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1313

Page 14: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Datos

Caracteres

Al igual que los números los caracteres se almacenan en los sistemas de cómputo en datos binarios. Una de la representaciones mas conocida es el ASCII

Datos Lógicos

A veces es útil considerar una unidad de n bits como n elementos o datos de 1 bit, donde cada elemento tiene un valor 1 o 0.

Números

Tenemos tres tipos de datos numéricos: Entero o coma fija La coma flotante En decimal

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1414

Page 15: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Tipos de Operaciones

Los códigos de operación varían de una Los códigos de operación varían de una máquina a otra, pero las operaciones máquina a otra, pero las operaciones son las mismas. Los tipos de son las mismas. Los tipos de operaciones son:operaciones son:

Transferencia de datosTransferencia de datos AritméticasAritméticas LógicasLógicas ConversiónConversión Entrada/SalidaEntrada/Salida Control del sistemaControl del sistema Control de flujoControl de flujo

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1515

Page 16: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Transferencia de datosTransferencia de datos

La instrucción de transferencia debe La instrucción de transferencia debe especificar varias cosas:especificar varias cosas: Posiciones de los operandos fuente y Posiciones de los operandos fuente y

destinodestino Longitud de los datos a transferirLongitud de los datos a transferir Modo de direccionamiento para cada Modo de direccionamiento para cada

operandooperando

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1616

Page 17: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

AritméticasAritméticas

Las operaciones aritméticas básicas Las operaciones aritméticas básicas son: suma , resta, multiplicación y son: suma , resta, multiplicación y división; pero hay operaciones que división; pero hay operaciones que requieren un solo operando:requieren un solo operando: AbsoluteAbsolute NegativeNegative IncrementIncrement DerementDerement

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1717

Page 18: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Lógicas

Se basan en operaciones boleanas. En este caso se aplican operando básicos En este caso se aplican operando básicos

como, AND, OR, XOR, EQUAL.como, AND, OR, XOR, EQUAL. Además se incluyen operaciones de Además se incluyen operaciones de

desplazamiento y rotación tales como.desplazamiento y rotación tales como. Desplazamiento lógico a la derechaDesplazamiento lógico a la derecha Desplazamiento lógico a la izquierdaDesplazamiento lógico a la izquierda Desplazamiento aritmético a la derechaDesplazamiento aritmético a la derecha Desplazamiento aritmético a la izquierdaDesplazamiento aritmético a la izquierda Rotación a la derechaRotación a la derecha Rotación a la izquierdaRotación a la izquierda

Capítulo VICapítulo VI Arquitectura de Arquitectura de

ComputadoresComputadores1818

Page 19: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

ConversiónConversiónInstrucciones de conversión son aquellas que Instrucciones de conversión son aquellas que cambian el formato u operan sobre el formato de cambian el formato u operan sobre el formato de los datos. Un ejemplo común es el de convertir un los datos. Un ejemplo común es el de convertir un decimal a binario.decimal a binario.

Entrada/SalidaEntrada/SalidaComo ya los revisamos antes teníamos varios Como ya los revisamos antes teníamos varios tipos de entradas salidas: entrada/salida tipos de entradas salidas: entrada/salida programada aisladas, entradas/salidas programada aisladas, entradas/salidas programadas asignadas en memoria, DMA y programadas asignadas en memoria, DMA y procesador de E/S. revisar capitulo de E/Sprocesador de E/S. revisar capitulo de E/S

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

1919

Page 20: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Control del sistemaControl del sistema

Llamadas instrucciones privilegiadas, que Llamadas instrucciones privilegiadas, que se ejecutan solo cuando el procesador se ejecutan solo cuando el procesador está en un estado privilegiado o está está en un estado privilegiado o está ejecutando un programa en una zona ejecutando un programa en una zona privilegiada. Por lo general las usan el privilegiada. Por lo general las usan el sistema operativo.sistema operativo.

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

2020

Page 21: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Control de flujoControl de flujo Algunas razones para el uso de funciones de control de Algunas razones para el uso de funciones de control de

flujo:flujo:

Para ejecutar instrucciones mas de una vezPara ejecutar instrucciones mas de una vez Para la toma de decisionesPara la toma de decisiones Ejecución de programas largosEjecución de programas largos

Operaciones de control de flujo:Operaciones de control de flujo:

Instrucciones de bifurcaciónInstrucciones de bifurcación Instrucciones de salto implícitoInstrucciones de salto implícito Instrucciones de llamada a procedimientoInstrucciones de llamada a procedimiento

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

2121

Page 22: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones

Lenguaje ensambladorLenguaje ensamblador

La CPU puede interpretar y ejecutar instrucciones máquina. Estos son números binarios almacenados en el computador. Para programar todas estas operaciones es necesario utilizar sentencias en lenguajes máquina.

Capítulo VICapítulo VI Arquitectura de Arquitectura de ComputadoresComputadores

2222

Page 23: Arquitectura de Computadores Cap VI:Repertorio de Instrucciones