martes, 2 de abril de 2013

TALLER 4: CÓDIGO BINARIO



SISTEMA DE NUMERACIÓN BINARIO

APLICACIONES A LOS ORDENADORES

Hay 10 tipos de personas:

las que entienden el sistema binario y las que no

Sistemas de numeración.

En la actualidad usamos el sistema de numeración decimal. Utiliza 10 cifras y el valor de cada cifra depende de su posición en el número que representa. Por ejemplo en el número 999, la cifra 9 tiene tres valores diferentes: 900, 90 y 9.

En el sistema de numeración decimal, cualquier número se puede expresar combinando las cifras 0, 1, 2, 3, 4, 5, 6, 7, 8, y 9 y diferentes potencias de 10.

24 567 = 2 · 104 + 4 · 103 + 5 · 102 + 6 · 101 + 7 · 100

223,423 = 2 · 102 + 2 · 101 + 3 · 100 + 4 · 10-1 + 2 · 10-2 + 10-3

Al sistema de numeración decimal, se le denomina sistema de numeración en base 10.

Sistema de numeración binario.

El sistema de numeración binario combina dos cifras o dígitos (0 y 1) para representar cualquier número y potencias de 2. En este caso, los dígitos se llaman bits. A este sistema de numeración se le denomina sistema de numeración en base 2.

Para distinguir si estamos escribiendo un número en base 10 o en base 2, escribimos en el segundo caso un subíndice 2 a la derecha del número.

110010112 es un número en base 2

11001011 es un número en base 10.

Para expresar un número en base 2 en base 10 sólo tenemos que tener en cuenta que cada posición equivale a una potencia de 2 y después sumamos el resultado de todas las potencias:

110010112 = 1 · 27 + 1 · 26 + 0 · 25 + 0 ·24 + 1 · 23 + 0 · 22 + 1 · 21 + 1 · 20 =

= 128 + 64 + 8 + 2 + 1 = 203

Para expresar un número en base 10 en base 2, aplicamos el método de divisiones sucesivas. Si queremos expresar 45 en base 2, dividimos 45 entre 2 sin sacar decimales y después cada uno de los cocientes obtenidos hasta obtener un cociente 1. El último cociente y los restos obtenidos en orden inverso son la expresión en base 2 de 45


Sistema Binario y Digitalización

Los números que usan los ordenadores han de estar en el sistema binario, de manera que los datos son convertidos en dígitos. Puesto que los ordenadores  sólo reconocen dos tipos de mensajes: cuando hay corriente eléctrica el mensaje es sí y cuando no hay corriente, el mensaje es no.

Digitalizar es la acción de convertir información analógica en una serie de valores numéricos. Por ejemplo un escáner capta la información contenida en una foto y transforma esos datos en números, que una máquina puede interpretar y mostrar en un monitor.

El ordenador utiliza un conjunto de 8 dígitos binarios (0 y 1) para representar cualquier carácter, sea número o letra. Cada conjunto de 8 dígitos binarios se denomina byte (binary term) y cada uno de los ocho dígitos del byte se llama bit. Un bit puede brindar sólo dos clases de información: encendido– apagado, si – no, uno – cero.

Una vez que se ha digitalizado la información, se convierte en un conjunto de bits que puede ser preservado, manipulados y distribuido a través de un ordenador. De esta manera, los datos pueden ser procesados y manipulados con gran rapidez.

Para medir la cantidad de información que se puede almacenar, se utilizan los siguientes múltiplos del Byte: La abreviatura b se utiliza para bits y B para bytes.

Nibble o cuarteto: Es el conjunto de cuatro bits (1001).

Byte u octeto: Es el conjunto de ocho bits (10101010).

Kilobyte (Kb): Es el conjunto de 1024 bytes (1024*8 bits).210

Megabytes (Mb): Es el conjunto de 1024 Kilobytes (10242*8 bits).220

