Conceptos básicos de los computadores

Conceptos básicos de los computadores Montse Peiron Guàrdia PID_00153517 © FUOC • PID_00153517 Índice Introducción ...............................

0 downloads 47 Views 237KB Size

Recommend Stories


Arquitectura de los Computadores
Instrucciones. Programas. Estructura Funcional de un Ordenador. Microprocesador. {CPU}

Introducción a los Computadores Algoritmos computacionales
Introducci´ on Diagramas de flujo Dise˜ no de diagramas Pseudoc´ odigo GNU Octave Introducci´ on a los Computadores Algoritmos computacionales CNM-130 Departamento de Matem´ aticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia

Story Transcript

Conceptos básicos de los computadores Montse Peiron Guàrdia PID_00153517

© FUOC • PID_00153517

Índice

Introducción .............................................................................................. 5 Objetivos ..................................................................................................... 6 1. Los computadores y su uso ............................................................... 7 1.1. El computador, una máquina de propósito general. Algoritmo, programa ........................................................................................... 7 1.2. Evolución en los tipos y usos de los computadores ......................... 8 2. Estructura jerárquica de un computador .................................... 11 2.1. Niveles de la jerarquía. Software, hardware ....................................... 11 2.2. Estructura básica de un computador ................................................ 12 3. Codificación de información mediante señales binarias ......... 14 3.1. Señales analógicas, digitales y binarias ............................................ 14 3.2. Digitalización de señales .................................................................. 15 Resumen ...................................................................................................... 18 Bibliografía ................................................................................................ 19

Conceptos básicos del computador

© FUOC • PID_00153517

5

Introducción

Actualmente nos es difícil imaginar un mundo sin computadores. Es poco habitual no haber utilizado ninguno, ya sea en el ámbito doméstico, en el académico o en el laboral. Actividades tan diferentes como reservar un billete de avión, hacer una resonancia magnética o editar una película son hoy impensables sin la ayuda de un computador. No obstante, su aparición en la historia de la humanidad es muy reciente: los primeros se construyeron en torno al año 1945. Los computadores significaron un salto cualitativo muy importante en el desarrollo tecnológico y, por tanto, social. Además, debido a su versatilidad y eficiencia, permiten una aceleración constante del ritmo de aparición de todo tipo de innovaciones tecnológicas. Es posible que, una vez transcurrido el tiempo necesario para estudiar la segunda mitad del siglo xx con la suficiente perspectiva, la historia considere la introducción de los computadores un hito tan importante como la aparición de la agricultura o la Revolución Industrial. En este módulo veremos cuáles son los rasgos característicos de los computadores, cómo ha evolucionado su uso y presentaremos una primera aproximación a su estructura interna.

Conceptos básicos de los computadores

© FUOC • PID_00153517

6

Objetivos

El objetivo de este módulo es adquirir una visión global de qué es un computador y cuáles son sus rasgos característicos. Se introduce una serie de términos y conceptos con los que empezaréis a familiarizaros: 1. El computador es una máquina de propósito general, es decir, es programable. 2. Los programas se escriben en un lenguaje de programación de alto nivel. El compilador los traduce a un lenguaje de bajo nivel o de máquina. 3. El computador se organiza en una jerarquía de niveles. Esta asignatura se centra en el estudio del nivel físico. 4. El nivel físico tiene tres componentes básicos: el procesador, la memoria y la unidad de entrada/salida. Es lo que se conoce como estructura de von Neumann. 5. El nivel físico trabaja con señales binarias. Cualquier información se puede expresar mediante una señal binaria gracias al proceso de digitalización. Algunos de estos conceptos se estudiarán con más detalle a lo largo de la asignatura. Otros, en cambio, se conocerán en asignaturas posteriores de la carrera, por lo que en este módulo nos limitaremos a citarlos.

Conceptos básicos de los computadores

© FUOC • PID_00153517

7

Conceptos básicos de los computadores

1. Los computadores y su uso

En este apartado ofrecemos una definición muy general del término computador, citamos algunos conceptos básicos relacionados con los computadores y explicamos su evolución, tanto en los tipos como en los usos.

1.1. El computador, una máquina de propósito general. Algoritmo, programa Muchas de las máquinas presentes en el mundo actual tienen una sola funcionalidad, o un conjunto reducido de ellas. Una nevera sirve para mantener una temperatura determinada, un coche sirve para trasladar personas u objetos, una máquina de afeitar sirve para afeitar, etc. Uno de los rasgos que diferencia de manera más notable un computador de otras máquinas es que el computador es una máquina de propósito general, que se puede usar para múltiples funciones: llevar la contabilidad de una empresa, calcular la estructura de un puente, diseñar una nave espacial, escuchar música o simplemente jugar. Esta característica viene dada por el hecho de que los computadores son programables: en cada momento les podemos indicar qué función queremos que hagan.

Un programa es un conjunto de instrucciones que se dan a un computador para que realice una función determinada.

Tal como veremos a continuación, un programa es un caso particular de algoritmo.

Un algoritmo especifica el proceso necesario para llevar a cabo una tarea determinada: da todos los pasos que se tienen que seguir y el orden en que se deben ejecutar.

El ejemplo más típico de algoritmo es una receta de cocina. Si el proceso lo debe llevar a cabo una persona (como en el caso de las recetas de cocina), el algoritmo se puede explicar en un idioma que la persona conozca. Sin embargo, si lo tiene que realizar un computador, se debe explicar en un lenguaje que éste entienda. Existen varios lenguajes, llamados lenguajes de programación, que tienen una gramática que el computador es capaz de descifrar.

Los aparatos programables Muchos aparatos se pueden programar hasta cierto punto. Por ejemplo, a una lavadora se le puede ordenar que caliente el agua o no, que centrifugue o no, etc. Eso se debe a que tiene lo que se puede llamar un computador de propósito específico, muy sencillo, que sólo puede ejecutar un conjunto de programas limitado y predeterminado en el momento de la fabricación de la máquina. En cambio, a un computador se le puede dar un programa nuevo en cualquier momento.

Los aparatos programables Ejemplo típico de algoritmo El algoritmo para hacer un huevo frito es el siguiente: 1. Poner una sartén en el fuego. 2. Tirarle un buen chorro de aceite. 3. Cuando el aceite esté bastante caliente, romper un huevo y echarlo en la sartén. 4. Mientras se va haciendo, tirar aceite por encima del huevo para cocer la parte superior.

© FUOC • PID_00153517

8

Conceptos básicos de los computadores

Así pues, un programa es un algoritmo expresado en algún lenguaje de programación.

Los lenguajes de programación de alto nivel están próximos a los lenguajes que utilizamos las personas (más específicamente, al inglés). Para que los computadores los puedan ejecutar, los programas se deben traducir a un lenguaje de bajo nivel o lenguaje de máquina. Los compiladores son programas encargados de hacer esta traducción. Se define programa ejecutable como un programa escrito en lenguaje máquina.

1.2. Evolución en los tipos y usos de los computadores En torno a 1940, varios científicos aplicaron el álgebra booleana en los circuitos electrónicos, asociando los conceptos cierto y falso a los estados on y off, con lo que establecieron la base tecnológica para los computadores electróni-

Podéis ver con más detalle la aplicación del álgebra booleana en los circuitos electrónicos en el módulo “Los circuitos lógicos combinacionales” de esta asignatura.

cos digitales. El advenimiento de la Segunda Guerra Mundial propició que se destinaran grandes cantidades de dinero en la investigación de computadores, y entre 1945 y 1950 se diseñaron y construyeron varias máquinas electrónicas y programables hasta cierto punto (es difícil determinar cuál de éstas merece el honor de haber sido el “primer computador propiamente dicho”). Antes de los computadores Se puede decir que la primera máquina de calcular es el ábaco, que ya se usaba en Asia Menor en torno al año 3000 a.C. En el siglo XVII se inventaron en Europa varios ingenios mecánicos para realizar las cuatro operaciones aritméticas básicas. Durante la primera mitad del siglo XIX se diseñó una máquina con la finalidad de resolver ecuaciones diferenciales. Funcionaba con vapor y era tan grande como una locomotora. Se considera que el primer proceso a gran escala que tuvo apoyo computacional fue el censo de Estados Unidos del año 1889, que se procesó con la ayuda de una máquina de vapor. Fueron necesarias sólo seis semanas para hacer un trabajo que, en la ocasión anterior, había costado siete años. El ingeniero que diseñó la máquina fundó una empresa que más adelante se convertiría en IBM.

