Sei sulla pagina 1di 72

Lgica digital y Lenguaje mquina. Ejemplo en microprocesadores.

Antonio Torres & Ignacio Castieiras Evolucin de la Informtica I. Master de Profesorado de Secundaria.02/02/2011

Introduccin. De qu trata esta charla?

Para qu quiero yo usar un ordenador? Para que ejecute programas. Si quisiera ganarme unos durillos diseando un ordenador, qu es lo ms bsico que tendra que saber? 1. Un montn de transistores conectados: chips, placas, soldar 2. Un lenguaje en el que poder decirle a esa cosa: Haz esto. Los puntos 1 y 2, son mundos (abstracciones) diferentes!! Son independientes o tienen relacin? Si tienen relacin, qu nivel de relacin?

Introduccin. Mundo transistores

Introduccin. Mundo programas.

Haz la multiplicacin de a por b. Relacin con aquellos transistores? S.

Introduccin. Estructura Computador. Modelo Von Newmann

En 1946 Von Newmann sent las bases para disear un computador. Su modelo ha sido seguido desde el ENIAC, primer ordenador electrnico de la historia, hasta los computadores de hoy en da.

Introduccin. Modelo Von Newmann

Un computador est formado por 3 unidades: Unidad de Memoria. Almacena las instrucciones y los datos del programa. Unidad Central de Proceso (CPU). Ejecuta las instrucciones del programa.

Unidad de Proceso. Realiza las operaciones que ejecutan una instruccin. Unidad de Control. Secuencia esas operaciones para ejecutar la instruccin correctamente.

Unidad de Entrada/Salida. Transfiere informacin entre el computador y el usuario.

Introduccin. Modelo Von Newmann


Las distintas unidades estn comunicadas: buses Bus de datos. Transporta instrucciones de memoria a CPU. Transporta datos entre memoria, CPU y I/O. Bus de direcciones. Dicen a qu posicin de memoria se quiere acceder. Las genera la CPU. Bus de control. Transporta seales entre Unidad de Proceso y Unidad de Control. Seal de reloj. Lectura o escritura en memoria.

Introduccin. Niveles de un computador

Nivel 1: Lgica digital. Corresponde a la mquina fsica. Aqu se ejecutan los programas del usuario. Los transistores conectados. Nivel 2: Lenguaje mquina. Nivel ms bajo al que tiene acceso el usuario. Primer nivel de programacin. Nivel 3: Sistema operativo. Gestiona y protege los recursos del computador. Nivel 4: Lenguajes de alto nivel. Facilitan la programacin. Necesaria traduccin a lenguaje mquina o mquina virtual que los interprete. Nivel 5: Usuario y aplicaciones. Bases de datos, procesadores de texto, el PowerPoint que estamos usando ahora mismo,

Introduccin. Niveles de un computador

Cada nivel utiliza los recursos que le ofrece el nivel inferior.

Este trabajo presenta el diseo de los niveles 1 y 2. Primero los veremos sobre un computador sencillo. Finalmente, sobre el Intel 8086.

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

Mquina Rudimentaria (MR).

Es un computador muy sencillo. Se usa con fines pedaggicos, para explicar los conceptos bsicos del lenguaje mquina y la lgica digital. Nuestro enfoque se va a centrar en presentar: Lenguaje mquina. Qu puedo expresar? Lgica digital. Cmo se ejecuta eso que he expresado?

MR. Unidades I/O, Memoria y CPU.

No tiene Unidad I/O. Podemos pensar que los programas y sus datos estn ya almacenados en memoria. Memoria es de 256 palabras de 16 bits. Las instrucciones y los datos son de 16 bits, as que cada direccin de memoria almacena una nica instruccin o un nico dato. Bus de direcciones: 8 bits (256 palabras). Bus de datos: 16 bits. La CPU ejecuta las instrucciones de una en una, en un secuenciamiento implcito. Es decir, busca una instruccin en memoria (posicin n), la trae a CPU, y la ejecuta. Despus busca la siguiente instruccin (pos. n+1),.

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

MR. Lenguaje Mquina. Qu puedo expresar?

