domingo, 25 de diciembre de 2016

Computación Aplicada

EVOLUCIÓN HISTÓRICA DE LA COMPUTACIÓN.

Desde tiempos inmemorables que el ser humano ha desarrollado sistemas u objetos que faciliten los cálculos matemáticos, construyendo varios instrumentos para hacerlos, por ejemplo, tabla de cálculo, ábaco, calculadora, etc.

 La primera versión de la regla de cálculo aparece en el año de 1620, en Inglaterra a cargo de Edmundo Gunter y William Ougntred; es hasta el año de 1750 cuando Leadbetter le incorpora la regleta imprimiéndole el aspecto actual.
La utilización de accesorios mecánicos ocurre hasta el siglo XVII. Casi simultáneamente, Schickard (1624) y Blaise Pascal (1645), conciben y realizan mecanismos capaces de sumar y construidos con engranajes de 10 dientes, cada diente representaba a uno de los dígitos del 0 al 9. En ambos casos, el mecanismo incorporaba el manejo de los acarreos. En época reciente, se encontró entre los restos del naufragio de una embarcación griega un mecanismo que, en opinión de algunos especialistas, se construyó para facilitar operaciones elementales.
En el año de 1675 Gottfried Wilhelm von Leibnitz construye, a partir de los mismos principios y con un mayor perfeccionamiento, una máquina que además de realizar las cuatro operaciones elementales, también permitía el cálculo de raíces. Más tarde, al iniciarse el siglo XVIII, Falcón introduce en algunas maquinarias de la época el control automático con el empleo de rollos de papel perforado, recurso que se empleaba en los campanarios y las pianolas para la repetición de ciclos melódicos. Por su parte, el francés Joseph Marie Jacquard introduce en el año de 1811 el control automático en los telares con el uso de tarjetas perforadas.
El inglés Jesse Ramsden, constructor de equipo para astronomía y navegación, realiza en el año de 1777 una máquina para dividir. El francés Bolle construyó en el año de 1877 un mecanismo que era capaz de realizar multiplicaciones a partir de sumas y corrimiento; las máquinas anteriores reducían la multiplicación a series de sumas.
En 1811 Charles Babbage, un ingeniero inglés, concibe un dispositivo mecánico que denomina ``máquina diferencial'', sin llegar a construirla. Su diseño aprovecha el principio de diferencias finitas para realizar los cálculos.
Posteriormente, en el año de 1822, somete a la consideración de la Royal Society, una nueva versión mejorada de su diseño, la ``máquina analítica'', que se empieza a construir en el año de 1840 sin llegar a concluirla, aunque el intento impulsó el desarrollo del instrumental mecánico.
En el diseño de la ``máquina analítica'' de Babbage, se perciben ya los cuatro elementos esenciales de las modernas computadoras: unidad aritmética, unidad de control, memoria y comunicación con el exterior. Inspirada en el trabajo de Jacquard, Lady Ada Lovelace, hija del poeta Lord George Gordon Byron, incorporó en el diseño de la máquina analítica de Babbage el concepto de programa de control. Para la elaboración y descripción del programa de control, desarrolló el concepto de diagrama de flujo.
En opinión de la mayoría de los especialistas contemporáneos, la máquina analítica de Babbage representa un diseño completo de una computadora que quizá por problemas de tipo financiero, por la falta de tecnología necesaria para realizarlo y también de un ambiente propicio, no se completó en su época. Es opinión unánime que lo ambicioso del proyecto de Babbage, sólo podía realizarse con el concurso de la tecnología electrónica y no con los elementos mecánicos disponibles en su época.
Algunos problemas que emergieron al final del siglo XIX requirieron la elaboración de considerables volúmenes de información. Uno de estos casos fue el censo de población de los Estados Unidos, el cual indujo a Herman Hollerith a perfeccionar la codificación de información en tarjetas perforadas.
Con el uso de esta técnica y el empleo de equipo electromecánico de conteo, elaboró los resultados del censo. Los equipos electromecánicos que utilizó Hollerith se pudieron realizar porque correspondían a diseños menos ambiciosos que la máquina analítica de Babbage, ya que sólo realizaban el conteo de la información.
El empleo de la tecnología electrónica tiene sus principios en el año de 1919, cuando Eccles y Jordan utilizan el doble tríodo para construir un circuito electrónico de conteo.
Con un enfoque diferente en el año de 1877, Lord William Thomson Kelvin, obtiene la solución de algunas ecuaciones diferenciales ordinarias con el empleo de dispositivos analógicos de integración.
Posteriormente, Vannevar Bush construye en el período 1925-1931, un calculador analógico con los mismos propósitos. Este enfoque diferente ha sido útil, pero limitado por la poca exactitud en los resultados y la complejidad del modelo. Lo anterior aunado al bajo costo de los circuitos digitales, ha orientado la preferencia en la actualidad hacia los modelos digitales.
A partir del año de 1930, Howard Aiken y George R. Stibitz inician el desarrollo de calculadores automáticos a partir de componentes mecánicos y eléctricos. Como resultado de su actividad, se producen 4 calculadores que se designaron con los nombres de MARK-1, MARK-2, MARK-3 y MARK-4, este último, construido en el año de 1945, incorporaba algunos componentes electrónicos (válvulas electrónicas), pero en su mayor parte estaba construido a partir de elementos eléctricos (relevadores) y mecánicos.
Estrictamente hablando, el término computadora, que se emplea para designar a los equipos de propósito general que son capaces de realizar cálculos arbitrarios, fue acuñado por el inglés Alan Mathinson Turing con su histórico trabajo ``Computable Numbers'', publicado en 1937, en el cual desarrolla la teoría de las máquinas de Turing, establece la imposibilidad de resolver cierto tipo de problemas, entre otros, el problema de parar un proceso o completar un procedimiento.
En el fondo, la motivación de Turing para realizar el trabajo de referencia, se encuentra en el desarrollo de uno de los problemas planteados por David Hilbert en su habilitación como profesor, en 1905, referente a la revisión de la consistencia de los sistemas matemáticos. Este problema, entre otros, fue abordado por Bertrand Russell y Alfred N. Whitehead en sus Principia Mathematica. Turing expuso en términos de un mecanismo, que los sistemas matemáticos no pueden ser consistentes si se consideran como sistemas cerrados. Esto mismo había enunciado Alonzo Church y posteriormente por Kurt Gödel con el desarrollo de elaboraciones formales.


Resultado de imagen para linea de tiempo de la computacion

ÁLGEBRA BINARIA. 

Sistemas Numéricos 


  • El hombre trabaja normalmente en sistema decimal y el ordenador en binario.  
  • El sistema de numeración decimal (base 10), utiliza diez símbolos (0, 1, 2, 3, ..., 9).   
  • El sistema de numeración binaria (base 2) utiliza solamente dos símbolos (0 y 1).   
  • La posición  de uno de estos símbolos en un número indica la potencia que se asigna a este símbolo " Sistema posicional ". 
  • Sistema de numeración decimal (base 10): 837=8 * (102) + 3 * (101) + 7 * (100)  
  • Sistema de numeración binario (base 2):  
   
1101000101=1*(29)+1*(28)+0*(27)+1*(26)+0*(25)+0*(24)+0*(23)+1*(22)+0*(21)+1*(20)=837 
  
Definición Sistema Binario 
  
El sistema binario, en matemáticas e informática, es un sistema de numeración en el que los números se representan utilizando solamente las cifras cero y uno (0 y 1). Es el que se utiliza en los computadores, pues trabajan internamente con dos niveles de voltaje, por lo que su sistema de numeración natural es el sistema binario (encendido 1, apagado 0). 
  
Código Binario 
  
El código binario es el sistema de representación de textos, o procesadores de instrucciones de ordenador, utilizando el sistema binario (sistema numérico de dos dígitos, o bit: el "0" y el "1"). En informática y telecomunicaciones, el código binario se utiliza con variados métodos de codificación de datos, tales como cadenas de caracteres, o cadenas de bits. Estos métodos pueden ser de ancho fijo o ancho variable y fue inventado por Marco Polo.  
En un código binario de ancho fijo, cada letra, dígito, u otros símbolos, están representados por una cadena de bits de la misma longitud, como un número binario que, por lo general, aparece en las tablas en notación octal, decimal o hexadecimal. 
  
Conversión Decimal a binario 
  
Se divide el número del sistema decimal entre 2, cuyo resultado entero se vuelve a dividir entre 2, y así sucesivamente. Ordenados los restos, del último al primero, este será el número binario que buscamos. 
  
Regla: Se divide el número decimal por 2 y se obtiene el número binario de los restos.  
   
248 | 2  
04   124 | 2  
 08   04  62 | 2  
  0    0  02  31 | 2  
             0  11  15 | 2  
                1     1   7 | 2  
                       1   3 | 2  
                          1   1  
                       (248)10 = (11111000) 2      1*(27)+1*(26)+......+0*(20)->248 
  
  • Ejemplo   
  • Transformar el número decimal 131 en binario. El método es muy simple:   

131 dividido entre 2 da 65 y el resto es igual a 1   
   65 dividido entre 2 da 32 y el resto es igual a 1   
      32 dividido entre 2 da 16 y el resto es igual a 0   
         16 dividido entre 2 da   8 y el resto es igual a 0  
            8 dividido entre 2 da   4 y el resto es igual a 0  
               4 dividido entre 2 da   2 y el resto es igual a 0   
                   2 dividido entre 2 da   1 y el resto es igual a 0   
                       1 dividido entre 2 da   0 y el resto es igual a 1  
                           -> Ordenamos los restos, del último al primero: 10000011  
  
             (131)10 en binario se escribe (10000011)2  

