1. Conceptos fundamentales

Anuncio
Universidad Nacional de Luján
Departamento de Ciencias Básicas
Computación - Agronomía
1. Conceptos fundamentales
1.1 Informática
El término, neologismo francés, se forma como contracción de las palabras
INFORmación autoMATICA, y se define como el tratamiento automático y
racional de la información. Su objetivo es procesar datos de entrada para obtener
resultados finales. Procesar datos implica el almacenamiento, la organización y la
transmisión de los mismos.
Según el diccionario de la Real Academia de la Lengua Española señala
que INFORMATICA es el "conjunto de conocimientos científicos y técnicas que
hacen posible el tratamiento automático de la información por medio de
computadoras".
ENTRADA
SALIDA
PROCESAM IENTO
(datos )
(re s ultados )
Ejemplo: Determinación de y en la ecuación de la recta, para un x dado
Ecuación de la recta y = (x * pendiente) + origen
ENTRADA, datos: x = 5, pendiente = 6, origen = 2
PROCESAMIENTO y = (5 * 6) + 2
SALIDA, resultados: y = 32
El dato es todo elemento que mediante un proceso aporta un nuevo
conocimiento llamado información. La principal característica de la información es
que reduce la incertidumbre o sea lo desconocido.
El término sistema de información se usa para nombrar al conjunto de
funciones y operaciones, estructurado de tal forma que a partir de los datos de
entrada, y luego de una etapa de procesamiento de los mismos, se obtienen los
resultados, o sea la información. También se lo podría definir como el conjunto de
todos los procedimientos y dispositivos (computadoras y otros) implicados en la
recolección, proceso, almacenamiento y distribución de la información.
Las actividades relacionadas al tratamiento de la información se puede
resumir de acuerdo al siguiente gráfico:
Universidad Nacional de Luján
Departamento de Ciencias Básicas
ENTRADA
PROCESO
Computación - Agronomía
Recolección de datos
Depuración de datos
Almacenamiento de datos
Operaciones aritméticas
Operaciones lógicas
SALIDA
Recolección de resultados
Análisis de resultados
Distribución de resultados
El procesamiento se realizará en base a un algoritmo que determinará el
conjunto de acciones a realizar sobre los datos. Es decir, que un algoritmo es un
método para resolver problemas que pueden ser programados.
Resumiendo, un algoritmo es un conjunto finito de pasos, cada uno de los
cuales puede estar formado por una o más operaciones, que se ejecutan
secuencialmente a menos que el paso actual especifique otra cosa, y que llevan a
la solución de un problema específico.
1.2 Computadora
Una computadora es una máquina electrónica programable que tiene por
objetivo procesar datos de entrada y obtener resultados, en base a instrucciones
derivadas de un programa almacenado en su memoria.
Las computadoras resultan útiles para realizar tareas que tengan algunas
de las siguientes características:






necesidad de un gran volumen de datos,
existencia de datos comunes a varias tareas,
que sean repetitivas,
que estén distribuidas geográficamente,
que necesiten significativa precisión,
que requieran cálculos complejos,
Universidad Nacional de Luján
Departamento de Ciencias Básicas
Computación - Agronomía
 que se deban realizar a gran velocidad.
