Pulse aquí para obtener el archivo

Anuncio
1
CONCEPTOS GENERALES
1.1. Concepto de información. Introducción a la teoría de la información. Concepto de dato. Estructuras de datos. Principios fundamentales históricos
de la informática.
Información es un término general que abarca hechos y representaciones que pueden no
estar relacionados. El concepto es conocido en general y es un término aceptado comúnmente.
La información puede ser trivial o transcendente, verdadera o falsa. La palabra dato tiene, por
otra parte, un significado mucho más preciso. Los datos son información en forma codificada,
aceptable para ser introducida y procesada por un ordenador. Es pues una representación de la
información, que usualmente viene en una estructura de datos; siendo entonces los datos representativos en sí y en relación con la estructura de la que forman parte. Un punto a tener en
cuenta es que los datos por sí solos carecen de significado, es decir:
datos + interpretación = información útil
Los principios fundamentales que subyacen tras el diseño y la construcción de los ordenadores electrónicos digitales se han desarrollado durante un período de casi un siglo. Aunque
un gran número de personas han contribuido de diversas formas al desarrollo y comprensión
de estas ideas, el trabajo de cuatro de ellas ha sido particularmente importante: Charles Babbage, George Boole, Alan Turing y John Von Neumann.
- Babbage (1791-1871).
Identificó los estados de una tarea informática: entrada, tratamiento, salida. De él partió la
idea de programa como un conjunto de instrucciones que controlan la operación de un ordenador.
13
Apuntes de Informática
- Boole (1815-1864).
Es el fundador de la teoría de la lógica matemática. Nos legó un álgebra para representar
cantidades lógicas (Verdadero ó Falso, Sí ó No) e investigó las operaciones que se pueden
realizar con estas cantidades.
- Turing (1912-1954).
Formuló el concepto general de máquina informática. Expreso sus ideas en términos de
una máquina abstracta denominada máquina de Turing. Aunque la máquina de Turing
sólo puede ejecutar una operación simple a la vez, identificó una amplia clase de problemas que podían resolverse en un número finito de pasos.
- Von Neumann (1903-1957).
Colaboró en el diseño y construcción de varios ordenadores, publicando en 1946 un artículo esbozando los principios generales de un ordenador electrónico digital. Los dos puntos más importantes de este artículo son:
1. Todos los datos e instrucciones se representan en código binario y se almacenaran
juntos en la memoria del ordenador.
2. El ordenador no hará distinciones entre datos e instrucciones.
1.2. Definición de sistema, subsistema y sistemas informáticos
El concepto de sistema es muy importante en el mundo de los ordenadores. Generalmente
se hace referencia a un ordenador en términos de sistema de ordenador. Básicamente un sistema es un conjunto de partes que trabajan juntos para realizar una tarea común. Los sistemas
se dividen a su vez en subsistemas, que son las encargadas de realizar cada una de las subtareas en que se divide la tarea principal. Un sistema desarrollado para realizar tareas en el
mundo de la informática es un sistema informático.
1.3. Noción de ordenador. Conceptos de hardware y software. Nociones de sistema operativo y redes locales.
Un ordenador es una máquina capaz de aceptar unos datos de entrada, efectuar con ellos
operaciones lógicas y aritméticas, y proporcionar la información resultante a través de un medio de salida. Todo ello sin intervención de un operador humano y bajo el control de un programa de instrucciones previamente almacenado en el propio ordenador. Así pues automáticamente acepta y procesa datos proporcionando los resultados de dicha tarea, que deben de
ser interpretados por el usuario del ordenador. Siendo el programa un conjunto de instrucciones que controlan el funcionamiento del ordenador y que están almacenadas en la memoria
14
TEMA 1 – Conceptos generales
del ordenador. Los datos y las instrucciones se almacenan juntos. En algunas circunstancias
las instrucciones se manejan como datos.
Se denomina hardware (hard=duro) a los componentes físicos de un ordenador, siendo el
software (soft=blando) los programas que dirigen el funcionamiento del ordenador. En teoría
la distinción entre ambos términos es clara, sin embargo conviene reconocer (por ejemplo)
que mientras las operaciones de multiplicación en algunos ordenadores se realizan directamente por el hardware en otros se realizan en forma de sumas múltiples controladas por el
software. Además los ordenadores tienen parte del software almacenado permanentemente en
memorias de solo lectura (ROM). Esto se conoce como firmware y es un concepto intermedio
entre el hardware y el software.
Será necesario disponer de un software diseñado específicamente para utilizar los recursos
de los que dispone el ordenador, de una forma eficiente y facilitando al usuario dicha gestión.
Este software se conoce como sistema operativo.
Normalmente se dispone de varios ordenadores conectados entre sí, facilitando así la utilización de los recursos, de que dispone cada uno, para el resto de usuarios. Estas configuraciones se denominan redes de ordenadores. Las que disponen sus recursos en un espacio reducido se denominan redes de área local (LAN), siendo redes de área distribuida aquellas que conectan ordenadores muy distantes entre sí (WAN).
1.4. Estructura de los ordenadores. Tipos de ordenadores: mainframes, miniordenadores y microordenadores. Descripción general de cada tipo.
De una forma muy general pueden considerarse tres tipos de ordenadores, de acuerdo a su
tamaño y complejidad. Estos son, por orden de importancia en cuanto tamaño y complejidad:
mainframes (grandes ordenadores), miniordenadores y microordenadores. Analizaremos los
módulos que constituyen las distintas configuraciones de estos ordenadores. Debe de hacerse
notar que estas configuraciones no son sino ejemplos. En la práctica hay una variación continua en tamaño y complejidad de los sistemas más pequeños a los más grandes. No hay pues
fronteras claramente definidas sino meramente orientativas. Cabe citar un fuerte incremento
en prestaciones de los microordenadores, que en entornos concretos y configuraciones concretas se introducen claramente en los miniordenadores.
En el extremo más alto de la escala están los mainframes, con una potencia (y un coste)
de decenas de miles de veces la de un microordenador, que es la parte mas baja de la escala.
En la figura siguiente se representa un mainframe típico que se caracteriza por tener varias
unidades de proceso y una gran variedad de dispositivos periféricos. Se observa la existencia
de un procesador de terminales (front-end), encargado de controlar el flujo de datos entre los
procesadores principales y los distintos periféricos. Se necesita también un procesador de comunicaciones independiente, encargado de controlar el flujo de datos entre los terminales y
los enlaces de comunicaciones. Un mainframe puede soportar cientos de terminales. Una unidad de control de los dispositivos de almacenamiento masivo regula el flujo de datos entre las
distintas unidades de almacenamiento.
15
Apuntes de Informática
El procesador de terminales, el de comunicaciones y el controlador de los sistemas de almacenamiento masivo son por sí solos procesadores muy potentes. Disponen de facilidades
para almacenar una cierta cantidad de datos, para dirigir los datos a un canal determinado y
para traducir datos de un código a otro.
Una unidad esencial en todos los mainframes, aunque carece de conexiones de datos con las
demás unidades, es una fuente de alimentación ininterrumpida. Este dispositivo estabiliza la
entrada de energía eléctrica y la supervisa continuamente, de tal forma que los cortes y microcortes de luz que puedan afectar al sistema informático por su duración son filtrados, entrando
en servicio las baterías de alimentación para asegurar el suministro de energía eléctrica.
Mainframe típico
La siguiente figura representa las unidades típicas de un ordenador de tamaño medio y el
flujo de datos entre ellas. El ordenador podría ser un mainframe pequeño o un miniordenador
grande.
Ordenador típico de tamaño medio
16
TEMA 1 – Conceptos generales
Observamos que hay una única unidad de proceso, la unidad central de proceso. Los terminales y las unidades de disco están en menor número que en su hermano mayor, no cabe
esperar procesadores dedicados exclusivamente a los terminales.
Obviamente, se han abaratado costes y perdido potencia en cálculo y en comunicaciones.
Se soportan, pues, menos terminales y menos dispositivos como impresoras, plotters u otros.
La consola del operador permite a la persona encargada del sistema (el operador) controlar
éste. Su apariencia recuerda a un terminal.
Aunque compuesto por unidades separadas, debe recordarse que un ordenador es un sistema. Es decir, las unidades que lo componen cooperan para lograr algún objetivo común. El
control detallado del sistema está en manos del procesador. El control general, en manos del
operador.
El microordenador tiene como procesador un solo chip, el microprocesador, estando en la
misma placa madre todos los restantes elementos como memoria, puertos de comunicaciones,
y circuitos de control. Sobre esta placa madre se establecen todas las conexiones de discos
flexibles, discos rígidos, y cualquier controladora que soporte el ordenador. Quedando todo en
una sola unidad, a falta de monitor y teclado. Es normal encontrarse el ordenador conectado a
una impresora.
Microordenador típico
1.5. Números binarios, octales y hexadecimales. Bits y bytes.
Los humanos estamos acostumbrados a representar los números en base 10, es decir, un
número tal como 1234 significa en realidad 1×103+2×10 2+3×10 1+4×10 0. Esta representación
se puede hacer también cambiando el 10 por cualquier número entero positivo, b. En ese caso
se habla de representación de los números en base b, y cada número entero positivo admite
una representación única de la forma an×bn+an-1×bn-1+...+a1×b1+a 0×b 0 los dígitos (ai) en ese
caso son números del 0 al b-1.
17
Apuntes de Informática
Los ordenadores emplean como base para representar los números el 2, por tanto los dígitos en dicha base son sólo 0 y 1. Los números representados en dicha base se llaman números binarios. Para distinguir en que base se escribe un número se suele poner un subíndice,
por ejemplo: 1010 = 1010 2, 123410 = 10011010010 2. Como se puede observar, para representar
números pequeños en base 2 hace falta poner muchas cifras, por ello también se emplean mucho las bases 8 y 16. Los números representados en dichas bases se llaman respectivamente
octales y hexadecimales. Para pasar un número de base 2 a base 8 (= 23) sólo hay que agrupar
las cifras del original de tres en tres y cambiar 000 por 0, 001 por 1, ... y 111 por 7. Por ejemplo 123410 = 10.011.010.010 2 = 2322 8. Para la base 16 los dígitos son del 0 al 15, como se
quieren representar con una sola cifra se usa 10 = A, 11 = B, ..., 15 = F. Para pasar un número
de base 2 a base 16 (= 24) se agrupan las cifras de cuatro en cuatro, por ejemplo: 123410 =
100.1101.00102 = 4D2 16. Las conversiones en sentido contrario son también inmediatas, es
suficiente cambiar cada dígito hexadecimal por los cuatro binarios que le corresponden.
Dado que en el ordenador todos los objetos se representan en binario, la unidad básica de
información es un dígito binario (en inglés binary digit) y se denomina bit. Por ejemplo, como el número 1234 10 necesita 11 dígitos binarios para representarse se dice que es un número
de 11 bits.
Como el bit es una cantidad pequeña, los ordenadores agrupan los datos en bloques de varios bits. Los primeros ordenadores empleaban grupos de 8 bits, es lo que se llama byte, y
pueden contener 28 = 256 números distintos. Los ordenadores actuales emplean 16, 32 o incluso 64 bits, pero, por mantener la compatibilidad con los anteriores, la memoria se sigue
midiendo en bytes.
Los múltiplos del byte son el Kilobyte (que se abrevia Kb), el Megabyte (abreviado Mb),
el Gigabyte (abreviado Gb) y el Terabyte (abreviado Tb); pero en el caso de los ordenadores 1
Kb no son 1000 bytes ya que 1000 no es una potencia de 2, la potencia de 2 más próxima es
210 = 1024, por lo tanto 1 Kb = 1024 bytes. Lo mismo ocurre para el resto como se resume en
la tabla siguiente:
Unidad
Kilobyte
Megabyte
Gigabyte
Terabyte
Símbolo
Kb
Mb
Gb
Tb
Bytes
210
220
230
240
Equivalencia
1024 bytes
1024 Kb
1024 Mb
1024 Gb
1.6. Cambio de base.
Pese a que las conversiones entre base 2 y base 8 y 16 son prácticamente directas,
existe un sistema general para realizar el cambio de una base a otra. El paso de cualquier
base a base 10:
3B716 = 3 x 16 2 + 11 x 161 + 7 x 160 = 95110
Inversamente, si queremos pasar de base 10 a cualquier otra base, habrá que realizar sucesivas divisiones por la base y tomar los restos:
18
TEMA 1 – Conceptos generales
1534 16
94
14
95
15
16
5
153410 = 5FE 16
donde 5 es el último cociente (menor que la base) y los restantes dígitos son los restos en orden inverso.
Para números con decimales, el paso de binario a decimal es inmediato, es suficiente con
poner el número en forma de productos por potencias de 2 y efectuar las operaciones, por
ejemplo: 1100.11101012=2 3 + 22 + 2-1 + 2-2 + 2-3 + 2-5 + 2-7 = 8 + 4 + 0.5 + 0.25 + 0.125 +
0.03125 + 0.0078125 = 12.9140625
Para convertir números con parte decimal de decimal a binario, se hace de forma independiente. Para la parte entera se utiliza lo visto anteriormente y para la parte decimal, lo que
hacemos es multiplicaciones sucesivas por la base y la parte entera nos da los decimales, y la
fraccionaria se emplea para repetir.
Ejemplo:
8.687510 = 1000.10112 = 1 x 23 + 1 x 2-1+ 1 x 2 -3 + 1 x 2 -4
810 = 10002
0.6875
×
2
1.3750
0.3750
×
2
0.7500
0.7500
×
2
1.5000
0.5000
×
2
1.0000
0.687510 = 0.10112
El proceso acaba cuando la parte decimal es igual a cero. Si esto no ocurre, habrá que
aproximar, eligiendo el número de bits que equivalga a la precisión que tengamos en el decimal, cada dígito son 1/log10(2) (aproximadamente 3.3) bits.
1.7. Operaciones aritméticas sencillas en binario.
Para sumar números, tanto en base 2 como hexadecimal, se sigue el mismo proceso que en
base 10:
1010 10102
+ 0011 11002
1110 01102
Podemos observar que la suma se desarrolla de la forma tradicional; es decir: sumamos
normalmente, salvo en el caso de 1 + 1 = 102, en cuyo caso tenemos un acarreo de 1 (lo que
nos llevamos).
Si los números tienen parte decimal, como en el caso de la base 10, hay que alinear los
números por el punto a la hora de sumar.
El producto se realiza también de forma análoga. Supongamos que queremos multiplicar
1011 por 101, el proceso es el siguiente:
19
Apuntes de Informática
10112
× 1012
1011
0000
1011
1101112
Si pasamos los números anteriores a decimal, obtenemos 1011 2=11, 101 2=5 y
1101112=55; con lo que se comprueba que en efecto la operación es correcta.
Si tenemos decimales, se opera como si fueran enteros, poniendo al final tantos decimales
como la suma de los que tengan ambos operandos.
Resumiendo, la suma y el producto se realizan de forma análoga a como se hacen en decimal, pero empleando las siguientes tablas para realizar las operaciones:
+
0
1
0
0
1
1
1
10
×
0
1
0
0
0
1
0
1
EJERCICIOS
1. Escribir el número 12345 en binario, octal y hexadecimal.
2. Convertir a decimal el número binario 10101.11.
3. Sumar y multiplicar los números binarios 101110 y 1001. Comprobar el resultado pasando a decimal los operandos y los resultados.
4. Sumar y restar en binario los números 110111 y 101001.
20
Descargar