Gigabytes (Gb): Es el conjunto de 1024 Megabytes (10243*8 bits).230

 
Datos. Sistema ASCII.
Para introducir los caracteres, tratarlos en el sistema electrónico o almacenarlos en algún área de entrada en memoria, se usa un esquema de codificación predefinido para transformarlos en byte.

Los dos formatos más difundidos son el ASCII (American Standard Code of Information Interchange – Código estándar de EE.UU para intercambio de Información) y el EBCDIC (Extended Binary Code/Decimal Interchange Code – Código ampliado de intercambio decimal codificado en binario), que utilizan 8 bits para conformar un byte, en el que se almacena un carácter.

Mientras que EBCDIC utiliza 8 bits para formar un carácter, ASCII utiliza 7 bits para el mismo propósito. Por lo tanto en EBCDIC tenemos 256 combinaciones diferentes (28) para representar igual número de caracteres por byte, mientras que en ASCII la posibilidad se limita a 128 alternativas (27). La versión de ASCII extendido utiliza 8 bits o sea 256 combinaciones diferentes (28) usando un dígito de paridad que depende del ordenador que se utiliza.

Para digitalizar textos se utiliza el código ASCII (tecla Alt + número de código). Los códigos de 0 al 31 no se utilizan para caracteres. Éstos se denominan caracteres de control ya que se utilizan para acciones como retorno de carro (CR) o timbre (BEL). Los códigos 65 al 90 representan las letras mayúsculas y los códigos 97 al 122 representan las letras minúsculas
 
HISTORIA DE LOS ORDENADORES

LAS PRIMERAS MÁQUINAS
Las primeras máquinas que construyó el hombre para procesar datos son las máquinas de calcular. Damos ejemplos de algunas de ellas.
El ábaco
Un ábaco es un objeto que sirve para facilitar cálculos sencillos (sumas, restas y multiplicaciones). Normalmente, consiste en cierto número de cuentas engarzadas en varillas, cada una de las cuales indica una cifra del número que se representa. Este elemento sirve mucho a los niños para aprender las operaciones básicas por lo que es muy usado en niveles básicos.

Es un instrumento de cálculo que utiliza cuentas que se deslizan a lo largo de una serie de alambres o barras de metal fijadas a un marco para representar las unidades, decenas, centenas, etc.

Probablemente de origen babilónico en los años 3000-3500 a. C, es el precursor de la calculadora digital moderna. Consta de un marco de madera dividido en dos partes, contiene una serie de varillas verticales que corresponden cada una a un dígito o cifra. En la parte inferior de cada varilla hay cinco discos denominados cuentas, en la superior 2 discos denominados quintas. Hacia el 2600 a. C. apareció el ábaco chino, denominado Suan–Pan. Y en forma similar nació en Japón otro modelo de ábaco que se denominó Soroban.

Utilizado por mercaderes en la Edad Media a través de toda Europa y el mundo árabe, fue reemplazado en forma gradual por la aritmética basada en los números indoárabes. Aunque poco usado en Europa después del siglo XVIII, todavía se emplea en Medio Oriente, China, Japón y Corea. El ábaco es considerado como el más antiguo instrumento de cálculo, adaptado y apreciado en diversas culturas.
 
 
 

Máquina de sumar de Leonardo Da Vinci


La máquina de sumar de Leonardo Da Vinci fue una máquina mecánica de sumar inventada por Leonardo da Vinci (1452-1519). Fue descubierta en 1967 por investigadores estadounidenses en la Biblioteca Nacional de Madrid en el Códice Madrid. Está formada por una serie de engranajes con una relación de 10 a 1 que representan los dígitos.

Después del descubrimiento de los manuscritos, un experto de la Universidad de Massachusetts en la creación de réplicas funcionales de da Vinci realizó en 1968 una réplica de la máquina de Leonardo usando el Códice de Madrid y el códice Atlántico.

Tras un año de controversia, se llevó a cabo una evaluación académica en la universidad de Massachusetts para confirmar la confiabilidad de la réplica pero se objetaba que el diseño no era de una calculadora, sino que representaba a una máquina radial

La Pascalina