Los programas computacionales son algoritmos codificados en algún
lenguaje que una computadora sea capaz de interpretar y ejecutar. Tales
programas se presentan a la computadora en un lenguaje especial, de forma que
pueda ser entendido por la máquina.
El término hardware se define como el conjunto de todos los elementos
físicos que componen una computadora; es la máquina en sí. Por otro lado, el
término software hace referencia a los elementos lógicos de la computadora, son
los programas y los datos
En principio la computadora sólo es capaz de entender lenguaje de
máquina que está especificado en notación binaria (sólo contiene 2 posibles
caracteres, 0 y 1). Pero a los efectos de hacer más fácil la escritura de programas
(por parte de los humanos) existen los lenguajes de programación de alto nivel
(Ej. C, Pascal, Perl). Estos son utilizados por los técnicos programadores, están
diseñados para que los humanos escriban y entiendan los programas de un modo
mucho más fácil que los lenguajes máquina. Otra razón es que un programa
escrito en un lenguaje de alto nivel es independiente de la máquina; esto es, las
instrucciones de la computadora no dependen del diseño del hardware.
Los programas traductores (compiladores) permiten convertir programas
codificados en lenguajes de alto nivel en programas expresados en lenguajes de
bajo nivel o de máquina (que sí sean capaces de ejecutar por el hardware de la
computadora).
JavaScript
if (x > y) {
z = 2;
} else {
z = 3;
}
En ensamblador
LOD
SUB
STO
CPL
JMZ
LOD
STO
HLT
LOD
STO
HLT
Y
X
T1
T1
16
#2
Z
#3
Z
En lenguaje de máquina
00000100
00000001
00000101
00001011
00001101
00010100
00000101
00001111
00010100
00000101
00001111
10000010
10000001
10000010
10000010
00010000
00000010
10000011
00000000
00000011
10000011
00000000
El proceso para la resolución de un problema con auxilio de una
computadora puede explicarse a partir de los siguientes pasos:
Universidad Nacional de Luján
Departamento de Ciencias Básicas
Computación - Agronomía
1. Planteamiento del problema y propuesta de un método de resolución en
lenguaje natural
2. Transformación del método de resolución en un algoritmo.
3. Traducción del algoritmo a lenguaje de programación (generación del
programa).
4. Traducción automática (compilación) del programa a lenguaje de bajo
nivel.
Ejemplo:
Programa escrito en el lenguaje de alto nivel C, que transforma de
grados Fahrenheit a grados Celcius
/* Convierte Fahrenheit a Celcius */
#include<stdio.h>
main()
{
int fahr, celcius;
int lower, upper, step;
lower=0;
upper=300;
step=20;
fahr=lower;
while(fahr<=upper) {
celcius=5*(fahr-32)/9;
printf("%d\t%d\n", fahr, celcius);
fahr=fahr+step;
}
return(0);
}
A los efectos de conocer la historia de la computación se recomienda visitar el
"museo virtual de la computación" sito en la siguiente dirección de Internet
HTTP://www.computerhistory.org/
1.3 Jerarquía de computadoras
Las computadoras, de acuerdo a su potencia de cómputo y capacidad de
almacenamiento, pueden dividirse en las siguientes clases:
a. Microcomputadoras
En general se las denomina computadora personal (PC, Personal
Computers). Son las más populares y utilizadas por las personas y corporaciones.
Universidad Nacional de Luján
Departamento de Ciencias Básicas
Computación - Agronomía
Generalmente existen dos (2) subtipos de microcomputadoras, a saber: las
computadoras de escritorio ("desktop computers") y las portátiles.
a.1. Computadoras de Escritorio: Representan aquellos dispositivos de
cálculo lo suficientemente pequeños para que puedan instalarse sobre un
escritorio de trabajo. No obstante son voluminosos para considerarse
portables.
a.2. Computadoras Portátiles: En esta categoría se encuentran aquellas
microcomputadoras que son lo suficientemente pequeñas y livianas, de
manera que se puedan cargar y transportar de un lugar a otro sin
inconvenientes. Actualmente existen cuatro tipos de computadoras
portátiles, clasificadas por su peso:
a.2.1. Laptops: Estas computadoras portables poseen un peso entre
5 y 8 kilogramos. Su fuente de poder proviene de la línea de energía
del edificio o de baterías.
a.2.2. Notebooks: Pesan entre 2.5 y 5 kilogramos.
a.2.3. Subnotebooks: Computadoras más livianas, pesan entre 1 y
2,5 kilogramos.
a.2.4. Asistentes personales digitales (Personal Digital Assistants PDA): Son las computadoras portables más pequeñas, su tamaño
promedio es el 15 por 10 centímetros. Poseen capacidades para
entrada de datos por medio de reconocimiento de escritura
manuscrita. Sirven como agendas, puntos de conexión a Internet,
puntos de captura de datos, etc.
b. Minicomputadoras
Las computadoras de esta categoría pueden ser ubicadas en una oficina
(tamaño reducido), pero son más rápidas al procesar información y poseen
mayor capacidad de almacenamiento al compararse con las computadoras
personales. Comúnmente son empleadas como equipos servidores de datos de
pequeñas organizaciones. Generalmente poseen unos pocos procesadores que
operan en paralelo, satisfaciendo requerimientos de servicio de decenas de
usuarios.
c. Mainframes o Macrocomputadoras
Son aquellas computadoras de tamaño considerable que ocupan en su
totalidad un cuarto u oficina de alguna importante organización (banco, línea
aérea, etc). Los mainframes son voluminosos, de alta perfomance y de elevado
Universidad Nacional de Luján
Departamento de Ciencias Básicas
Computación - Agronomía
costo; son capaces de dar servicio a cientos de usuarios simultáneamente, así
como cientos de dispositivos de entrada y salida. Su costo de oscila los 500.000
dólares a los 5 millones de dólares.
d. Supercomputadoras
Las supercomputadoras son las más grandes que existen en un momento
dado. Son máquinas están diseñadas para procesar enormes cantidades de
información en poco tiempo y generalmente son dedicadas a una tarea específica.
Su valor oscila varias decenas de millones de dólares. Son utilizadas por
organizaciones que requieran alto poder de cómputo, tal como la NASA. Posibles
áreas que requieran cómputo intensivo son:




Predicción del clima
Búsqueda de señales extraterrestres
Búsqueda de yacimientos petrolíferos
Procesamiento de información genética
1.4 Evolución de la informática
Ve locidad
Confiabilidad
Eficie ncia
Facilidad de us o
Cos to
Tam año
1940
2004
La ley de Moore decía que a precio constante el desempeño de una
computadora se duplica cada 18 meses. Actualmente esta ley ha quedado
derogada, debido a que el tiempo de duplicación es sensiblemente menor que los
18 meses.
Universidad Nacional de Luján
Departamento de Ciencias Básicas
Generación
1ra
Ejemplos
Computación - Agronomía
Hardware
ENIAC
UNIVAC
IBM 700
IBM 7094
Válvulas de vacío
Tambores
magnéticos
Transistores
3ra
IBM 360
PDP 11
Miniprocesadores
Memoria de
semiconductores
4ta
IBM 3090
CRAY XMP
IBM PC
Sun Sparc
Redes
Discos ópticos
Hard Compacto
Sistemas paralelos
ULSI
2da
5ta
Software
Programación en
código de
máquina
Lenguajes de alto
nivel
Timesharing
Programación
estructurada
Gráficos
Programas
empaquetados
POO
Lenguajes
paralelos
IA
Generaciones de computadoras
Perfomance
RAM 2KB
10000 IPS
RAM 32KB
20000 IPS
RAM 2MB
5 MIPS
RAM 8MB
30 MIPS
RAM 64MB
10 GFLOPS
Descargar