Se pueden ejecutar hasta 3 tipos de instrucciones: 4 Instrucciones aritmtico-lgicas (identificador 11).

Sumar, restar, dividir entre 2, and lgica. Cargar dato de memoria y almacenar dato en memoria. Saltar incondicionalmente, o saltar si: =, != , >, >=, <, <=

2 Instrucciones de transferencia con memoria. (id. 00 y 01).

7 Instrucciones de salto. (id. 10).

Slo hay un tipo de datos: enteros.

MR. Lenguaje Mquina. Instrucciones aritmtico - lgicas

Necesito expresar: Es una instruccin aritmtico-lgica (bits 15-14) de suma de dos registros (bits 2-0). Sus operandos fuentes son los registros R3 y R4 (bits 10-8 y 7-5, resp.) y el resultado de la suma se almacena en el registro destino (bits 13-11).

MR. Lenguaje Mquina. Instrucciones carga de memoria.

Necesito expresar: Es una instruccin de transferencia con memoria, concretamente de carga de memoria (bits 15-14). La direccin de memoria es d = bits 7-0 + contenido Ri (desplazamiento, bueno para indexar vectores). La palabra de memoria se almacena en Rd.

MR. Lenguaje Mquina. Instrucciones de salto.

Necesito expresar: Es una instruccin de salto (bits 15-14). La condicin de salto (bits 13-11). La direccin de memoria a la que se salta.

MR. Lenguaje mquina. Optimizacin diseo

Qu cosas buenas se van viendo de este diseo? No todas las instrucciones necesitan los 16 bits. Pero, por homogeneidad se guardan todas en 16 bits. Los bits de identificacin de instrucciones estn en la misma posicin para los tres tipos de instrucciones. Los bits para direccin de memoria estn en las mismas posiciones. Los bits para registros estn en las mismas posiciones. Todo esto va a simplificar el diseo de la lgica digital

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

MR. Lgica digital.

Unidad Central de Proceso (CPU). Ejecuta las instrucciones del programa. Unidad de Proceso. Realiza las operaciones que ejecutan una instruccin. Unidad de Control. Secuencia esas operaciones para ejecutar la instruccin correctamente.

MR. Lgica digital. Unidad de Proceso en 5 ideas


Los programas consisten en los 3 tipos de instrucciones que hemos visto antes. Para poder ejecutarlos, necesitamos estos 5 mdulos: 1. La instruccin a ejecutar. 2. Un banco de registros, para guardar datos temporalmente. 3. Una unidad de computo, o calculadora, que pueda operar con los datos. 4. Una unidad que calcule la direccin con la que quiero acceder a memoria. 5. Una unidad que diga si hay que saltar.

MR. Lgica digital. La Unidad de Proceso en 5 ideas.


2 4

1 3 5

MR. Lgica digital. 1. Registro de instruccin (IR)


Almacena la instruccin que se va a ejecutar. Puede ser de cualquiera de los tres tipos que vimos antes. Para traer la instruccin se habr accedido a memoria por el bus de direcciones. La instruccin viene de memoria por el bus de datos. Qu tiene que hacer?
Llevarle los bits de operandos al banco de registro. Llevarle los bits de direccin a la unidad de direcciones de memoria. Llevarle los bits de salto a la unidad de salto.

MR. Lgica digital. Ventajas de un diseo eficiente.

Slo por el hecho de que los tres tipos de instrucciones compartan bits de identificacin, operandos y direccin de memoria, nos ahorramos un montn de cables saliendo IR, optimizando el diseo de la lgica digital.

MR. Lgica digital. Banco de registros (IR)


Contiene 8 registros de 16 bits con datos temporales. Estos datos pueden venir de memoria o ser el resultado de una operacin aritmtico-lgica. Tenemos una entrada Din y una salida Dout de 16 bits. As podemos almacenar y obtener datos de los registros. Cada ciclo de reloj slo podemos leer el contenido de un registro. Pero s podemos leer y escribir en un mismo ciclo. Tenemos dos entradas de 3 bits para indicar qu registro queremos leer (SL) o escribir (SE). Tenemos una seal de 1 bit para decir si los 16 bits que llegan por la entrada se escriben o no (E).

MR. Lgica digital. Ventajas de un diseo eficiente.

MR. Lgica digital. Ventajas de un diseo eficiente.

Fijmonos en la importancia de cada decisin de diseo. Si slo se puede leer un registro por ciclo, entonces una instruccin aritmtico-lgica necesita dos ciclos. Las instrucciones de almacenar en memoria tambin (Rd para dato a almacenar, Ri para desplazamiento a la direccin base). Claro, esto repercute en el nmero de ciclos que tarda en ejecutarse una instruccin. Rendimiento: compromiso entre nmero de ciclos y tiempo que dura cada ciclo.

MR. Lgica digital. Ventajas de un diseo eficiente.


1. Gracias a cmo hemos distribuido los bits en las instrucciones, en el segundo ciclo de una instruccin aritmtico-lgica o load se leer del banco de registros el registro indicado en los bits 10-8. En la figura anterior, para entrar en SL elegimos la entrada 1 del multiplexor. 2. En el tercer ciclo: Si es una instruccin aritmtico-lgica (e.g. add R5,R4,R3) elegiremos la entrada 2 del multiplexor (bits 7-5 de IR). Si es una instruccin load (e.g. load R2(5), R3), elegimos la entrada 0 del multiplexor (bits 13-11 de IR).

MR. Lgica digital. La Unidad de Control. Ejemplo 1.


Pero, cmo podemos hacer esto? Cmo controlamos el multiplexor del banco de registros? Hasta ahora slo hemos visto la Unidad de Proceso. Pero ya hemos dicho que la Unidad de Proceso est gobernada por una Unidad de Control. La Unidad de Control es una mquina de estados, que, segn el tipo de instruccin que ejecute enva unas seales u otras. En el caso de una instruccin aritmtico-lgica o de load, en el segundo ciclo enva la seal 01 al multiplexor. En el caso de aritmtico-lgica, en el tercer ciclo enva la seal 10 al multiplexor, para leer el segundo operando. Y si es un load, la seal 00, para leer el dato del registro fuente.

MR. Lgica digital. La Unidad de Control.

La Unidad de Control pone orden en ese caos de datos. Claro, en cada ciclo, hay datos viajando por los buses de conexin de la Unidad de Proceso. Hay que hacer caso siempre al contenido de los buses? !NO! La Unidad de Control dice cuando s y cuando no.

MR. Lgica digital. La Unidad de Control. Ejemplo 2.

MR. Lgica digital. La Unidad de Control. Ejemplo 2.


Todos los ciclos se est accediendo a una direccin de memoria. La Unidad de Control dice si es para leer o escribir. As que todos los ciclos IR est recibiendo una instruccin o un dato!. Pero no todos los ciclos se almacena ese dato en IR, sino slo cuando se termina de ejecutar una instruccin y se empieza a ejecutar la siguiente. La Unidad de Control dice cuando el dato que le llega a IR se almacena o no.

MR. Lgica digital. La Unidad de Control. Diagrama de estados.

La transicin entre estados depende de: El tipo de instruccin que se est ejecutando. Si hay que saltar o no (en caso de que sea inst. de salto).

Ejecucin de una instruccin. Ciclo 1. Unidad de Control.

Ejecucin de una instruccin. Ciclo 1. Unidad de Proceso.

Leemos la instruccin y la almacenamos en IR.

Ejecucin de una instruccin. Ciclo 2. Unidad de Control.

Independientemente de IR y Cond, pasamos al estado Deco, que decodifica la instruccin.

Ejecucin de una instruccin. Ciclo 2. Unidad de Proceso.

Vemos que est optimizado. 1. Instr. aritmtico-lgica, ya lee el primer operando. 2. Instr. de transferencia en memoria, ya almacena la direccin a la que accedemos. 3. Instr. de salto y hay que saltar, ya almacena la direccin a la que hay que saltar.

Ejecucin de una instruccin. Ciclo 2. Un. de Proceso. Ventajas diseo eficiente.