Los primeros computadores eran máquinas muy grandes, debido a que sus componentes básicos eran tubos de vacío. Un sólo computador podía ocupar varias salas de un laboratorio. Además, eran caros y consumían mucha energía. Se utilizaban para cálculos complejos, largos y difíciles de hacer de forma manual. Sus usuarios eran centros de investigación, administraciones y algunas grandes empresas. Los microprocesadores

El rendimiento de los computadores se ha optimizado gracias a los avances en tres grandes áreas de trabajo: 1) Las innovaciones tecnológicas, que han permitido disminuir el espacio ocupado y el consumo energético, aumentar la capacidad y la velocidad de cálculo, así como su fiabilidad. Durante la década de 1960, los avances tecnológicos más destacables fueron el uso del transistor en sustitución de los tubos de vacío, de tamaño y consumo energético mucho menor que éstos, y la aparición

Los circuitos integrados dieron lugar a la aparición de los microprocesadores, que además de reducir el tamaño de los computadores, permitieron ponerlos en todo tipo de aparatos, como hornos microondas o coches. Tal como se verá más adelante, el procesador sería el corazón de los computadores.

© FUOC • PID_00153517

9

Conceptos básicos de los computadores

de los circuitos integrados, que permiten incluir muchos transistores en un solo chip. Durante la década de 1980 se desarrolló la tecnología VLSI (Very Large Scale Integration), y actualmente se usa la Deep Submicron Technology, que permite integrar aproximadamente decenas de millones de transistores en un solo chip. 2) Las mejoras en la arquitectura o diseño de los circuitos que componen los computadores. En este apartado se deben destacar las arquitecturas vectoriales –que permiten procesar de manera eficiente conjuntos estructurados de datos–, la segmentación –que convierte el procesador en una cadena de proceso en serie para aumentar la cantidad de trabajo realizado por unidad de tiempo–, la arquitectura RISC –que simplifica el diseño del computador al mismo tiempo que incrementa su rendimiento–, o el paralelismo –que permite realizar más de una operación de manera simultánea gracias a replicar uno o más componentes del computador.

3) Los avances en el software. Durante los años sesenta aparecieron los primeros lenguajes de programación de alto nivel, que facilitaban enormemente la tarea de programar, así como los sistemas operativos, que permitieron que los computadores pudieran llevar a cabo varias tareas de manera concurrente. También se incluyen en este capítulo las optimizaciones de las técnicas de compilación, que permiten generar programas ejecutables más eficientes.s

La introducción de las diferentes mejoras hace que computadores más potentes y pequeños sean cada vez menos caros y que se extienda su uso. Durante la primera mitad de la década de 1980, empresas, administraciones medianas y universidades podían disponer de minicomputadores (¡que ocupaban una sola habitación!) para su gestión. Los centros de vanguardia de investigación usaban los denominados supercomputadores, con una capacidad de cálculo muy superior. Por su parte, los usuarios particulares tenían los computadores personales (PC), en aquel momento con una capacidad y prestaciones aún muy limitadas, que les permitían utilizar programas no demasiado complejos o, simplemente, jugar.

A partir de 1985, la potencia de los minicomputadores pasó a máquinas mucho menores y baratas, las llamadas estaciones de trabajo (workstations) y posteriormente, a los PC y a los computadores portátiles. La aparición de interfaces gráficas amigables para el usuario permitió incrementar el número de usuarios que podía utilizar de forma cómoda computadores baratos para un abanico creciente de aplicaciones, ya que el nivel de experiencia del usuario necesario podía ser menor. Las tecnologías multimedia, desarrolladas durante la década de 1990, significaron una nueva e importante ampliación de las prestaciones de los computadores al alcance de los usuarios particulares. Hoy, una agenda electrónica de bolsillo puede ser más potente que un PC de hace diez años.

Las constantes innovaciones tecnológicas hacen que las mejoras en el rendimiento se produzcan a un ritmo cada vez más acelerado.

© FUOC • PID_00153517

10

Conceptos básicos de los computadores

Durante la década de 1980, el uso de las redes de computadores, tanto de área local (LAN) como de alcance global (WAN), permitió compartir el trabajo efec-

