¿Cuáles son los fundamentos de las computadoras?

Primero, una computadora no funciona y no hace nada particularmente interesante. Tengo uno sentado en mi escritorio en este momento y hasta que comencé a golpear el teclado no estaba haciendo nada. Era menos de un pisapapeles porque ni siquiera sostenía el papel. Como siempre les dije a mis alumnos de CS: “Las computadoras son tontas. Los programadores son inteligentes “.
Segundo, hablemos un poco sobre cómo entiendo que están hechas las computadoras. No soy un ingeniero electrónico o informático, así que tomas esta parte con un grano de sal. Salvo detalles realmente técnicos, esto probablemente servirá como una descripción “suficientemente buena”. Las computadoras tienen tres componentes principales: algún tipo de medio que almacena voltajes binarios, eléctricos, algún tipo de medio que puede evaluar esos voltajes y algunos medios que permiten la entrada y salida para que podamos cambiar los voltajes y mostrar los voltajes. Si todo eso suena bastante tonto, entonces entiendes la parte sobre “las computadoras son tontas”.
Tercero, necesitamos algún método, dispositivo o sistema para hacer que los voltajes tengan sentido. Necesitamos aplicar el orden al caos. En su forma más simple, podríamos establecer los valores de los medios de almacenamiento utilizando una configuración permanente como un soldador y luego, de alguna manera, asignar los medios de almacenamiento a una pantalla de televisión como medio de salida. Si el voltaje es alto, encendemos un píxel en la pantalla y si es bajo, lo dejamos oscuro. Dependiendo del orden de los medios de almacenamiento, podríamos dibujar una imagen primitiva en blanco y negro en la pantalla. Podríamos hacer esto con la computadora más poderosa del mundo. Todavía no sería muy útil ni muy inteligente.
El próximo gran avance es agrupar los medios de almacenamiento. En nuestra primera iteración, tuvimos un gran grupo de elementos de medios únicos. Más precisamente, nuestros elementos multimedia se dividieron en 1 elemento de longitud. Llamamos a esos elementos un poco. Cada elemento de memoria solo puede decirnos dos cosas: está activado o desactivado. Por convención los agruparemos en 8 bits y lo llamaremos byte. Ahora cada elemento de memoria puede decirnos 8 cosas. Podemos tener grados de encendido y apagado. Esto es útil. Por ejemplo, podríamos asignar diferentes colores a cada uno de los 8 valores. Ahora, cuando asignamos un elemento de memoria (un byte) a nuestra pantalla de salida, podemos hacer que muestre uno de los 8 colores. Todavía no hacemos nada, pero obtenemos una imagen más interesante. También podemos asignar un valor a un byte y asignarlo a algún símbolo. Por ejemplo, en EBCDIC (uno de los métodos de mapeo) podemos tomar el valor 1111 0110 y eso representa el carácter ‘6’. El número entero 6 está representado por 0000 0110.
Las cosas se ponen interesantes cuando agregamos un concepto de programabilidad. Entonces podemos hacer una computadora de propósito general, una que pueda hacer varias cosas. Un programa es un conjunto de instrucciones que cambia los valores de los medios de memoria y aplica algún tipo de lógica a la salida. Se podría decir que crea datos y extrae información. El poder en una computadora de propósito general es que el programa se carga en los medios de memoria. Para cambiar lo que hará la computadora solo necesitamos cargar un programa diferente. Basado en el modelo de Turing (llamado así por Alan Turning, el matemático británico que creó el concepto), un programa es una cadena infinita de bits. Estos bits componen las instrucciones de la computadora. La computadora lee una sola instrucción, la ejecuta y obtiene la siguiente instrucción. La mayoría de los programas tienen una instrucción que termina el programa.
No hemos discutido la tercera parte del hardware que evalúa los voltajes. Se llama la unidad central de procesamiento (CPU). Contiene una serie de ranuras de memoria llamadas registros. El número exacto depende de la CPU en particular. Algunos están especializados como el puntero de instrucción (IP). La IP apunta a la siguiente instrucción que se debe buscar y ejecutar. Otros son de uso general (GP). Podríamos cargar un número en GP1 y el segundo en GP2. La instrucción podría ser AGREGAR GP1, GP2. Esto sumaría los dos registros y almacenaría la respuesta. El lugar donde se almacena depende una vez más de la CPU en particular. O podría comparar los valores en GP1 y GP2. Si GP1> GP2, devuelve VERDADERO. El programa podría usar ese valor para tomar una decisión. O lea un valor en GP1, inicie el disco duro y escriba el valor en GP2 en el disco duro.

Me estoy cansando de escribir esto y hay muchas cosas que he dejado fuera. La clave es saber que las computadoras están formadas por millones y millones de dispositivos muy poco interesantes que individualmente hacen cosas muy estúpidas. Los programas son cientos o miles o millones de líneas de instrucciones que individualmente hacen cosas estúpidas y triviales. Juntas, las computadoras programadas hacen todas las cosas complejas y maravillosas en las que confiamos.

Déjame que te lo explique, parte por parte …

¡Ordenadores! Todos estamos rodeados por eso. Se han convertido en una parte integral de nuestras vidas. ¿Pero qué es una computadora?

En nuestros días escolares hemos estado estudiando que una computadora es un dispositivo que puede recibir instrucciones para llevar a cabo un conjunto arbitrario de operaciones aritméticas y lógicas automáticamente, pero esa definición de computadoras era aburrida.

Hagámoslo simple, una computadora es una máquina que puede tomar información o entrada, hacer algún trabajo o procesar la información para dar una salida.

Astrolabio y Abacus pueden considerarse como ejemplos tempranos de computadora.

Un astrolabio era una herramienta que utilizaba la posición de las estrellas y el sol para la navegación. Tuvo su origen en 150 a. C.

Un ábaco era una herramienta muy antigua utilizada en matemáticas. Nos permite encontrar sumas, restas, multiplicaciones, divisiones e incluso raíces cuadradas de números enteros moviendo cuentas en filas.

A principios del siglo XIX, el primer dispositivo informático fue hecho por un ingeniero mecánico y un polímata Charles Babbage. Esta máquina se adelantó un siglo a su tiempo. El padre de las computadoras puede no haberse dado cuenta de que iba a revolucionar todo el mundo moderno.

La primera mitad del siglo XX fue testigo de la invención de sofisticadas computadoras analógicas que eran electromecánicas. Zuse Z3 fue la primera computadora digital electromecánica programable totalmente automática del mundo. Fue construido utilizando 2000 relés que implementaban una longitud de palabra de 22 bits que funcionaba a una frecuencia de reloj de aproximadamente 5–10 Hz. Tantos términos técnicos pero bienvenidos al mundo digital. Pero eso no fue todo.

Un tubo de electrones también conocido como válvula comenzó un capítulo completamente nuevo en electrónica. Inventado en 1904 por John Ambrose Fleming, los tubos de vacío fueron un componente básico de la electrónica durante la primera mitad del siglo XX, que vio la difusión de video, televisión, radar, grabación de sonido y grandes redes de teléfonos celulares.

En diciembre de 1943, el ingeniero telefónico Tommy Flowers diseñó Coloso.

(No confundirse con el personaje en la imagen de arriba)

Fue diseñado para resolver el problema por el matemático Max Newman. Fue el primer dispositivo informático electrónico digital programable y se usó para descifrar las cifras alemanas durante la Segunda Guerra Mundial.

Vimos la película: ¿El juego de imitación?

La máquina de Turing que ayudó a decodificar el enigma fue la bomba electromecánica. Esto fue antes de Coloso. Alan Turing propuso los principios de la computadora moderna en un artículo de 1936. Von Neuman, una figura fundadora en la computadora, reconoció que el concepto central de la computadora moderna se debía al diseño de Turing de un programa almacenado donde todas las instrucciones de computación se almacenan en la memoria. Las máquinas de Turing tienen el objeto central de estudio en teoría de la computación.

En 1947, William Shockley inventó el transistor bipolar que reemplazó los tubos de vacío y los diseños informáticos que dieron lugar a la segunda generación de computadoras.

Una computadora ENIAC construida por el ejército de EE. UU. Contenía 17500 tubos de vacío, 7200 diodos de cristal, 1500 relés, 70000 resistencias, 10000 condensadores, ¡5 millones de uniones soldadas a mano en ella! Pesaba más de 30 toneladas y medía aproximadamente 8 * 3 * 100 pies. Ocupaba 1800 pies cuadrados y consumía 150 kilovatios de electricidad.

(hecho: cada vez que esto se encendía, las luces sobre Filadelfia se atenuaban).

Transistor redujo este tamaño de computadora a aproximadamente el tamaño de un refrigerador.

El siguiente gran avance en potencia de cómputo vino con la invención de los circuitos integrados. Los primeros circuitos integrados prácticos fueron inventados por Jack Kilby en Texas Instruments y Robert Noyce en Fairchild Semiconductors en febrero de 1929. Kilby describió su nuevo dispositivo como un cuerpo de material semiconductor de germanio donde todos los componentes del circuito electrónico están completamente integrados. A Noyce también se le ocurrió su propia idea de Silicon IC. Este chip también resolvió muchos problemas prácticos que el chip de Kilby no resolvió.

Este nuevo desarrollo tuvo una explosión en el uso comercial y personal de las computadoras y condujo a la formación de Intel.

La invención de los microprocesadores fue la próxima gran cosa. Esto sentó las bases de Silicon Valley, que nos dio nuestros favoritos Apple, Microsoft, Google y otros.

Llegando al siglo XXI, el dominio de las computadoras móviles con la continua miniaturización de los recursos informáticos y el avance en la vida útil de la batería portátil. Computadoras portátiles vistas en popularidad en los años 2000. ¡Ahora tenemos computadoras portátiles, teléfonos inteligentes, tabletas, relojes inteligentes, VR y qué no!

El viaje de las computadoras continúa desde un dispositivo mecánico accionado a mano hasta mega computadoras de tamaño de sala enorme y finalmente a un dispositivo ahora a su alcance. El estudio de la informática traerá muchas fuentes de avance en los años venideros. Estén atentos hasta entonces …

Para comprender cómo funciona una computadora, lea un buen libro sobre sistemas operativos que contenga información que lo ayudará a comprender cómo funciona un sistema informático. Básicamente, un sistema informático solo puede leer y comprender o y 1, no lee alfabetos y otros caracteres. La computadora trabaja muy cerca del lenguaje de nivel de máquina para ayudar a cooperar en el funcionamiento de una computadora. Ahora llega a la máquina de administración de memoria que maneja la memoria muy rápidamente y la memoria se divide en dos partes, una es volátil, es decir, RAM, que sujeta el proceso de lectura y escritura, y la otra es nuestro disco duro, la unidad de almacenamiento que almacena los datos y proporciona los datos a pedido. palabras de computadora en milisegundos de marca de tiempo para que la multitarea nunca se convierta en un gran problema para el usuario y proporcione una multitarea fluida y también un funcionamiento de multiprocesamiento.

todo lo mejor…