Por qu hacemos todo esto? Esta claro que slo ser uno de los tres tipos. Pero gracias a esto ganamos ciclos, ya que anticipamos tareas. Se puede trabajar en paralelo siempre? NO! Lo podemos hacer porque hemos hecho un diseo del lenguaje mquina y de la lgica digital eficiente. Lenguaje mquina: Codificacin de los bits. Lgica digital: Mdulos que solapen tareas equivalentes. Mdulos que no solapen tareas incompatibles.

Ejecucin de una instruccin. Ciclo 2. Unidad de Proceso.


Direccin de memoria.

Primer operando aritmtico Condicin de salto

Ejecucin de una instruccin. Ciclo 3. Unidad de Control.


Como IR 11 sabemos que es instruccin aritmtico-lgica, y saltamos al estado Arit, que realiza la operacin. El estado est optimizado, y lee ya la siguiente instruccin, ahorrando de nuevo un ciclo.

Ejecucin de una instruccin. Ciclo 1. Unidad de Proceso.

Se almacena el resultado en el banco de registros. Se lee de memoria la siguiente instruccin.


Lectura de segundo operando

Escribir el resultado Lectura de siguiente instruccin

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

Microprocesador Intel 8086.

En Junio de 1978 Intel saca a la venta el primer microprocesador de 16 bits. El descubrimiento de la tecnologa HMOS propici el aumento de la densidad de integracin y el paso a la tecnologa VLSI. En ese momento, el mercado est plagado de microprocesadores de 8 bits. El Zilog Z80 y el Motorola 6800 eran los modelos ms exitosos, y haban superado claramente al Intel 8080, tambin pionero como microprocesador de 8 bits Intel decide crear la arquitectura del 8086, de manera que sea compatible con la del 8080. Esta arquitectura se extiende hasta nuestros das, y es conocida como la familia x86.

Microprocesador Intel 8086. Ventajas de 16 bits sobre 8.

Software generalista. Repertorio de instrucciones de propsito general, fcilmente adaptable a futuras extensiones. Orientacin del repertorio de instrucciones hacia la implantacin de lenguajes de alto nivel. Gran cantidad de modos de direccionamiento y formato de datos. Posibilidad de trabajar con memoria virtual. Un completo sistema de interrupciones. Modo Supervisor, para proteccin de programas y adecuacin a modernos sistemas operativos

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

8086. Lenguaje mquina. Qu puedo expresar?

Vamos a clasificar el repertorio en 7 tipos de instrucciones:


Instrucciones de transferencia de datos (e.g. MOV). Aritmtico-lgicas (e.g ADD). Desplazamiento y rotacin (e.g. SHL). Control del secuenciamiento del programa (e.g. JZ, TEST). Control de programa (e.g. RET). Control del sistema (e.g. INT).

Hay ms tipos de datos: enteros y cadenas de caracteres.

8086. Lenguaje mquina. Instrucciones de transferencia de datos


MOV destino, fuente. Transfiere una palabra de la fuente al punto de destino. Estn optimizadas para trabajar con el registro AX. Ejemplo: MOV AL, 5.

XCHG destino, fuente. Intercambia palabras fuente y destino. IN fuente. Lleva a AX la palabra fuente. PUSH fuente, POP destino. Introduce/Extrae fuente en/de la pila;

8086. Lenguaje mquina. Instrucciones Aritmticas

ADD destino, fuente. Suma fuente y destino y coloca el resultado en destino. Est optimizada para utilizar AX. SUB destino, fuente. Igual para la resta. NEG destino. Realiza el C2 del destino. MUL fuente; DIV fuente. Se multiplica fuente por el contenido de AX y se deja el resultado en AX; Igual para la divisin. INC destino; DEC destino. Suman o restan 1 al destino. Usadas para el control de bucles.

8086. Lenguaje mquina. Instrucciones Lgicas

AND destino, fuente; OR destino, fuente; XOR destino, fuente.

Se hace la and/or/xor lgica y se almacena en destino.

8086. Lenguaje mquina. Desplazamiento y rotacin.