LAN es la sigla de la expresión inglesa Local Area Network.

tuado por varios computadores e incrementar su utilidad. Durante la década

WAN es la sigla de la expresión inglesa Wide Area Network.

de 1990 se extendió el uso de Internet y de la World Wide Web. Las posibilidades de las redes de computadores se veían multiplicadas aún más, gracias a las innovaciones en la tecnología de comunicaciones. De este modo, hoy día apenas concebimos la idea de un computador como una máquina individual, sino que lo vemos como un punto de trabajo dentro de una red de alcance mundial. Ejecutamos los programas y guardamos los datos y documentos en nuestros PC, pero transferimos continuamente información entre computadores y compartimos programas y datos con personas que quizá no hemos visto nunca. Además, la red abarca otras “máquinas”, como los teléfonos móviles. Actualmente, muchos esfuerzos de investigación se centran en el llamado NetPC. El objetivo es conseguir que incluso la ejecución de los programas y el almacenamiento de los datos tenga lugar en la red global, de manera que los computadores se convertirían meramente en un punto de acceso a esta red.

El protocolo WAP El protocolo WAP (Wireless Application Protocol) permite el acceso a la información, a servicios, y la interacción desde aparatos sin cable.

© FUOC • PID_00153517

11

2. Estructura jerárquica de un computador

En este apartado presentamos los niveles de jerarquía básicos en que se estructura un computador.

2.1. Niveles de la jerarquía. Software, hardware Un edificio se puede ver, o conocer, a diferentes niveles. Tiene una apariencia externa, que es la que observa un peatón. Está estructurado en plantas y pisos, que es lo que conocen los vecinos. Las paredes están construidas con un cierto número de capas de diferentes materiales y contienen las conducciones para el agua, el gas o la electricidad; ésta sería la visión del constructor. El edificio se sostiene por una estructura de fundamentos, columnas y vigas que ha diseñado el arquitecto.

De la misma forma, un computador se estructura en una jerarquía de niveles, tal como se muestra en la figura 1:

Figura 1

a) Nivel de usuario: corresponde a la visión que el usuario tiene del computador. Visto desde este nivel, un computador es una máquina que tiene un cierto número de dispositivos que permiten interactuar con éste (el teclado, el ratón, la pantalla, el CD-ROM, etc.) y que ejecuta programas o aplicaciones. El usuario sólo necesita saber cómo funcionan los diferentes dispositivos, para qué sirve cada programa y cómo se debe usar. b) Nivel de programación: las aplicaciones que el usuario utiliza han sido escritas por un programador. Éste conoce las prestaciones que debe tener el programa y el lenguaje de programación elegido para escribirlo. Debe conocer también las facilidades que le proporciona el sistema operativo sobre el que se ejecutará el programa.

Conceptos básicos de los computadores

© FUOC • PID_00153517

12

Conceptos básicos de los computadores

c) Nivel de sistema operativo: el sistema operativo es un conjunto de programas (escritos por los programadores de sistemas) que administran el computador. El sistema operativo posibilita la comunicación entre el procesador y los diferentes dispositivos periféricos, así como la comunicación con otros computadores; coordina las tareas que efectúan las partes del computador involucradas en la ejecución de los programas y proporciona al programador los compiladores y las librerías necesarias para que los programas se ejecuten en la máquina. También ofrece al usuario o usuarios del computador la interfaz para que trabajen en él. d) Nivel físico: corresponde a los circuitos electrónicos que forman el computador, diseñados por los arquitectos de computadores. El nivel físico ejecuta los programas de aplicación y los del sistema operativo. Para hacerlo, necesita que los compiladores hayan traducido los programas a lenguaje de máquina.

Las aplicaciones y el sistema operativo forman el software y el nivel físico constituye el hardware.

2.2. Estructura básica de un computador Esta asignatura se centra en el estudio del nivel físico de un computador. La estructura básica del nivel físico es común a todos los computadores actualmente existentes. Fue descrita en 1946 por John von Neumann y otros ingenieros, y se conoce como estructura de von Neumann. Según esta estructura (que se muestra en la figura 2), los computadores constan de tres grandes módulos: 1) La unidad central de proceso, procesador o CPU ejecuta los programas. A su vez, se estructura en dos bloques: la unidad de proceso (UP) es el conjunto de dis-

CPU es la sigla de la expresión inglesa Central Processing Unit.

positivos electrónicos necesarios para ejecutar programas, y la unidad de control (UC) es un circuito encargado de gobernar la unidad de proceso. 2) La memoria guarda los programas mientras se ejecutan. Éstos constan de un conjunto de datos que se modificarán o consultarán al ejecutar el programa y de un conjunto de instrucciones que indican las operaciones que se deben hacer sobre los datos. La memoria está estructurada como un conjunto de palabras o términos, en cada uno de los cuales, se puede guardar una instrucción o un dato individual. La ubicación de cada palabra en la memoria se denomina dirección. 3) La unidad de entrada/salida (unidad E/S) permite que el computador se relacione con el usuario y el entorno mediante varios dispositivos periféricos (teclado, pantalla, discos, etc.).

Abreviamos unidad de entrada/salida con la expresión unidad E/S.

© FUOC • PID_00153517

13

Conceptos básicos de los computadores

Figura 2

Estos tres módulos se comunican mediante tres conexiones denominadas buses: • El bus de datos permite la transferencia de datos entre los tres módulos, y la de instrucciones de la memoria hacia el procesador. • El bus de direcciones permite al procesador indicar a la memoria (o a la unidad de E/S) qué palabra quiere leer (obtener su valor) o escribir (modificar su valor). • Por el bus de control se transmiten las señales que posibilitan que los tres módulos actúen de forma coordinada. El funcionamiento básico de un computador es el siguiente: la unidad de entrada/salida permite cargar programas en la memoria desde una unidad de disco*. Para ejecutar el programa, las instrucciones se transmiten de una en una de la memoria al procesador. Éste las examina y activa los circuitos apropiados para llevar a cabo las operaciones indicadas por cada instrucción. Para hacer una operación sobre unos datos determinados, éstos también deben ser transferidos previamente de la memoria al procesador. Los datos que resultan de la ejecución de los programas se transfieren del procesador a la memoria y se guardan en una unidad de disco.

* Por ejemplo, un disco duro, un CD-ROM, etc.

© FUOC • PID_00153517

14

Conceptos básicos de los computadores

3. Codificación de información mediante señales binarias

En este apartado se explica por qué y cómo se lleva a cabo la digitalización de la información.

3.1. Señales analógicas, digitales y binarias

Las señales analógicas son aquéllas que varían, con el tiempo, de una manera continua, y pueden adoptar infinitos valores.

Figura 3

Ejemplo de señal analógica El sonido describe una onda que se puede representar gráficamente tal como se muestra en la figura 3. La línea curva es continua y, por tanto, incluye infinitos valores reales.

Las señales digitales toman un conjunto finito de valores discretos. Éstas son más pobres que las analógicas, en el sentido de que no pueden transmitir la información con el mismo grado de detalle. Ahora bien, son más manejables, ya que el conjunto de valores que pueden adoptar es finito.

Las señales binarias son un caso particular de las señales digitales. En concreto, son señales que sólo pueden tomar dos valores diferentes. Éstos se suelen representar mediante 0 y 1.

El nivel físico de un computador es un conjunto de circuitos electrónicos que sólo pueden distinguir dos valores diferentes de voltaje.

Señales analógicas y señales digitales Según un reloj digital que marque horas, minutos y segundos, el tiempo no es una dimensión continua, sino que cambia de valor sólo una vez cada segundo, y el número de valores diferentes que puede adoptar es finito. En cambio, un reloj de esfera representa el tiempo como una señal analógica, ya que las manecillas recorren ininterrumpidamente los infinitos puntos de la esfera.

© FUOC • PID_00153517

15

Conceptos básicos de los computadores

Dicho de otra manera, el comportamiento de un circuito electrónico sólo puede variar dependiendo de si el voltaje es bajo (próximo a 0 voltios) o alto (próximo a 5 voltios). El voltaje bajo se suele representar con un “0” y el alto, con un “1”. Los voltajes correspondientes a 0 y 1 dependen de la tecnología utilizada.

Así, los computadores trabajan con señales binarias. Por tanto, toda la información que se les proporcione debe estar expresada o codificada mediante una señal binaria. Por este motivo, los programas se traducen a un lenguaje de máquina, que está formado sólo por ceros y unos. Y de igual forma, los datos sobre los que trabajan los programas se pueden expresar mediante señales binarias gracias al proceso denominado digitalización.

3.2. Digitalización de señales

La digitalización consiste en codificar con una señal binaria la información expresada mediante una señal analógica.

El proceso de digitalización consta de tres etapas: el muestreo, la cuantificación y la codificación binaria.

1) El muestreo (o discretización) consiste en tomar muestras de la señal analógica en intervalos de tiempo regular.

Figura 4

Ejemplo de muestreo de una señal analógica Un muestreo de la señal dibujada en la figura 3 a intervalos de periodo T daría el resultado que se observa en la figura 4.

2) La cuantificación consiste en asignar un valor, de entre un conjunto finito, a la amplitud de la señal en cada intervalo de muestreo.

© FUOC • PID_00153517

16

Conceptos básicos de los computadores

Figura 5

Ejemplo de cuantificación de una señal En el ejemplo de la figura 4, si al cuantificar admitimos valores de amplitud múltiplos de 10, obtenemos el resultado que se muestra en la figura 5. El sonido representado en esta figura es de menor calidad que el de la figura 3, ya que está escalonado.

Cuanto menores sean los intervalos de tiempo del muestreo (hasta un cierto límite más allá del cual ya no ganamos nada), y cuanto mayor sea el conjunto de valores admitidos en la cuantificación, más cercana será la información digitalizada a la información analógica. 3) La codificación binaria consiste en traducir los valores de las diferentes muestras a un sistema binario, es decir, en expresar estos valores mediante ceros y unos. Ejemplo de codificación binaria Los valores de las amplitudes que aparecen en la figura 5 se podrían codificar de la manera que se muestra a continuación: Amplitud

Codificación binaria

90

0000

100

0001

140

0010

150

0011

170

0100

190

0101

210

0110

220

0111

230

1000

Una vez digitalizada, la información que en la figura 3 se expresaba mediante una línea curva, ahora se expresaría de esta manera: 0010 0100 0101 0010 0001 0000 0011 0110 1000 0111 0110 0101

Ventajas de la digitalización La digitalización es la técnica que se usa, por ejemplo, para grabar música en un CD. El sonido se muestrea, se codifica en binario y se graba en el CD haciendo muescas: un 1 se traduce al hacer una muesca, un 0 se traduce al no hacerla. La tecnología actual permite hacer el muestreo y la cuantificación lo bastante detallados como para que la distancia entre los escalones provocados por la digitalización no sean perceptibles por el oído humano. Por otro lado, la digitalización evita los sonidos y distorsiones que se introducen con medios analógicos, circunstancia que permite que el sonido digital pueda ser de más calidad que el analógico.

© FUOC • PID_00153517

17

Conceptos básicos de los computadores

Se puede digitalizar cualquier tipo de información (sonido, imagen, vídeo, etc.). Una vez digitalizada, se la podemos proporcionar a un computador y éste la puede procesar, ya que está codificada sólo mediante ceros y unos.

Podéis ver cómo se representan en un computador los diferentes tipos de información en el módulo “Representación de la información numérica” de esta asignatura.

© FUOC • PID_00153517

18

Resumen

En este módulo hemos visto que un rasgo diferencial de los computadores es que son de propósito general, ya que se pueden programar para realizar distintas tareas. También hemos estudiado que los avances en ingeniería permiten incrementar las prestaciones de los computadores al mismo tiempo que reducir su precio y sus dimensiones, de manera que máquinas cada vez más completas están al alcance de un número de usuarios cada vez más amplio. Además, cada vez más, los computadores no son máquinas aisladas, sino nodos dentro de una red de alcance mundial. Hemos conocido los diferentes niveles de la estructura jerárquica de los computadores y la estructura básica del nivel físico, que es el objeto de estudio de esta asignatura. Finalmente, hemos observado que el nivel físico trabaja con señales binarias y que se puede procesar cualquier tipo de información una vez ésta se ha digitalizado.

Conceptos básicos de los computadores

© FUOC • PID_00153517

19

Bibliografía Stallings, W. (2000). Organización y diseño de computadores (5.ª ed.). Madrid: Prentice-Hall.

Conceptos básicos de los computadores

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.