¿Qué es una computadora?
Una computadora es un sistema digital con
tecnología microelectrónica capaz de procesar datos a partir de un grupo
de instrucciones denominado programa. La estructura básica de una
computadora incluye microprocesador (CPU), memoria y dispositivos de
entrada/salida (E/S), junto a los buses que permiten la comunicación
entre ellos. La característica principal que la distingue de otros
dispositivos similares, como una calculadora no programable, es que
puede realizar tareas muy diversas cargando distintos programas en la
memoria para que los ejecute el procesador.
TIPOS DE COMPUTADORA:
Se clasifican de acuerdo al principio de operación de Analógicas y Digitales.
Computadora Analógica:
1.- Aprovechando el
hecho de que diferentes fenómenos físicos se describen por relaciones
matemáticas similares (v.g. Exponenciales, Logarítmicas, etc.) pueden
entregar la solución muy rápidamente. Pero tienen el inconveniente que
al cambiar el problema a resolver, hay que realambrar la circuitería
(cambiar el Hardware).
Computadora analógica
Para el modelado se utiliza la analogía existente en términos matemáticos de algunas situaciones en diferentes campos. Por ejemplo, la que existe entre los movimientos oscilatorios en mecánica y el análisis de corrientes alternas en electricidad. Estos dos problemas se resuelven por ecuaciones diferenciales y pueden asemejarse términos entre uno y otro problema para obtener una solución satisfactoria.
Usado en contraposición a las computadoras digitales, en los cuales los fenómenos físicos o mecánicos son utilizados para construir una máquina de estado finito que es usada después para modelar el problema a resolver. Hay un grupo intermedio, los computadores híbridos, en los que un computador digital es utilizado para controlar y organizar entradas y salidas hacia y desde dispositivos analógicos anexos; por ejemplo, los dispositivos analógicos podrían ser utilizados para generar valores iniciales para iteraciones. Así, un ábaco sería un computador digital, y una regla de cálculo un computador analógico.
Los computadores analógicos ideales operan con números reales y son diferenciales, mientras que los computadores digitales se limitan a números computables y son algebraicos. Esto significa que los computadores analógicos tienen una tasa de dimensión de la información (ver teoría de la información), o potencial de dominio informático más grande que los computadores digitales (ver teorema de incompletitud de Gödel). Esto, en teoría, permite a los computadores analógicos resolver problemas que son indescifrables con computadores digitales.
Los teóricos de la informática suelen usar el término ordenador real (llamado así porque opera dentro del conjunto de números reales), para evitar los malentendidos populares sobre los computadores analógicos.
Computadora Digital:
1.- Están basadas en
dispositivos biestables, i.e., que sólo pueden tomar uno de dos valores
posibles: ‘1’ ó ‘0’. Tienen como ventaja, el poder ejecutar diferentes
programas para diferentes problemas, sin tener que la necesidad de
modificar físicamente la máquina.
Una computadora digital es una máquina
que puede resolver problemas ejecutando una secuencia de instrucciones dadas.
Se llama programa a una secuencia de instrucciones que describe paso a paso
como ejecutar cierta tarea. Los circuitos electrónicos de cada computadora
pueden reconocer y ejecutar directamente un conjunto limitado de instrucciones
simples. Todos los programas que se desean ejecutar en una computadora deben
convertirse previamente en una secuencia de estas instrucciones simples. Estas
instrucciones básicas pocas veces rebasan la complejidad de:
-
Sumar
dos números.
-
Comprobar
si un número es cero.
-
Mover
datos de una parte de la memoria a otra.
El conjunto de instrucciones primitivas de una
computadora forma el lenguaje con el cual podemos comunicarnos con ella. Dicho
lenguaje se llama leguaje de máquina. Normalmente intentan hacer las
instrucciones primitivas lo más simple posible, siempre que estén de acuerdo
con el uso para el que se ha proyectado la computadora y el rendimiento
requerido, a fin de reducir la complejidad y el costo de la electrónica que se
necesite. Debido a que la mayoría de los lenguajes de máquina son demasiado
elementales, es difícil y tedioso utilizarlos.
Hay dos formas de atacar este problema; ambas
incluyen el diseño de un nuevo conjunto de instrucciones, más convenientes para
las personas que el conjunto de instrucciones propias de la máquina. Estas
instrucciones, en conjunto forman un nuevo lenguaje que llamaremos L2, de
manera semejante al que forman las nuevas instrucciones propias de la máquina,
que llamaremos L1. Las dos aproximaciones difieren en el modo en que los
programas escritos en L2 son ejecutados por la computadora, ya que, después de
todo, sólo puede ejecutar programas escritos en su lenguaje de máquina L1.
Un método para ejecutar un programa escrito en
L2 consiste en sustituir primero cada instrucción por una secuencia equivalente
de instrucciones L1. El resultado es un nuevo programa escrito totalmente con
instrucciones en L1. La computadora ejecutará entonces el nuevo programa en L1
y no el anterior en L2. Esta técnica se denomina traducción o compilación.
La otra técnica es escribir un programa en L1
que tome programas escritos en L2 como datos de entrada y los lleve a cabo
examinando una instrucción a la vez y ejecutando directamente la secuencia
equivalente de instrucciones en L1. Esta técnica, que no requiere la generación
previa de un nuevo programa en L1 se llama interpretación y el programa que la
lleva a cabo, interprete.
La traducción y la interpretación son bastantes
similares. En ambos métodos, las instrucciones L2 se llevan a cabo al ejecutar
secuencias equivalentes de instrucciones en L1. La diferencia radica en que, en
la traducción todo programa en L2 se convierte en un programa en L1 (código
objeto), el programa en L2 se desecha y entonces se ejecuta el programa
generado en L1. En la interpretación se ejecuta cada instrucción en L2
inmediatamente después de examinarla y decodificarla. No se genera ningún
programa traducido. Ambos métodos se usan ampliamente.
En vez de pensar en términos de traducción o
interpretación, a menudo conviene imaginar la existencia de una computadora
hipotética o máquina virtual cuyo lenguaje sea L2.
No hay comentarios:
Publicar un comentario