Fabricada en 1642 por el francés Blaise Pascal, a los 19 años, con la intención de ayudar a su padre, alto funcionario de las finanzas nacionales. Es la primera máquina sumadora mecánica y simula el funcionamiento del ábaco a base de ruedas dentadas. Estaba basada en un antiguo diseño de los griegos para calcular las distancias que recorrían los carruajes y realizaba operaciones de sumas y restas de 8 dígitos mostrando el resultado por una serie de ventanillas.

El principio básico de esta máquina calculadora se usa todavía en nuestros días en algunos pluviómetros y cuentakilómetros. El mecanismo estaba operado por una serie de discos asociados a ruedas, que llevaban marcados los números desde el cero al nueve en sus circunferencias. Cuando una rueda daba una vuelta completa, avanzaba la otra rueda situada a su izquierda. Naturalmente había unos indicadores sobre los anteriores discos, que eran los encargados de dar la respuesta buscada.

En conjunto el engranaje proporcionaba un mecanismo de respuesta idéntico al resultado que se puede obtener empleando la aritmética. No obstante, la Pascalina tenía varios inconvenientes, de los que el principal era, que sólo el mismo Pascal era capaz de arreglarla.

 
En 1650 Patridge, basándose en los descubrimientos de Napier, inventó la Regla de Cálculo, pequeña regla deslizante sobre una base fija en la que figuraban diversas escalas para la realización de determinadas operaciones. Este dispositivo de cálculo ha sido muy utilizado hasta los años 60 cuando las calculadoras electrónicas fueron sustituidas por las calculadoras electrónicas.

 
En el año 1671, Leibniz perfecciona la Pascalina incorporando a su mecanismo la multiplicación, la división y el cálculo de raíces cúbicas. Llamó a su invento la Calculadora Universal o Rueda Escalada de Leibnitz En 1679 crea y presenta el modo aritmético binario basado en ceros y unos, que usan actualmente los ordenadores para procesar la información .

La máquina de Jacquard

El francés Joseph Jacquard construyó en el año 1805 un telar automático que realizaba un control sobre las agujas tejedoras, utilizando tarjetas perforadas que contenían los datos para el control de las figuras y dibujos a tejer. El telar de Jacquard se considera como la primera máquina mecánica programada.
  • Proporciona un modelo de automatización de los procesos de producción diversificada (opuesta a la de un solo propósito o específica).
  • Por primera vez se realiza una codificación de la información. Las tarjetas son la información suministrada (input) y el tejido es el resultado (output).
  • Por primera vez se realiza la programación de las instrucciones. La cadena de tarjetas perforadas prefigura la organización de los procesos mediante técnicas de programación.


La locura de Babbage

 
Charles Babbage (1791-1871), visionario científico y matemático inglés, fue el más claro precursor del hardware computacional, hasta el punto de que se le considera el padre histórico de la computación.

Preocupado desde su juventud por los frecuentes errores cometidos en el cálculo de las tablas numéricas (y en la posterior impresión de sus resultados), ideó la Máquina de Diferencias (Difference Engine) que funciona con ruedas dentadas. Su modelo definitivo es de 1823 y calcula e imprime tablas matemáticas de hasta veinte cifras con ocho decimales y polinomios de sexto grado. Babbage, subvencionado por el gobierno británico desde 1823, trabajó durante años en el perfeccionamiento de su Máquina de Diferencias, pero finalmente tuvo que abandonar el proyecto, al agotarse la ayuda económica antes de haber podido construir una máquina con el refinamiento técnico que exigía su diseño. Esta máquina contaba con todos los elementos que le asemejan a un procesador moderno.

Después se interesó en otro proyecto más ingenioso, la Máquina Analítica diseñada para solucionar problemas matemáticos complejos. Su socia, la matemática británica Augusta Ada Byron, sugirió la idea de que las tarjetas perforadas pudieran adaptarse al motor de Babbage. Una de sus geniales ideas fue la de que un cálculo grande podía contener muchas repeticiones en la misma secuencia de instrucciones recurrentes. Así describió lo que nosotros ahora llamamos un “bucle” y una “subrutina”. Ada diseñó por sí misma un programa para la máquina de Babbage que calculaba los números de Bernoulli. Éste es el primer programa de computadora que se reconoce; una especie de software demasiado avanzado para la época en que fue concebido, por lo que algunas personas la consideran como la primer programadora.