Método de distribución  
Consiste en distribuir los unos necesarios entre las potencias sucesivas de 2 de modo que su suma resulte ser el número decimal a convertir. Sea por ejemplo el número 151, para el que se necesitarán las 8 primeras potencias de 2, ya que la siguiente, 28=256, es superior al número a convertir. Se comienza poniendo un 1 en 128, por lo que aún faltarán 23, 151 - 128 = 23, para llegar al 151. Este valor se conseguirá distribuyendo unos entre las potencias cuya suma de el resultado buscado y poniendo ceros en el resto. En el ejemplo resultan ser las potencias 4, 2, 1 y 0, esto es, 16, 4, 2 y 1, respectivamente. 
  
  • Ejemplo   
20=    1|1   
21=    2|1  
22=    4|1  
23=    8|0  
24=  16|1  
25=  32|0   
26=  64|0   
27=128|1 
  
128 + 16 + 4 + 2 + 1 = (151)10 = (10010111)2

A continuación se adjunta un vídeo explicando el cambio de base.

EXCEL

Excel es un programa informatico desarrollado y distribuido por Microsoft Corp. Se trata de un software que permite realizar tareas contables y financieras gracias a sus funciones, desarrolladas específicamente para ayudar a crear y trabajar con hojas de calculo.
La primera incursión de Microsoft en el mundo de las hojas de cálculo (que permiten manipular datos numéricos en tablas formadas por la unión de filas y columnas) tuvo lugar en 1982, con la presentación de Multiplan. Tres años más tarde llegaría la primera versión de Excel.
Ante la demanda de una compañía que ya comercializaba un programa con el nombre de Excel, Microsoft fue obligada a presentar su producto como Microsoft Excel en todos sus comunicados oficiales y documentos jurídicos.
Microsoft presentó en 1989 su primera versión de Office, una suite ofimática (conjunto de programas que son útiles en las tareas de oficina) que incluía Excel, Word (un procesador de textos) y PowerPoint (una aplicación para la creación de presentaciones multimediales).
Microsoft Excel presentó, a lo largo de su historia, diversos problemas con las operaciones realizadas en la hoja de cálculo. Uno de los más importantes ha sido la imposibilidad de trabajar con fechas anteriores al año 1900, al menos utilizando el formato de fecha propio de la aplicación; una forma de atravesar dicho obstáculo consiste en crear campos personalizados, con formatos numéricos, combinados con fórmulas inteligentes que los traten como datos cronológicos.
Cabe destacar que Excel es un programa comercial: hay que pagar una licencia para poder instalarlo. Existen otras opciones, de código abierto (“open source“, en inglés), que pueden instalarse o ejecutarse sin cargo y que también permiten administrar hojas de cálculo, tales como OpenOffice.org Calc y Google Docs. La mayoría de estos productos son compatibles con los documentos creados en Excel, pero no ocurre lo mismo en la dirección opuesta (Excel no es capaz de leer archivos creados con estos programas).
Uno de los puntos fuertes de Excel es que da a sus usuarios la posibilidad de personalizar sus hojas de cálculo mediante la programación de funciones propias, que realicen tareas específicas, ajustadas a las necesidades de cada uno, y que no hayan sido incluidas en el paquete original. A grandes rasgos, las opciones son dos: crear fórmulas en las mismas celda de la planilla en cuestión, o bien utilizar el módulo de desarrollo en Visual Basic.
En el primer caso, las posibilidades son muy limitadas, aunque esto no quiere decir que no sean suficientes para la mayoría de los usuarios. El problema principal reside en la incomodidad que conlleva escribir el código en una celda, sin la posibilidad de utilizar saltos de línea, tabulación o comentarios, entre otros tantos elementos propios de un editor convencional. Desarrollar funciones en el pseudolenguaje de Excel resulta antinatural, incómodo y poco intuitivo para un programador, sin mencionar que diversas limitaciones estructurales hacen que no todo sea posible.
Para los desarrolladores que buscan objetivos muy específicos, o de una complejidad mayor al cálculo de un promedio o de una comparación entre varios datos, la solución reside en el uso de Visual Basic. Se trata de un lenguaje con un grado de abstracción relativamente alto (que se aleja considerablemente del lenguaje de máquina, de la forma en la que trabaja el procesador) y que, al igual que el utilizado en Excel, funciona por eventos (esto quiere decir que el usuario debe realizar alguna acción para que se dispare la ejecución del programa).
Dicho esto, la combinación de Excel y Visual Basic también tiene sus limitaciones, y de ninguna manera puede superar el nivel de personalización y precisión posible a través de la creación de un programa desde cero; pero resulta muy eficaz y cómodo para una pequeña compañía, que no desee invertir el dinero y el tiempo necesarios para el desarrollo de sus propias aplicaciones.

Se adjunta vídeo explicativo de lo básico de Excel: