Instrucciones: Lenguaje del Computador

Get Started. It's Free
or sign up with your email address
Rocket clouds
Instrucciones: Lenguaje del Computador by Mind Map: Instrucciones: Lenguaje del Computador

1. El lenguaje del Computador

1.1. Instrucciones

1.2. Juego de instrucciones

1.3. Hardware y compilador sencillos de construir

1.3.1. Maximizar el rendimiento

1.3.2. Minimizar el costo y la potencia

2. Operaciones Aritméticas

2.1. Von Nuemann

2.2. ALU (Unidad Aritmética Lógica)

2.2.1. Operaciones

2.2.1.1. Aritméticas

2.2.1.2. Lógicas

2.2.1.3. Desplazamiento

2.2.2. Simple sumador-restador

2.2.3. Descomposición en pasos elementales

2.2.4. Ejecuta rápidamente esos pasos

2.3. Circuitos que contienen ALUs

3. Sistemas Numéricos

3.1. Complemento a uno

3.2. Signo-magnitud

3.3. Sistemas decimales

3.4. Preferencia por el complemento a dos

4. Tipos de operadores

4.1. Circuito capaz de realizar:

4.1.1. Operaciones aritméticas de números enteros

4.1.1.1. suma

4.1.1.2. resta

4.1.1.3. multiplicación

4.1.1.4. división

4.1.2. Operaciones lógicas de bits

4.1.2.1. AND, NOT,OR, XOR, NOR

4.1.3. Operaciones de desplazamiento de bits

4.1.3.1. Desplazar o rotar

4.1.3.2. A izquierda o a derecha

4.1.3.3. Con o sin extensión de signo

5. Ámbito de aplicación del operador

5.1. General

5.1.1. Realiza diferentes operaciones

5.2. Especializado

5.2.1. Realiza una operación con cierta complejidad

5.2.2. Ejemplo: Coprocesador matemático

6. Realización del operador

6.1. Operador combinacional

6.1.1. Realiza una o varias operaciones

6.1.2. Sin memoria / Resultado se vuelca en un registro

6.1.3. Tiempo

6.2. Operador secuencial

6.2.1. Funciona por fases

6.2.2. Necesita memoria

6.2.3. Algoritmos de cálculo propio

7. Principios de Hardware

7.1. I. La simplicidad favorece la regularidad

7.2. II. Más pequeño es más rápido

7.3. III. Haz que el caso más común sea rápido

7.4. IV. Un buen diseño demanda buenos compromisos

8. Operaciones del Hardware del computador

8.1. MIPS emplea una notación rígida

8.1.1. Cada instrucción aritmética realiza una única operación

8.1.2. Siempre tiene 3 variables

9. Operandos y registros

9.1. Operandos de las instrucciones aritméticas son limitados

9.2. Número de variables limitadas

9.3. MIPS

9.3.1. Tiene 32 registros de 32 bits

9.3.2. A un grupo de 32 bits se denomina palabra

9.3.3. Representar un registro utiliza el símbolo $

9.3.4. Restricciones de alineamiento

9.3.4.1. Direcciones múltiplo de s = 4

9.3.4.2. B modulo s = 0

9.3.5. Operandos en memoria

9.3.6. Campos de una instrucción

9.3.6.1. op

9.3.6.1.1. Operación básica de la instrucción

9.3.6.2. rs

9.3.6.2.1. Registro del 1er operando

9.3.6.3. rt

9.3.6.3.1. Registro del 2do operando

9.3.6.4. rd

9.3.6.4.1. Registro del operando destino

9.3.6.5. shamt

9.3.6.5.1. Desplazamiento

9.3.6.6. funct

9.3.6.6.1. Seleccionar una operación

10. Diseño de un repertorio e instrucciones

10.1. CISC

10.1.1. Gran número de instrucciones complejas

10.2. RISC

10.2.1. Pocas instrucciones y muy básicas

10.2.2. Modos de direccionamiento

10.2.2.1. Inmediato

10.2.2.2. Indirecto con desplazamiento

10.3. Tipo de almacenamiento

10.3.1. Pila

10.3.1.1. Operandos implícitos

10.3.2. Acumulador

10.3.2.1. Uno de los operandos es implícito

10.3.3. Registros de propósito general (GPR)

10.3.3.1. Operandos se especifican de forma explícita

10.4. Tipo y tamaño de los operandos

10.5. Conjunto de operaciones soportadas

10.6. Instrucciones de control de flujo

10.6.1. Saltos condicionales

10.6.1.1. Comparaciones entre registros

10.6.2. Saltos incondicionales

10.6.3. Alternativas de salto

10.6.3.1. Direccionamiento relativo al PC

10.6.3.2. Direccionamiento indirecto con registro

11. Tipos de almacenamiento de los operandos GPR

11.1. Registro - Registro

11.1.1. 3 operandos en los registros

11.1.2. Codificaciónn sencilla

11.2. Registro - Memoria

11.2.1. Al menos 1 en los registros

11.3. Memoria - Memoria

11.3.1. 2 o 3 operandos en memoria

11.3.2. Complica la codificación

12. Modos de direccionamiento básicos

12.1. Inmediato

12.1.1. Operando dentro de la instrucción

12.2. Registro

12.2.1. ID Registro que almacena el operando

12.3. Directo

12.3.1. Dirección de memoria que almacena el operando

12.4. Indirecto

12.4.1. ID Registro ->Dirección de memoria/Operando

12.5. Indirecto con desplazamiento

12.5.1. Operando inmediato + Cont. Registro = Dir.Memoria

13. Interpretación de las direcciones de memoria

13.1. Little Endian

13.1.1. Byte menos significativo en la posición más significativa

13.2. Big Endian

13.2.1. Byte menos significativo en la posición menos significativa

13.3. Middle Endian

13.3.1. Trabaja con ambas ordenaciones

14. Representación de instrucciones del computador

14.1. Codificación del repertorio de instrucciones

14.1.1. Longitud variable

14.1.2. Longitud fija

14.1.3. Híbrida

14.2. Instrucciones tipo I(Inmmediate)

14.2.1. Load/Store

14.2.1.1. Registro fuente (RS)

14.2.1.1.1. Acceso a memoria

14.2.1.2. Registro destino(RT)

14.2.1.2.1. Registro datos

14.2.1.3. Inmediato

14.2.1.3.1. Desplazamiento dirección de memoria

14.2.2. Aritmético-lógicas

14.2.2.1. Registro fuente (RS)

14.2.2.1.1. Operando 1

14.2.2.2. Registro destino (RT)

14.2.2.2.1. Registro destino de la operación

14.2.2.3. Inmediato

14.2.2.3.1. Operando 2, directamente su valor

14.2.3. Saltos condicionales/incondicionales

14.2.3.1. Registro fuente (RS)

14.2.3.1.1. Registro condición/ dirección salto

14.2.3.2. Registro destino (RT)

14.2.3.2.1. Registro condición / No se utiliza

14.2.3.3. Inmediato

14.2.3.3.1. Desplazamiento PC / 0

14.3. Instrucciones tipo R(Register)

14.3.1. Aritmético-lógicas

14.3.1.1. Registro-Registro

14.3.1.1.1. Registro fuente (RS)

14.3.1.1.2. Registro destino (RT)

14.3.1.1.3. RD

14.3.1.1.4. sa (Shift Amount)

14.3.1.1.5. function

14.4. Instrucciones tipo J(Jump)

14.4.1. Salto incondicional y retorno de procedimiento

14.4.1.1. opCode

14.4.1.1.1. Código de la operación

14.4.1.2. Instr_index

14.4.1.2.1. offset relativo al PC