Sus ideas fueron extendidas un siglo más tarde por el matemático británico Alan M. Turing y por John Von Neumann.

La máquina Analítica contaría con un procesador con la capacidad de realizar 60 operaciones por minuto, una memoria de 1000 números de 50 cifras, un flujo de entrada en forma de paquete de tarjetas perforadas, una impresora para hacer permanente el registro, miles de engranajes y mecanismos y la necesidad de la energía equivalente a la de la locomotora.
 
Charles Babbage trabajó hasta su muerte en su Máquina Analítica (a la que los escépticos bautizaron como La locura de Babbage), de la que sólo pudo construir algún fragmento. Sin embargo, sus notas describían asombrosamente casi todas las características incorporadas hoy en la moderna computadora electrónica. Si Babbage hubiera vivido en la era de la tecnología electrónica y los componentes de precisión, seguramente habría adelantado varias décadas el nacimiento de la computadora electrónica. Sin embargo, su obra cayó en un olvido tan completo que algunos pioneros del desarrollo de la computadora electrónica ignoraron por completo sus ideas sobre memoria, impresoras, tarjetas perforadas y control de programa-secuencia.

El fundamento teórico de los ordenadores: Boole

En 1854 el matemático inglés George Boole desarrolló la teoría de álgebra de Boole, que permitió a sus sucesores el desarrollo matemático del álgebra binaria y con ella la representación de circuitos lógicos, llamada “Teoría de los circuitos lógicos”. En el álgebra de Boole sólo se usan los dígitos 0 y 1 y las operaciones de suma y producto que se corresponden con los valores VERDADERO, FALSO, las conjunciones "Y", las disyunciones "O" y las negaciones "NOT". De esta manera se pueden diseñar circuitos lógicos que son la base para el funcionamiento de los ordenadores.


Máquina tabuladora de Hollerith. El nacimiento de IBM

 El funcionario de la oficina del censo de Estados Unidos,Hollerith, diseñó una Máquina Censadora o Tabuladora en el año 1885 que leía tarjetas perforadas para facilitar la realización del censo de su país. Observó que la mayoría de las preguntas tenían como respuesta un sí o un no, lo que hizo idear una tarjeta perforada para contener la información. Su máquina fue capaz de reducir el trabajo manual a la tercera parte,  redujo de 10 a 3 años la publicación del censo de 1890 y supuso un ahorro de 5 millones de dólares.

En 1895 Hollerith incluyó en su máquina tabuladora la operación de sumar con el fin de utilizarla para la contabilidad de los Ferrocarriles Centrales de Nueva York. Fue la primera aplicación comercial y lo introdujo en el mundo de los negocios.

Los resultados de las máquinas tabuladoras tenían que llevarse al corriente por medios manuales, hasta que en 1919 la Computing-Tabulating-Recording-Company anunció la aparición de la impresora/listadora. Para reflejar mejor el alcance de sus intereses comerciales, en 1924 la compañía cambió el nombre por el de International Bussines Machines Corporation (IBM).

Desde los años cincuenta, la tecnología de las tarjetas perforadas se perfeccionó con la implantación de más dispositivos con capacidades más complejas. La familia de las máquinas electromecánicas de contabilidad (EAM: Eloctromechanical Accounting Machine) de dispositivos de tarjeta perforada comprende: la perforadora de tarjetas, el verificador, el reproductor, la perforación sumaria, el intérprete, el clasificador, el otejador, el calculador y la máquina de contabilidad.

Algunos cuartos de máquinas asemejaban la actividad de una fábrica: las tarjetas perforadas y las salidas impresas se cambiaban de un dispositivo a otro en carros manuales; el ruido que producía eran tan intenso como el de una planta ensambladora

