El lenguaje del Computador

Mapa mental de las 40 diapositivas

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

1. Introducción

1.1. Instrucciones

1.1.1. Son palabras que entiende el ordenador

1.2. Juego de Instrucciones

1.2.1. Vocabulario de comando entendido por una determinada arquitectura.

1.3. Principal objetivo de un diseñador de computadores

1.3.1. Encontrar un lenguaje cuyo hardware y compilador sea sencillos de construir.

1.3.2. Debe maximizar el rendimiento

1.3.3. Minimizar el coste y la potencia.

1.4. Objetivos

1.4.1. Definir el concepto de programa almacenado

1.4.2. Escribir programas en lenguaje de computador y ejecutarlos en simulador

1.4.3. Impacto de los lenguajes de programación y de la optimización del compilador en el rendimiento.

2. Operaciones de Hardware del computador(ALU)

2.1. Operaciones Aritméticas

2.1.1. Von Neumann

2.1.1.1. Una ALU es un requisito fundamental para una computadora

2.1.1.2. Garantiza que tendrá que ejecutar operaciones de matemáticas básicas

2.1.2. MIPS emplea una notación rígida

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

2.2. Circuitos que contienen ALUs

2.2.1. Microprocesadores

2.2.2. Unidades de procesamiento gráfico

2.2.3. Floating-Point Unit(FPU)

2.2.4. Procesadores digitales de señales

2.2.5. Lectores de CD

2.2.6. Televisión HD

2.3. Unidad aritmético-lógica

2.3.1. Opera sobre los datos de una instrucción

2.3.2. Desplazamiento, lógicas y aritméticas

2.3.3. Mayoría casos es un simple sumador-restador

2.4. Sistemas Numéricos

2.4.1. ALU debe procesar números

2.4.1.1. Que use el mismo formato que el resto del circuito digital

2.4.2. Primeras Computadoras usaron una gran variedad de sistemas de numeración

2.4.2.1. Complemento a uno

2.4.2.2. Signo-magnitud

2.4.2.3. Sistemas decimales

2.4.3. Diferentes diseños

2.4.3.1. Influye en la preferencia por el complemento a dos

2.4.3.1.1. Circuito electrónico de la ALU mas simple

2.5. Tipos de Operadores

2.5.1. Operaciones Aritméticas de números enteros

2.5.2. Operaciones lógicas de bits

2.5.3. Operaciones de desplazamiento de bits

2.6. Ámbito de aplicación del operador

2.6.1. General realiza diferentes operaciones

2.6.1.1. Computadores suelen tener solo

2.6.2. Especializado realiza una operación de cierta complejidad

2.6.2.1. Ejemplo: coprocesador matemático

2.7. Realización del operador

2.7.1. Operador combinacional

2.7.1.1. Una o varias operaciones

2.7.1.2. Sin memoria

2.7.1.3. Resultado se vuelca sobre un registro

2.7.2. Operador secuencial

2.7.2.1. Circuito digital secuencial

2.7.2.2. Funciona por fases

2.7.2.3. Necesita memoria

3. Operaciones de Hardware del computador

3.1. Sumador-Restador paralelo en Ca2

3.1.1. Sumar y restar seleccionando la operación mediante señal de control

3.2. Operación de multiplicación

3.2.1. Sumador-restador+algoritmo

3.2.1.1. Máquinas muy potentes tienen un operador específico

3.2.2. Algoritmos

3.2.2.1. Multiplicación binaria sin signo

3.2.2.1.1. Suma-desplazamiento

3.2.2.1.2. Sumas y restas

3.2.2.2. Multiplicación binaria con signo

3.2.2.2.1. Algoritmo de Booth

3.2.2.3. Multiplicadores combinacionales

3.2.2.3.1. Más rápidos

3.2.2.3.2. Más complicados

3.3. Operación división

3.3.1. Más compleja que multiplicación

3.3.2. Sumador-restador+algoritmo

3.3.3. Raro que un computador disponga de un divisor combinacional

3.4. Principios de diseño del hardware

3.4.1. HW para un número variable operandos más complicados

3.4.2. HW para número fijo más simple

3.4.3. 4 principios

3.4.3.1. Principio de diseño I

3.4.3.1.1. La simplicidad favorece la regularidad

3.4.3.1.2. Traducción del lenguaje al lenguaje ensamblador de MIPS la realiza el compilador

3.4.3.1.3. Operandos de las instrucciones aritméticas son limitados

3.4.3.1.4. Registros

3.4.3.2. Principio de diseño II

3.4.3.2.1. Más pequeño es más rápido

3.4.3.2.2. Mayor número de registros= incrementar el ciclo de reloj

3.4.3.2.3. Convención MIPS utliza $ sequido de dos caracteres para representar un registro

3.5. Operandos en memoria

3.5.1. Estructuras de datos complejas

3.5.1.1. Arrays y estructuras

3.5.1.2. Se almacenan en memoria

3.5.2. Estructuras de datos grandes tienen más elementos que los que se pueden almacenar

3.5.3. MIPS operaciones se realizan entre registro

3.5.4. Necesita instrucciones para transferir datos

3.5.5. Para acceder a una palabra;

3.5.5.1. Se necesita la dirección de memoria de la misma

3.5.6. Memoria como una array unidimensional

3.5.6.1. Indice es igual a la dirección

3.5.7. Compilador asocia estructuras de datos con las direcciones de memoria

3.5.8. Unidad de direccionamiento es el Byte

4. Diseño de un repertorio de instrucciones

4.1. Diseño de un repertorio de instrucciones

4.1.1. Influye en:

4.1.1.1. Número de instrucciones para una tarea

4.1.1.2. Diseño del compilador

4.1.1.3. Diseño ruta de datos y la unidad de control

4.1.2. CISC, gran número de instrucciones complejas

4.1.2.1. Variedad de tipos

4.1.2.2. Instrucciones de alto nivel

4.1.2.3. # pequeño de instrucciones ensamblador

4.1.2.4. HW más comlejo

4.1.3. RISC,, pocas instrucciones y muy básicas

4.1.3.1. Pocos tipo de datos

4.1.3.2. Técnicas de optimazación

4.1.3.2.1. Nivel de HW

4.1.3.2.2. Compilador

4.1.3.3. Más instrucciones para realizar la misma tarea

4.2. Aspectos importantes

4.2.1. Tipos de Almacenamiento

4.2.1.1. Pila

4.2.1.1.1. Operandos implícitos

4.2.1.2. Acumulador

4.2.1.2.1. Uno de los operandos es implícito

4.2.1.3. Registro de propósito general(GPR)

4.2.1.3.1. Los operandos se especifican de forma explícita

4.2.1.3.2. Arquitecturas de basan en GPR

4.2.1.3.3. Caracteristicas

4.2.2. Modos de Direccionamiento

5. Operando de HW del computador

5.1. Interpretación de las direcciones de memoria

5.1.1. Mayoría de máquinas direccionadas por bytes

5.1.1.1. Little Endian

5.1.1.1.1. Comienza por el extremo pequeño

5.1.1.2. Big Endian

5.1.1.2.1. Comienzo por el extremo grande

5.1.1.3. Middle Endian

5.1.1.3.1. Capaz de trabajar con ambas ordenaciones