SHL destino. Se desplaza un bit a la izquierda destino SHR destino. Se desplaza a la derecha. Siempre se mete un 0 en el bit que nos falta.

ROL destino. ROR destino. Aqu los bits rotan.

8086. Lenguaje mquina. Instrucciones de salto.


JMP etiqueta. Salto incondicional a la etiqueta (dentro del segmento). JMP etiqueta, segmento. Salto incondicional a la etiqueta contenida en un cierto segmento. JE etiqueta; JZ etiqueta; JNE etiqueta; JNZ etiqueta; JS etiqueta; JNS etiqueta; Saltar si es igual (Z = 1), si es cero (Z = 1), si no es igual (Z = 0), si no es cero (Z = 0), si es negativo (N = 1), si no es negativo (N = 0). TEST destino, fuente. Se hace la and lgica para modificar los flags, pero el resultado no se almacena en ningn lado. COMP destino, fuente. Igual, pero en lugar de la and lgica se hace la resta. JL; JNGE; JNL; JGE; JLE; JNG; JNGE; JG. Igual que los otros saltos, pero con restricciones relacionales, para dar ms flexibilidad al programador. LOOP etiqueta. Salta a etiqueta en funcin del valor de CX. Primero decrementa CX. Si no es 0, entonces salta a etiqueta. Optimizan los bucles. JCXZ etiqueta. Salta si CX es 0.

8086. Lenguaje mquina. Instrucciones de control de programa.

CALL etiqueta. Llama a la subrutina, que se tiene que encontrar dentro del segmento. CALL etiqueta, segmento. La subrutina puede estar en otro segmento.
RET. Retorno de subrutina dentro del segmento. RETS. Retorno de subrutina desde otro segmento. RET numero. Retorno de subrutina y ajuste de la pila.

8086. Lenguaje mquina. Instrucciones de control del sistema.

INT. Interrupcin por software. Tiene un operando que indica el tipo de interrupcin. HLT. Paro de la CPU.

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

8086. Lgica digital. Caractersticas. Comparativa con MR.


1. Unidad I/O: Aqu s que hay que tener la Unidad de I/O. 2. Unidad de Memoria: 1 megabyte (220x16), frente a las 256 palabras de MR (28x16). Memoria segmentada (MR no segmentada). Bus de direcciones de 20 bits (frente al de 8 bits de MR). Mltiples modos de direccionamiento (frente al indexado de MR).

8086. Lgica digital. Caractersticas. Comparativa con MR.


3. Unidad Central de Proceso: Unidad de Interfaz del Bus (BIU):
Busca las instrucciones y las guarda en una cola de espera. Se encarga de la lgica del direccionamiento con memoria.

Unidad de Ejecucin (EU):


Ejecuta las instrucciones. Esta es la que contendra la Unidad de Proceso y Unidad de Control. Utiliza la cola de espera para ir ejecutando las instrucciones sin tener que esperar a que lleguen de memoria. GAP.

Hardware interno: Ambas unidades trabajan de manera simultnea y asncrona.

8086. Lgica digital. Arquitectura.

8086. Lgica digital. Registros EU

Registros de propsito general: 4 de 16 (se pueden dividir en 8 de 8bits, por compatibilidad hacia el 8080). 1. AX, registro acumulador. Optimizado para su uso en instrucciones aritmtico-lgicas y de I/O. 2. BX, registro base. Para direccionamiento a memoria. 3. CX, registro contador. Optimizado para iterar bucles. 4. DX, registro datos. Complemento a AX para multiplicaciones y divisiones.

8086. Lgica digital. Registros EU

Registros ndice y punteros: 4 de 16 bits. No pueden subdividirse. 1. SI, registro acumulador. Para direccionamientos. 2. DI, registro base. Para direccionamientos. 3. BP, registro puntero base. Para direccionamientos. 4. SP, registro puntero pila. Representa la posicin parcial dentro del segmento de pila. Registros flag: Similares a los de MR, para indicar si el resultado de una operacin ha sido zero, negativo, overflow Son tenidos en cuenta para las condiciones de los saltos.

8086. Lgica digital. Registros BIU


Registro IR: Representa la posicin parcial dentro del segmento de instrucciones. Registros de segmento: dan la posicin absoluta inicial de cada uno de estos segmentos en la memoria. CS, direccin inicial del segmento de instrucciones del programa. DS, direccin inicial del segmento de datos. SS, direccin inicial del segmento de pila. ES, direccionamiento cadenas de caracteres.

8086. Lgica digital. Direccionamiento a memoria.

El 8086 tiene hasta 25 modos de direccionamiento. Esto proporciona una gran flexibilidad. Enumeramos los distintos elementos que pueden participar en el clculo de una direccin Direccin inicial de segmento: CS, DS o SS.

Memoria 220; registro 16 bits (216). Se multiplica por 16.

Direccin base (para subrutinas): BX o BP. Una segunda base de 8 bits: SI o DI. Decalage: Se utiliza para compilar datos, organizar memoria y reubicar de una manera ms rpida y sencilla. No puede modificarse en tiempo de ejecucin.

8086. Lgica digital. Direccionamiento a memoria.


Instruccin INC 6[BX][DI] tiene a su nico operando en memoria. La instruccin incrementa el valor del operando. Se accede a l con un direccionamiento que usa la base (contenida en BX), el ndice (contenido en DI) y un decalage de 6. Si suponemos que DS = 3.000, BX = 4.000 y DI = 20, entonces la direccin de desplazamiento dentro del segmento es 6 + 4.000 + 20 = 4.026. Pero primero hay que multiplicar por 16 (10 en hexadecimal) a DS, lo que nos dice que el segmento empieza en la direccin 30.000 de memoria. Por lo tanto estaremos accediendo a la posicin 34.026 de memoria para obtener el operando de la instruccin.

8086. Lgica digital. Interrupciones.

Permite 256 tipos diferentes de interrupciones. Cuando se ejecuta una interrupcin, se termina de ejecutar la instruccin actual y se salva el estado de la CPU en la pila. Salta a la subrutina cambiando CS e IP por la direccin de la subrutina dentro de la memoria.

8086. Lgica digital. Chip.

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

8086. Ejemplo. Emulacin de un ejemplo.


Hemos utilizado la herramienta emu8086: http://www.emu8086.com Sumar 5 y 10. Mostrar el resultado por pantalla. Por qu este ejemplo? Sencillo. Contiene instrucciones: Instrucciones de transferencia (MOV). Aritmtico-lgicas (ADD). Desplazamiento y rotacin (SHL). Control del secuenciamiento del programa (JZ, TEST). Control de programa (RET). Control del sistema (INT).

8086. Ejemplo. Emulacin de un ejemplo.

Ver en el simulador.

ndice
1. Mquina Rudimentaria i. Lenguaje mquina. ii. Lgica digital de la CPU. 2. Microprocesador Intel 8086 i. Lenguaje mquina. ii. Lgica digital de la CPU. iii. Ejemplo. 3. Conclusiones

Conclusiones.

Hemos presentado el modelo de computador que propuso Von Newmann, y que ha sido utilizado desde el primer computador hasta hoy. Hemos estudiado las Unidades Bsicas, los buses que las comunican, y una visin jerarquica de un computador por niveles. Hemos utilizado un computador pedaggico para explicar los conceptos bsicos del diseo de la lgica digital y el lenguaje mquina. El uso de MR ha sido su sencillez, y que, directamente, muchos de estos conceptos bsicos no los hemos podido encontrar para el Intel 8086. Una vez afianzados esos conceptos bsicos, los hemos extrapolado al microprocesador Intel 8086, y hemos emulado la ejecucin de un sencillo programa ejemplo.

Conclusiones. Take home message.


1. Disear un computador consiste en elegir un repertorio de instrucciones adecuado, y la lgica que permita implementar su ejecucin. 2. Lenguaje mquina Lgica digital. Diseo comn, en paralelo. Dependencia total. 3. Cualquier pequeo cambio en una pequea parte del diseo puede tener un impacto global. El aleteo de una mariposa en la otra parte del mundo Cada decisin de diseo tiene que estar justificada.

GRACIAS!

Potrebbero piacerti anche