Los primeros ordenadores

Mark I.

Howard Aiken, de la Universidad de Harvard, desarrolla en 1937 la idea de Babbage junto con un equipo de científicos de su departamento e ingenieros de IBM, dando como resultado la construcción de una calculadora numérica basada en el uso de relés electromagnéticos, ruedas dentadas y embragues electromecánicos, configurando la primera computadora electromecánica.
 

La computadora ABC
 
John V. Atanasoff (profesor de la Universidad de Iowa) y Berry, un estudiante de dicha universidad, construyeron una máquina electrónica que operaba en binario, fue la primera máquina de calcular digital: la Atanasov Berry Calculator.

 
 
ENIAC

John W. Mauchly y John Presper Eckert, desarrollaron en la Universidad de Pennsylvania una máquina capaz de calcular tablas de trayectoria para el ejército estadounidense. El proyecto se terminó en 1946 y se llamó ENIAC (Electronic Numerical Integrator And Computer: integrador numérico y calculador electrónico). La ENIAC, construida para aplicaciones de la Segunda Guerra mundial, se terminó en treinta meses por un equipo de científicos que trabajaban contrarreloj.

La ENIAC supuso un hito en la tecnología de la computación. Era mil veces más veloz que sus predecesoras electromecánicas y poseía la capacidad de realizar 5.000 operaciones aritméticas en un segundo. No obstante, la máquina pesaba 30 toneladas, ocupaba un espacio de 450 m2 (llenaba todo un sótano de la universidad), contenía 18.000 bulbos (tubos de vacío), requería su completo sistema de aire acondicionado y tenía que programarse manualmente conectándola a 3 tableros que contenían más de 6.000 interruptores. Además, introducir un nuevo programa era un proceso muy tedioso que requería días o incluso semanas.

A diferencia de las computadoras actuales, que operan con un sistema binario, la ENIAC operaba con el sistema decimal. La ENIAC requería una gran cantidad de electricidad (se dice que bajaba la intensidad de las luces de Filadelfia siempre que se activaba). La imponente escala y las numerosas aplicaciones generales de la ENIAC señalaron el comienzo de la primera generación de computadoras.



La computadora EDVAC

En 1945, el ingeniero y matemático húngaro John von Neumann publicó un artículo acerca del almacenamiento de programas. El concepto de programa almacenado permitía la lectura de un programa dentro de la memoria de la computadora y la posterior ejecución de las instrucciones del mismo sin tener que volverlas a escribir.

Hacia 1948, von Neumann se integra en el equipo de Eckert y Mauchly auspiciado por el Departamento de Defensa de los Estados Unidos. Este nuevo equipo crea la computadora EDVAC (Electronic Discrete Variable Automatic Computer), la primera en aplicar la idea básica de von Neumann: permitir que en la memoria coexistan datos e instrucciones, para que entonces la computadora pueda ser programada en un lenguaje, y no por medio de alambres que eléctricamente conecten varias secciones de control, como en la ENIAC.

La EDVAC tenía aproximadamente cuatro mil bulbos y usaba un tipo de memoria basado en tubos llenos de mercurio por donde circulaban señales eléctricas sujetas a retardos.

Los programas almacenados dieron a las computadoras mucha más flexibilidad y confiabilidad, haciéndolas más rápidas y menos sujetas a errores que los programas mecánicos. Una computadora con capacidad de programa almacenado podría ser utilizada para varias aplicaciones, cargando y ejecutando el programa apropiado.

En  1951 se construyó UNIVAC – I (por los creadores de la ENIAC) la primera computadora creada en serie. Después se construyeron las MANIAC I, MANIAC II y la UNIVAV II.

