el diseño de la computadora es simple. la elegancia del diseño consiste en que estas operaciones...

48

Upload: leoncio-monje

Post on 23-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos
Page 2: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

El diseño de la computadora es simple.

La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos en extremo.

INTRODUCCIÓN

Page 3: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

El desafío del programador es producir la secuencia exacta de operaciones para realizar correctamente una tarea en todas las circunstancias posibles, de lo contrario se obtendrá un programa defectuoso.

INTRODUCCIÓN

Page 4: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Se comenzará a explorar las operaciones que la computadora puede efectuar y veremos cómo se integran para brindarle su potencia.

Al modelo que se utilizará se lo conoce como Pequeño Hombre Computadora.

INTRODUCCIÓN

Page 5: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Lo creó Stuart Madnick durante 1965. Lo mejoró en 1979 y es esta última versión la que analizaremos a continuación.

INTRODUCCIÓN

Page 6: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

00 500

01 199

02 500

97

97

98

99 123

Cesto de Entrada

Cesto de Salida

Pequeño Hombre

Computadora

123 Calculadora

Buzones

Botón de reinicio

05

Contador de ubicación de instrucciones

Page 7: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

El modelo consta de una sala de correo, en donde existen una serie de 100 buzones de correo, numerados con una dirección que va del 00 al 99.

Cada buzón esta diseñado para alojar una tira de papel, donde esta escrito un número decimal de tres dígitos.

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

Page 8: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

En contenido de un buzón no es lo mismo que su dirección.

Además, existe una calculadora que sirve para introducir y conservar temporalmente números, así como para restar y sumar.

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

Page 9: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Hay un contador manual de dos dígitos del tipo que permite hacer un clic para incrementar el conteo.

Su botón de reinicio se encuentra fuera de la sala de correo. A este contador lo llamaremos contador de ubicación de instrucciones.

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

Page 10: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Fuera del interruptor de reinicio en el contador manual, las únicas interacciones entre el Pequeño Hombre Computadora y el ambiente son un cesto de entrada y uno de salida.

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

Page 11: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Un usuario fuera del salón de correo puede comunicarse con el Pequeño Hombre Computadora dejando en el cesto de entrada un trozo de papel de tres dígitos, para que lo lea en le momento más conveniente.

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

Page 12: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Advierta que toda comunicación entre el Pequeño Hombre Computadora y el mundo externo, así como en el interior de la sala de correo, se lleva a cabo utilizando números de tres dígitos.

DISEÑO DEL PEQUEÑO HOMBRE COMPUTADORA

Page 13: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Para que el PHC funciones se ha inventado un grupo de instrucciones que puede realizar. Cada instrucción consta de un solo dígito. Emplearemos el primer dígito para indicar que operación realizar.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 14: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

En algunos casos la operación requerirá que utilice un buzón para guardar o recuperar datos. Como solo se utiliza un dígito para la operación, se utiliza los restantes dígitos para indicar la dirección correspondiente

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 15: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Instrucción Dirección del buzón

3 2 5

Page 16: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

LOAD: código de operación 5.STORE: código de operación 3.ADD: código de operación 1.SUBTRACT: código de operación 2.INPUT: código de operación 9,

dirección 01.OUTPUT: código de operación 9 ,

dirección 02.HALT: código de operación 0.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 17: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción LOAD.-1. Se dirige a la dirección

especificada en la instrucción.2. Lee el contenido de la

dirección.3. Va a la calculadora.4. Perfora el número.5. Introduce el número.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 18: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción STORE.-1. Se dirige a la calculadora.2. Lee el número de la

calculadora.3. Lo anota en un papel.4. Lo pone en el buzón cuya

dirección se especifico como parte de la instrucción.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 19: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción ADD.-1. Se dirige a la dirección

especificada en la instrucción.2. Lee el contenido de la

dirección.3. Va a la calculadora.4. Lo suma al valor contenido en

la calculadora.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 20: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción SUBTRACT.-1. Se dirige a la dirección

especificada en la instrucción.2. Lee el contenido de la

dirección.3. Va a la calculadora.4. Lo resta del valor contenido

en la calculadora.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 21: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción INPUT.-1. Se dirige al cesto de entrada.2. Recoge el trozo de papel.3. Se encamina a la calculadora.4. Perfora el número.5. Introduce el número en la

calculadora.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 22: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción OUTPUT.-1. Se dirige a la calculadora.2. Anota el número en un trozo

de papel.3. Se dirige al cesto de salida.4. Ubica el trozo de papel en

dicho cesto.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 23: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucción HALT.-El PHC descansa un poco.

Ignorará la parte de la instrucción correspondiente a la dirección.

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 24: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Las instrucciones que hasta ahora hemos definido caen dentro de cuatro categorías:

Instrucciones que mueven los datos (LOAD, STORE).

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 25: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Instrucciones que realizan operaciones aritméticas simples (ADD, SUBTRACT).

Instrucciones que realizan la E/S (INPUT, OUTPUT).

Instrucciones que controlan la máquina (HALT).

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Page 26: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

FUNCIONAMIENTO DEL PEQUEÑO HOMBRE

COMPUTADORA

Por ejemplo:Código

de contado

r

Instrucción

Descripción de la Instrucción

00 901 Introducir 1er número

01 399 Guardar los datos

02 901 Introducir 2do número

03 199 Sumarle 1er número

04 902 Mostrar resultado

05 000 Parada

99 Datos

Page 27: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Con la expresión ciclo de instrucciones se designa a los pasos que el Pequeño Hombre Computadora realiza al ejecutar una instrucción.

Este ciclo es similar en todas las instrucciones.

EL CICLO DE INSTRUCCIONES

Page 28: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

La Captación, la conforman los siguientes pasos:

1. El PHC lee la dirección en el Contador de ubicaciones.

2. Se dirige al buzón correspondiente.

3. Lee el número (contenido de la dirección).

EL CICLO DE INSTRUCCIONES

Page 29: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

333

25

25

Page 30: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

333

25

Page 31: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

333

25

5 89

Page 32: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

La Ejecución, la conforman los siguientes pasos:

1. El PHC se dirige a la dirección que le da la instrucción.

2. Lee el número de ese buzón.3. Se dirige a la calculadora,

perfora el número y lo introduce.4. Se encamina al Contador de

locaciones y hace clic en el.

EL CICLO DE INSTRUCCIONES

Page 33: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

333

25

5 89

Page 34: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

333

25

222

Page 35: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

222

25

222

Page 36: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

EL CICLO DE INSTRUCCIONES

25 589

89 222

333

26

Page 37: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

A John von Neumann suele considerársele el creador de la computadora tal como la conocemos hoy. Entre 1945 y 1951 estableció una serie de directrices que hoy se conocen como la organización von Neumann de la computadora.

NOTA ADICIONAL

Page 38: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Se han diseñado y creado otras organizaciones experimentales, pero la suya continúa siendo la norma; hasta la fecha ninguna otra ha alcanzado éxito comercial.

NOTA ADICIONAL

Page 39: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Las principales directrices que definen la organización propuesta por von Neumann:

1. La memoria contiene los programas y los datos; a esto se le llama concepto de programa almacenado. Es un concepto que permite modificar los programas fácilmente.

NOTA ADICIONAL

Page 40: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

2. La memoria se direcciona linealmente, es decir, existe una sola dirección numérica secuencial en todas las localizaciones de ella.

NOTA ADICIONAL

Page 41: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

3. La memoria se direcciona mediante el número de ubicación, prescindiendo de los daos allí contenidos.

NOTA ADICIONAL

Page 42: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Las instrucciones se ejecutan secuencialmente a menos que una instrucción o un evento externo haga que se introduzca una bifurcación.

Además, según lo definió van Neumann, esta se compone de una Unidad de Control, una unidad Aritmético-Lógica y de una Unidad de Memoria.

NOTA ADICIONAL

Page 43: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

El modelo de Pequeño Hombre Computadora se ajusta al modelo organizacional de computadoras de von Neumann.

NOTA ADICIONAL

Page 44: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

Taller No.6:

1. Realice el siguiente programa PHC:

OUT = IN1 + IN2 – IN3

Page 45: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

2. ¿Cuáles son los criterios que definen la organización de von Neumann? ¿De qué manera se explica el ejemplo de este capítulo en que introducimos y sumamos dos números?

Taller No.6:

Page 46: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

3. Considere el ejemplo de la suma de dos números. Suponga que hayamos colocado la primera entrada en la localización 00 del buzón. ¿Habría provocado el programa el mismo resultado? ¿A qué característica de la computadora se debe?.

Taller No.6:

Page 47: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

4. En la versión original del PHC se usó el código de operación 7 (700) para la instrucción HALT en vez de 0. ¿Qué ventaja tiene utilizar 000 con la instrucción HALT en vez de 700? (Sugerencia: imagine lo que sucedería si el programador olvidara introducir una instrucción HALT al final del programa).

Taller No.6:

Page 48: El diseño de la computadora es simple. La elegancia del diseño consiste en que estas operaciones simples pueden servir para resolver problemas complejos

5. Suponga que el PHC fue implementado como una computadora binaria de 16 bits. Suponga que el PHC binario ofrece el mismo conjunto instrucciones con los mismos códigos (en binario naturalmente) y el mismo formato de instrucciones ( código de operación + la dirección) ¿Cuántos bits se necesitarán en la parte de la instrucción correspondiente al código? ¿Cuántos buzones podrían caber en la computadora binaria?.

Taller No.6: