El documento describe la evolución de las computadoras desde dispositivos antiguos como el ábaco hasta los ordenadores modernos. Comenzó con dispositivos mecánicos como la Pascalina en el siglo XVII y la máquina analítica de Babbage en el siglo XIX. Los primeros ordenadores electrónicos aparecieron en la década de 1940 y desde entonces han pasado por varias generaciones con mejoras en la miniaturización y velocidad. Actualmente, los ordenadores se basan en circuitos integrados y microprocesadores.
1. SEMANA 02 - 1SEMANA 02 - 1
Estructura de un ComputadorEstructura de un Computador
2. Evolución de las computadorasEvolución de las computadoras
La historia conocida de los artefactos que calculan o computan, se
remonta a muchos años antes de Jesucristo.
El Ábaco
Usa cosas para contar, ya sea los dedos, piedras, conchas, semillas.
El otro es colocar esos objetos en posiciones determinadas. Sirve
hasta el día de hoy, para realizar complejos cálculos aritméticos.
3. Evolución de las computadoras
La Pascalina
La primera máquina de calcular mecánica, un precursor del
ordenador digital, fue inventada en 1642 por el matemático francés
Blaise Pascal. Utilizaba una serie de ruedas de diez dientes que
representaba un dígito del 0 al 9.
Las ruedas estaban conectadas de tal manera que podían sumarse
números haciéndolas avanzar el número de dientes correcto.
4. Evolución de las computadorasEvolución de las computadoras
La máquina analítica
Elaborada en el siglo XIX el británico Charles Babbage.
Tenía las características de un ordenador moderno. Incluía un flujo
de entrada en forma de paquete de tarjetas perforadas, una
memoria, un procesador y una impresora.
5. Generación de las computadoras (ordenadores)Generación de las computadoras (ordenadores)
Primeros Ordenadores
Los ordenadores analógicos comenzaron a construirse a
principios del siglo XX. Los primeros modelos realizaban los
cálculos mediante ejes y engranajes giratorios.
Ordenadores electrónicos
1944 aparece la primera computadora, al modo actual, que se
pone en funcionamiento. El Dr. Howard Aiken, la presenta con el
nombre de Mark I.
6. Generación de las computadoras (ordenadores)Generación de las computadoras (ordenadores)
Primera Generación (1958)
Sistemas constituidos por tubos de vacío, desprendían bastante
calor y tenían una vida relativamente corta.
Máquinas grandes y pesadas. Alto consumo de energía.
Almacenamiento de la información en tambor magnético interior.
7. Generación de las computadoras (ordenadores)Generación de las computadoras (ordenadores)
Segunda Generación (1959-1964)
Transistor como componente principal. Disminución del tamaño.
Disminución del consumo de energía y de la producción del calor.
Mayor rapidez (ms.)
Instrumentos de almacenamiento: cintas y discos.
Mejoran los dispositivos de entrada y salida. Aumenta la
confiabilidad.
8. Generación de las computadoras (ordenadores)Generación de las computadoras (ordenadores)
Tercera Generación (chips)(1964-1971)
Circuito integrado. Menor consumo de energía.
Reducción de espacio. Aumento de fiabilidad y flexibilidad.
Mayor capacidad de almacenamiento. Rapidez en la respuesta.
Generalización de lenguajes de programación de alto nivel.
Compatibilidad para compartir software entre diversos equipos
9. Generación de las computadoras (ordenadores)Generación de las computadoras (ordenadores)
Cuarta Generación (1971-1982)
Se minimizan los circuitos, aumenta la capacidad de
almacenamiento.
El microprocesador: controla las funciones del ordenador.
Memorias Electrónicas: resultan más rápidas.
Sistema de tratamiento de base de datos
Reducen el tiempo de respuesta. Aparece el Multiproceso.
Gran expansión del uso de las Computadoras.
10. Generación de las computadoras (ordenadores)Generación de las computadoras (ordenadores)
Generación posterior y la Inteligencia Artificial (1982-)
Mayor velocidad y Mayor miniaturización de los elementos.
Aumenta la capacidad de memoria.
Lenguajes de programación: PROGOL (Programming Logic) y
LISP (List Processing).
Máquinas activadas por la voz.
Características de procesamiento similares a las secuencias de
procesamiento Humano.
Multiprocesador (Procesadores interconectados).
12. Arquitectura de computadorasArquitectura de computadoras
La Arquitecturas de Computadores es parte de los
Sistemas Digitales y constituye el fundamento de los
llamados Sistemas de Computación.
Los computadores constituyen sin duda el área de mayor
dinamismo e innovación con un crecimiento
espectacular desde su introducción alrededor del año
1940.
Los computadores han cambiado la sociedad y lo
seguirán haciendo.
13. Arquitectura de computadorasArquitectura de computadoras
¿Por que estudiar Arquitecturas?
Conocer la arquitectura de un sistema permite construir Software
de mayor desempeño.
Ubicuidad de los procesadores: electrodomésticos, PDA
(Asistente digital personal u ordenador de bolsillo), celulares
etc...
Desarrollo de sistemas embebidos.
Desarrollo de procesadores propios.
14. Arquitectura de computadorasArquitectura de computadoras
La arquitectura esta determinada por los atributos de un sistema
que son visibles para un programador.
Por ejemplo...
Conjunto de instrucciones.
Nº de Bits utilizados.
Mecanismos E/S.
Direccionamiento de memoria.
etc..
15. Evolución tecnológicaEvolución tecnológica
Los Procesadores han aumentado su velocidad a tasas increíbles,
debido principalmente a la disminución del tamaño de sus
componentes.
Aumento del tamaño y velocidad de las memorias; y la velocidad
del sistema E/S.
El desempeño relativo por unidad de costo tiene un crecimiento
explosivo.
16. Evolución tecnológicaEvolución tecnológica
Ley de Moore: “El desarrollo de las tecnologías de fabricación permite que el
numero de transistores integrados en los microprocesadores se duplique
cada 18 meses.”
18. OrganizaciónOrganización
La organización tiene referencia a las unidades
funcionales y sus interconexiones. No tiene un impacto
para un programador, por lo que cambios en ella son
transparentes al momento de la implementación. Sin
embargo es necesario tenerla en cuenta.
Por ejemplo...
Detalles de HW internos.
Señales de control
Tecnología de memoria utilizada.
19. Arquitectura y OrganizaciónArquitectura y Organización
Aspectos que intervienen en la arquitectura de
un sistema:
Tecnología.
Aplicaciones.
Sistemas Operativos.
Lenguajes de Programación
20. ProcesadoresProcesadores
Los procesadores sufren un incremento anual
de su frecuencia cercano al 20 %.
La capacidad lógica de los procesadores tiene
un incremento de un 30 % anual.
21. Memoria RamMemoria Ram
Las memorias de acceso aleatorio (RAM) han ido
aumentando en capacidad, llegando a un 60% por
año.
No así su velocidad de acceso la que solo alcanza un
crecimiento de un 10 % anual.
24. IntroducciónIntroducción
En el mundo que vivimos estamos rodeados de
información, se dice la llamada “Sociedad de la
información”.
Pero, ¿Que es la información?
25. Definición de InformaciónDefinición de Información
Datos: Representación simbólica de un atributo
o característica. Un dato por si solo no dice
nada.
Información: Conjunto de datos procesados que
nos permiten realizar operaciones o tomar
decisiones.
26. Información analógica e InformaciónInformación analógica e Información
DigitalDigital
Comúnmente la información es procesada de 2 maneras:
analógica y digitalmente.
¿Cual es la diferencia entre información digital e
información analógica?
La representación de la información esta dada por
señales.
por lo que existen señales analógicas y señales digitales.
27. Información analógica e Información DigitalInformación analógica e Información Digital
Una señal se puede considerar
como una función en el tiempo g(t).
Una función g (t) continua en el
tiempo se dice que es una señal
analógica.
Por su parte, una señal digital es
una función discreta (niveles).
28. Información analógica e Información DigitalInformación analógica e Información Digital
Señales Analógicas:
Audio.
Instrumentos con agujas.
Señales Digitales:
TTL. (tecnología de construcción de circuitos electrónicos
digitales)
instrumentos con indicadores numéricos.
En la naturaleza todo es analógico, ya que físicamente todo
es continuo. Los computadores realizan sus operaciones
sobre información digital.
Es posible convertir la información analógica en información
digital y viceversa (ADC y DAC).
29. Información analógica e Información DigitalInformación analógica e Información Digital
¿Es mejor la información digital?
Se evitan errores debidos a cambios físicos, como la
temperatura, humedad, etc.
Se evitan los errores acumulativos.
31. Representación NuméricaRepresentación Numérica
Existen diversas representaciones numéricas.
Sin duda, las mas fáciles y cómodas de utilizar para
fines matemáticos, son las que se representan
mediante bases numéricas.
Las representaciones numéricas que utilizan bases,
son posicionales.
Es posible representar una misma cantidad
numérica, en diferentes bases.
32. Números decimalesNúmeros decimales
Forma general de expresar un numero en función de su base
k1k2k3 . . . km = k1 B∗ m−1
+ k2 B∗ m−2
+ · · · + kn-1 B∗ 1
+ km B∗ 0
donde B =base y ki =la cifra i .
Las cifras ki pueden ser dígitos entre 0 y B − 1.
33. Bases NuméricasBases Numéricas
La base mas común y natural de utilizar es la base 10, la que
corresponde a los números decimales.
En esta base estamos acostumbrados a realizar todas nuestras
operaciones de calculo.
Por ejemplo...
El numero 7523810 puede ser representado de la forma general, de
la siguiente forma:
7 10∗ 4
+ 5 10∗ 3
+ 2 10∗ 2
+ 3 10∗ 1
+ 8 10∗ 0
.
34. Números BinariosNúmeros Binarios
En el mundo digital, se utilizan generalmente
representaciones que tienen solo 2 estados discretos (0 o
1, on u off, etc...).
Para ello se utilizan los números binarios {0,1} cuya
base es 2.
Por ejemplo...
Si se tiene 10011102 corresponde a:
1 2∗ 6
+ 0 2∗ 5
+ 0 2∗ 4
+ 1 2∗ 3
+ 1 2∗ 2
+ 1 2∗ 1
+ 0 2∗ 0
= 781
35. Bases Numéricas
En la computación son muy útiles además las bases
octal(8) y hexadecimal(16).
La utilidad de estas bases, se debe a que pueden
representar información binaria de manera compacta
(8 y 16 bits).
36. Conversión de Bases Numéricas
Para la conversión desde la base decimal, a otra base, se
realizan divisiones sucesivas de los cocientes, por la base a la
cual se transformara. Rescatando en cada paso los restos de
las divisiones.
Por ejemplo...
Convertir 23410 a la base octal.
234 8
29 2
3 5 →23410 = 3528
0 3
37. Conversión de Bases Numéricas
Esta idea se puede extender además para números
fraccionarios.
En este caso es necesario tratar la parte entera y la parte
decimal, por separado.
Por ejemplo...
Convertir 23,437510 a la base binaria.
23 2 0,4375 2
11 1 0,875 2
5 1 1,750 2 →23,437510 = 10111,01112
2 1 1,500 2
1 0 1,000 2
0 1
38. Conversión de Bases Numéricas
Para realizar una conversión desde cualquier base a la base
decimal, es necesario aplicar la formula general propuesta
anteriormente:
Por ejemplo...
Convertir 724,348 a la base decimal.
7 8∗ 2
+ 2 8∗ 1
+ 4 8∗ 0
+ 3 8∗ −1
+ 4 8∗ −2
= 468,4375
39. Aritmética de los computadores
Los computadores tienen como unidad de
almacenamiento, solo la capacidad de distinguir entre 2
estados (on u off, 0 o 1, etc..).
Los computadores pueden realizar operaciones
aritméticas, por lo que requieren de algún dispositivo de
HW para almacenar los números que se estén operando.
Estos dispositivos se denominan registros.
los registros tienen un ancho en bits, definido por la
arquitectura. Actualmente los procesadores utilizan
registros de 32 o 64 bits.
40. El registro
Un registro se representa por un conjunto de bits (generalmente
8, 16, 32 o 64).
un ejemplo de un registro de 16 bits esta dado por:
1 1 0 0 1 0 1 1 0 0 0 1 1 0 1 1
Por convención, los grupos de 8 bits (b) se denominan bytes (B).
41. El registro
Podemos darnos cuenta, que si un numero debe ser
almacenado en un registro, entonces el tamaño máximo de este
numero esta limitado por el ancho del registro.
Con solo 16 bits el numero mas grande representable por un
registro es 216
− 1 = 65535.
Sin embargo, ¿Cuando hemos utilizado nuestros computadores
normales (de 32 bits), hemos podido trabajar con números
mayores a 232
− 1?
42. Aritmética de los computadores
Sin duda, al hablar de operaciones aritméticas se requiere
además que el computador sea capaz de trabajar con números
negativos y con números decimales.
¿Como se representa un numero negativo en un registro?
Existen diferentes formas de representar un numero negativo,
pero por convención el bit mas significativo del registro
representa el signo.
Numero positivo.
0100101100011011
Numero negativo.
1100101100011011
43. Números negativos
Hay 3 formas de representar números negativos:
Signo y Magnitud (S-M).
Complemento 1 (C-1).
Complemento 2 (C-2).
En estas 3 representaciones, los números
positivos quedan de la misma forma.
44. Signo y Magnitud
La idea de esta representación, es reservar el bit mas
significativo del registro, para el signo y en el resto de los
bits se almacena la magnitud.
En un registro de 16 bits, solo se utilizan 15 bits para la
magnitud, es decir, el rango representable en 16 bits es:
-32767 a 32767.
Ejemplo:
para representar el numero −1310 en un registro de 6 bits.
1 0 1 1 0 1
45. Complemento 1
La idea de esta representación es básicamente tomar un
numero positivo y luego complementar cada bit del registro
para transformarlo en negativo.
este mecanismo es bastante sencillo y rápido de realizar.
Ejemplo:
para representar el numero −1310 en un registro de 6 bits.
1 1 0 0 1 0
0 0 1 1 0 1
Primero se considera 1310
Luego se complementa cada bit
46. Complemento 2
Calcular primero el C-1 y luego sumar 1.
De esta forma, su calculo es bastante rápido y sencillo, por
lo que es muy fácil de implementar por Hardware.
Ejemplo:
para representar el numero −1310 en un registro de 6 bits.
0 0 1 1 0 1
1 1 0 0 1 0
1 1 0 0 1 1
0 0 0 0 0 1
13
13 en C-1
Se suma 1
-1310 en C-2
47. Códigos
Por código se entiende una relacion capaz de
llevar un conjunto de símbolos de un espacio
(dominio), a otro espacio diferente (codominio).
48. Código BCD
Por ejemplo para representar el numero 57310 se puede
convertir a binario,
resultando 57310 = 10001111012
Esta conversión resulta un poco larga, si pensamos que
se debe realizar por cada numero que queremos
representar.
Además, se debe tener conocimiento completo del
numero, para poder realizar la conversión
49. Código BCD
El código BCD establece una relacion que permite
convertir rápida y fácilmente los números decimales en
binarios.
Decimal BCD
0 0000
1 0001
2 0010
3 0011
4 0100
Decimal BCD
5 0101
6 0110
7 0111
8 1000
9 1001
51. Código BCD
Existen otros códigos, como por ejemplo el EBCDIC.
Por ejemplo el código ASCII (American Standard
Code of Information).
52. Código Gray
El código Gray tiene propiedades muy particulares,
porque es altamente utilizado.
Esta definido de la siguiente forma:
El código Gray de 1 bit, esta dado por {0, 1}.
El código se puede construir para k + 1 bits, dado el
código de k bits.
Para ello se hace una lista con el código Gray conocido
y se le anteponen 0’s. Luego se sigue la lista con el
código en orden inverso, y antepuesto por 1’s.