Charles Babbage lanzó la idea del uso de las tarjetas perforadas como un modo de controlar una calculadora mecánica que él mismo diseñó. Herman Hollerith desarrolló la tecnología de procesamiento de tarjetas perforadas de datos para el censo de los Estados Unidos de América de 1890 y fundó la compañía Tabulating Machine Company (1896) la cual fue una de las tres compañías que se unieron para formar la Computing Tabulating Recording Corporation (CTR), luego renombrada IBM. IBM manufacturó y comercializó una variedad de unidades máquinas de registro para crear, ordenar, y tabular tarjetas perforadas, aún luego de expandirse en las computadoras sobre el final de la década del 50. IBM desarrolló la tecnología de la tarjeta perforada como una herramienta poderosa para el procesamiento de datos empresariales y produjo una línea extensiva de unidades máquinas de registro de propósito general. Para el año 1950, las tarjetas IBM y las unidades máquinas de registro IBM se habían vuelto indispensables en la industria y el gobierno. Do not fold, spindle or mutilate (No doblar, enrollar o mutilar) es una versión generalizada de la advertencia que aparecía en algunas tarjetas perforadas, que se convirtió en un lema en la era de la post-Segunda Guerra Mundial (aunque mucha gente no tenía idea de lo que significaba spindle)

Una tarjeta perforada típica para guardar datos, en blanco.

Desde 1900 hasta 1950, las tarjetas perforadas fueron el primer medio para el ingreso y almacenamiento de datos, y el procesamiento en computación institucional y según los archivos de IBM: "Por 1937 [...] IBM tenía 32 prensas trabajando en Endicott, N.Y., imprimiendo, cortando y apilando de 5 a 10 millones de tarjetas perforadas cada día".1 Las tarjetas perforadas eran usadas incluso como billetes legales, así como cheques y bonos de ahorro del gobierno de los Estados Unidos de América. Durante la década del 60, las tarjetas perforadas fueron gradualmente reemplazadas como primera medida por almacenamiento de datos en cintas magnéticas,
Las tarjetas perforadas fueron todavía comúnmente usadas para ingreso de datos y programación hasta mediados de la década del 70, cuando la combinación de almacenamiento de discos magnéticos de más bajo costo y terminales interactivas asequibles sobre minicomputadoras más baratas hicieron obsoletas a las tarjetas perforadas también para este rol. 


 

GENERACIONES DE COMPUTADORAS

Los cambios tecnológicos producidos han originado una clasificación de las computadoras en generaciones. Las generaciones son las siguientes:

Primera generación (1940 – 1952): Todas aquellas diseñadas a base base de válvulas de vacío como elemento principal, de aplicación en los campos científicos y militar. Utilizan como lenguaje de programación el lenguaje de máquina y como soporte de información, tarjetas perforadas y cinta perforada.
Segunda generación (1952 – 1964): Se sustituye la válvula de vacío por el transistor, las máquinas ganaron potencia y fiabilidad, perdiendo tamaño, consumo y precio. Los campos de aplicación fueron científico, militar, administrativo y de gestión. Comenzaron a usarse los lenguajes de programación evolucionados (ej. Ensamblador y de alto nivel como Fortran, Cobol y Algol). Como memoria el tambor magnético y memoria externa la cinta magnética.

Tercera generación (1964 – 1971): El elemento es el circuito integrado (encapsulamiento de una gran cantidad de componentes : resistencias, condensadores, diodos y transistores) conformando uno o varios circuitos con una función determinada, sobre una pastilla de silicona o plástico. Asimismo el software evolucionó con grandes desarrollos en sistemas operativos. Se comenzó a usar las memorias de semiconductores y los discos magnéticos.
 
Cuarta generación (1971 – 1981): Aparece el microprocesador, la integración de toda la CPU en un sólo circuito integrado, Se utiliza el disquete (floppy disk), aparecen una gran cantidad de lenguajes de programación, redes de transmisión de datos (teleinformática).

Quinta generación (1981 ...) : Inteligencia Artificial. Lenguajes de quinta generación. Redes integradas. Multimedia (integración de datos, imágenes y voz), etc
 
PRESENTACIONES: JUGAMOS CON EL SISTEMA BINARIO






ENLACES A PÁGINAS RELACIONADAS


El Código ASCII


Tabla de Códogos ASCII

1 comentario: