Sei sulla pagina 1di 27

INFORMATICA BASICA

La Informática es el tratamiento automático de la información mediante el ordenador.

La información son los datos y el tratamiento automático de estos datos se hace mediante los sistemas
informáticos que son los llamados comúnmente Ordenadores o Computadoras. Un ejemplo sería calcular
la suma de 5 + 6. El 5, el 6 y el signo + son los datos, el tratamiento automático de esos datos sería el
resultado, es decir 11.

ORDENADOR = SISTEMA INFORMÁTICO = COMPUTADORA

Los componentes que constituyen un ordenador se clasifican en dos categorías diferentes:

- El Hardware: parte física del ordenador. Conjunto de placas, circuitos integrados, chips, cables,
impresoras, monitores, etc. (lo que podemos tocar)

- El Software: son los programas, es decir las instrucciones para comunicarse con el ordenador y que
hacen posible su uso (no lo podemos tocar): ¿Qué es el Software?.

Resumiendo, de forma sencilla


podríamos decir que el hardware
son todas aquellas partes de un
ordenador que podemos tocar y
el software lo que no podemos
tocar (las instrucciones de un
programa no se pueden tocar,
solo se pueden ver y ejecutar).
Los dos partes son
imprescindibles, no siendo
posible el funcionamiento de
un ordenador si faltara una de
ellas. Otros elementos que no
pertenecen propiamente al
ordenador, pero que también son
imprescindible para su funcionamiento, son los llamados periféricos.
Los periféricos son elementos externos al propio ordenador, por eso se llaman periféricos (están en la
periferia del ordenador). Algunos de los periféricos más conocidos son por ejemplo el teclado o
el ratónpara meter información en el ordenador o la impresora para sacar la información del ordenador
en papel escrito. Son tan imprescindibles hoy en día que ya se consideran parte del propio ordenador.
Hay 3 tipos de periféricos según su uso, de entrada, de salida y de entrada/salida.

En un sistema informático se introducen datos a través de los periféricos de entrada (por ejemplo el
teclado), se sacan datos a través de los periféricos de salida (por ejemplo el monitor) y también los
hayde entrada/salida, que sirven para meter y sacar datos en el ordenador (por ejemplo un router).
Mas sobre los periféricos aqui: Perifericos.

¿Cómo Funciona Realmente un


Sistema Informatico u Ordenador?

Para entender como funciona un sistema


informático primero metemos los datos o
información mediante los periféricos de
entrada. Una vez que se introducen los
datos al sistema informático, este
debe procesarlos. Pero... ¿Qué eso de
procesar los datos?.

Pues es muy simple, organizarlos,


almacenarlos y transformarlos. Eso es
lo que hace el ordenador cuando hablamos de procesamiento de datos.
Según lo dicho, una vez que introducimos los datos
en el sistema informático este los ORGANIZA, una
vez Organizados los ALMACENA temporalmente y
cuando pueda los TRANSFORMA según las
instrucciones recibidas. Esto normalmente lo realiza
el microprocesador. Veamos esto mediante un
ejemplo muy sencillo.

Queremos hacer la suma 2 + 3. Mediante el teclado


introducimos los números 2, el símbolo + y el número
3. El ordenador estos datos los organiza. Por un lado, coloca los números y por otro los símbolos, después
los almacena (ya veremos donde), y por último, con las instrucciones de un programa, por ejemplo un
programa calculadora, hace la suma y los transforma en un resultado que en este caso sería 5.

Ya tenemos los datos transformados. ¿Qué hacemos ahora con ellos?. Pues muy sencillo, debemos
recoger los datos transformados de alguna
forma. Estos datos transformados es lo
que llamamos información de salida.

La información de salida la recogemos


mediante los periféricos de salida o de
entrada/salida:

Como conclusión de lo dicho hasta ahora,


vamos a ver un esquema de lo que hace
un Sistema Informático:

La máquina que realiza todo esto es lo que se conoce como un Ordenador o una Computadora.
Pero...¿Y su tuviéramos que definirlo?.

SISTEMA INFORMATICO

Es el sistema encargado de recoger datos, procesarlos y transmitir la información una vez


procesada. La máquina que realiza todo esto se llama Ordenador. La función básica que realiza un
ordenador es la ejecución de un programa. Un programa consiste en un conjunto de instrucciones
(órdenes).

En un sistema informático se transforman los datos mediante los programas escritos en algún tipo
delenguaje de programación, ahora bien, para que el ordenador puede entenderlos, los datos deben ser
traducidos al lenguaje eléctrico que es el único que el ordenador conoce. No debemos olvidar que el
ordenador es una máquina eléctrica. Entonces....

¿Como nos entendemos con el Ordenador?

Debemos tener un idioma intermedio y que los dos conozcamos. Es igual que si una persona
española sabe español e ingles, y otra portuguesa, sabe portugués e ingles. ¿Cómo crees que se
entenderían? ¡Se entenderían hablando Ingles¡. Es el idioma que tienen en común, aunque no sea
el idioma de ninguno de los dos. ¿Pero que idioma tenemos en común un ordenador y una persona?. ¡EL
SISTEMA BINARIO DE NUMERACIÓN!.

El sistema de numeración decimal es un sistema que usa diez dígitos para formar infinitos números (el
0,1,2,3,4,5,6,7,8 y el 9). Además es el sistema que solemos usar. El número diez es una combinación
del 1 con el 0, el 11 de dos unos, el trece del 1 con el 3 y así hasta el 19. Luego empezamos a combinar
números con el 2 hasta el 29 y así hasta llegar al 99. Ahora, como ya no tenemos más combinaciones
posibles de dos números, empezamos a combinar números con tres dígitos siendo el más bajo el 100.
Así sucesivamente obtenemos un sistema de numeros llamado decimal.

Pero en informática y electrónica también se usa otro sistema de numeración, igual de válido que el
decimal, llamado SISTEMA BINARIO por que solo usa dos dígitos el 0 y el 1.

Así tendríamos los siguientes números de menor a mayor en el sistema binario: 0 , 1 , 10 , 11 , 100 ,
101 , 110 , 111 , 1000 , 1001 , 1010 , 1011 , 1100 , 1101. Recuerda, para construir el sistema de
numeración binario solo se pueden usar los dígitos 0 y 1, con lo que al llegar al 1 ya tendríamos que
empezar a combinar números de dos en dos (el 1 con el 0 y el 1 con el 1) y al llegar al 11 ya tendríamos
que combinar números de 3 en 3.....

Si quisiéramos tener una equivalencia, por ejemplo, de los once primeros números del sistema decimal
con los del sistema binario tendríamos:

Si quieres aprender más sobre el sistema binario en este enlace: Sistema Binario.

¿Por qué se usa este sistema de numeración en electrónica y en informática?

El componente principal del ordenador, el microprocesador, del que ya hablamos y hablaremos más, es
como si estuviera formado por millones de interruptores que son accionados eléctricamente cuando les
llegacorriente eléctrica y están sin accionar cuando no les llega corriente. Estos dos estados eléctricos
para nosotros serán dos números posibles “0” y “1” que corresponden a los estados de interruptor
“abierto” y “cerrado”.

Si detrás del interruptor tuviéramos unas lámparas conectadas, unas


estarían encendidas y otras apagadas, según estuvieran los
interruptores.

De esta forma podríamos decirle a un ordenador, formado solo por


lámparas, cuando quiero que estén unas encendidas y otras apagadas.

Fíjate en la imagen de más abajo. Por ejemplo si le introduzco el número (instrucción en binario) 01001
le estoy diciendo que encienda las lámparas de la figura (la segunda y la última que valen 1). Podríamos
decirle que si pasara esto nos mostrara en la pantalla la letra "A", por ejemplo, en lugar de encender
lámparas. ¡YA NOS ESTAMOS ENTENDIENDO!.
En informática podríamos asignar a cada letra o símbolo (caracteres) o número, un número en binario
de 8 cifras (8 ceros y unos) y así obtener un código mediante el cual podamos entendernos con el
ordenador. Este código de llama código ASCII:

Por ejemplo la letra A es el número 10100001. Cuando apretamos la tecla de la letra A, le mandamos
la información al ordenador su correspondiente código binario de 8 cifras, es decir el número (10100001)
y el interpreta que le estamos diciendo que queremos que nos saque en la pantalla el símbolo de la letra
A.

Cada 0 o 1 del número en binario se llama bit.

bit: es la unida más pequeña de representación de información en un ordenador, que se corresponde


con un dígito binario, 0 o 1.

La letra A ( y cualquier carácter) en este código se expresa con 8 bits : 10100001

Un byte = conjunto de 8 bits, que es lo que ocupa un número o un carácter (letra, o símbolo) en el
sistema de codificación usado en informática.

¿Cuánto ocupará un documento formado por 1000 caracteres? Pues muy sencillo ¡1000 bytes!.

Como podemos observar, cuantos más caracteres, más ocupará el documento.

El Byte es la unidad básica de almacenamiento en informática (como el metro es de la longitud).


Nos sirve para saber lo que ocupa un documento o cualquier programa (instrucciones que tendrá el
programa).

Puedo saber cuantos bytes tiene un documento o lo que es lo mismo, cuantos bytes necesitaré para
almacenarlo an algún sitio externo.

Como esta unidad es muy pequeña se suelen utilizar múltiplos de ella:

1 Byte = 8 bits (una letra, un número o un espacio en blanco en un documento)


1 kilobyte = 1024 bytes
1 Megabyte = 1024 Kilobytes
1 Gigabye = 1024 Megabytes

Por ejemplo un documento que ocupa 1Mb estará formado por 1024 números, letras, símbolos o
espacios en blanco.

Otra unidad muy usada en informática es la velocidad de transmisión de datos. Unidad usada para
medir la velocidad a la que se mandan datos de un ordenador a otro en una red de ordenadores (por
ejemplo velocidad internet), o la velocidad a la que se envían los datos de una parte a otra del ordenador.

La unidad de velocidad de transmisión de datos (bytes) de un sitio a otro se expresará en Bytes/segundo


(B/s) MB/s o GB/s.

¡OJO! En algunas ocasiones se representa por bits por segundo en lugar de bytes (sobre todo en
Internet) En este caso se diferencia por que la abreviatura es b (minúscula) en lugar de la B (mayúscula)
usada para los bytes: ejemplo Mb/s (megabits por segundo). “Es una unidad 8 VECES MENOR que la
anterior”.

Almacenamiento de la Información

En un ordenador podemos almacenar información de forma externa al ordenador, o de forma interna


en eldisco duro. Las capacidades de las unidades de almacenamiento más comunes son:

De todas estas, la que solo se usa hoy en día prácticamente, es el lápiz de memoria, también llamado
Memoria USB o pendrive. Si quieres saber más sobre estas te recomendamos este enlace: Memorias
USB.

El Microprocesador.- El microprocesador (CPU) ya vimos que es el encargado de ejecutar (interpretar)


las instrucciones especificadas mediante el proceso de los datos, pero además de esto, también de
gobernar y controlar todo el sistema (controlar todos los procesos que ocurren en el ordenador).

Para que el micro pueda hacer todo en su interior esta dividido en dos partes totalmente diferentes:

- Unidad aritmética lógica (ALU): esta unidad realiza todos los cálculos matemáticos de la CPU. El
ALU puede sumar, restar, multiplicar, dividir, y realizar otros cálculos u operaciones con los números
binarios (función lógica SI por ejemplo).

- Unidad de control (UC): Controlar todos los procesos que ocurren en el sistema. Este componente
es responsable de dirigir el flujo (en qué orden deben ir, y cuando) de las instrucciones y de los datos
dentro de la CPU.

¿De donde le llegan los datos (instrucciones) al microprocesador para que los procese?. El micro siempre
va a buscar los datos a un almacén del ordenador, llamado Memoria RAM.

Si quieres saber más


sobre el
microprocesador vete
al siguiente
enlace: Tipos de
Microprocesadores.

La Memoria
RAM.- Cuando
nosotros ejecutamos
(abrimos) un programa
en nuestro ordenador,
estamos pasando las órdenes del programa a un almacén llamado memoria RAM. En esta memoria solo
están los datos de los programas que estamos usando (ejecutando) en ese momento. Si yo abro el
programa Word, todas sus instrucciones pasan del gran almacén, que es el disco duro, a otro almacén
llamado memoria RAM. Cuando cierro el programa, este (las instrucciones) sale de la RAM y se almacena
en el disco duro.

Este almacén tiene la peculiaridad de que es capaz de enviar los datos que le pida el micro de forma
muy rápida. Además el micro va a tardar poco en encontrar los datos por que solo buscará en los datos
del propio programa, y no en todos los datos que tengamos en nuestro ordenador (podemos tener
muchos programas diferentes en el disco duro). Es decir el proceso se hace de esta forma de manera
mucho más rápida.

¿Cómo definiríamos la memoria RAM?

La memoria principal o RAM (Random Access Memory, Memoria de Acceso Aleatorio) es donde el
computador guarda los datos que está utilizando (ejecutando) en ese momento. El almacenamiento
es considerado temporal por que los datos y programas permanecen en ella mientras que el ordenador
este encendido y el programa en ejecución. Al apagarse el ordenador
los datos que hay en ella se pierden.

Para saber más sobre la RAM te recomendamos este enlace: Tipos


de Memoria RAM.-
¿Qué es importante en una memoria RAM?

Es importante la capacidad de almacenamiento (32Mb, 64Mb,


128Mb, 256Mb, 512MB, 1GB….), el tipo de RAM, que determinará la
velocidad de transferencia de datos entre la RAM y la CPU.

La RAM se puede ampliar con módulos de memoria RAM nuevos.


Aquí vemos un módulo de memoria RAM:

Memoria ROM.- Pasemos a otra cosa. Cuando nosotros encendemos el ordenador. ¿Quién le dice lo
que tiene que hacer hasta que se para en la pantalla de Windows?.

Pues unas instrucciones que están en otro almacén. A este almacén el micro solo va a buscar las
instrucciones que hay en él cuando pulsamos el botón de arranque. Este almacén se llama: Memoria
ROM.

Los datos que hay en esta memoria nunca se perderán aún cuando se apague el ordenador. ¿Cómo se
consigue que no se pierdan al apagarse?. Mediante el acumulador o pila del ordenador.
Veamos un pila de un ordenador: Los datos de esta memoria ROM no se podían modificar nunca. Ahora
en vez de tener memoria ROM los ordenadores llevan lo que se llama LA BIOS del sistema. La bios ha
sustituido a la antigua memoria ROM, en este caso algunos datos se pueden
modificar por si el usuario quiere ampliar su ordenador (por ejemplo añadirle
un disco duro).

Conclusión, El BIOS (o la bios) de un PC es una memoria ROM, pero con la


facultad de configurarse según las características particulares de cada máquina
(hay datos que se pueden modificar).

La Placa Base.- Todos estos componentes están alojados en la llamada placa base, y a ella tienen que
llegar toda la información externa que vienen de los llamados periféricos (componentes externos al
ordenador): Ratón, monitor, teclado, etc.
¿Cómo envían/reciben la información los periféricos desde y hacia la placa base?

Pues mediante unos cables llamados Buses. Los buses son los cables por donde viaja la información
por un ordenador.

En la placa base hay unas ranuras donde podemos conectar elementos o tarjetas como por ejemplo las
tarjetas de sonido, multimedia, etc. Las más comúnes son las llamadas PCI. Las SIMM o DIMM son para
insertar en ellas la memoria RAM.

Para saber más sobre la placa base: Componentes de la Placa Base.

Buses

Los buses
pueden se de dos
tipos: IDE o los
ATA más
modernos.

Los Buses
(cables) tienen
que ir conectados
en algún sitio,
estos sitios son
los conectores.
Un cable IDE solo
se puede
conectar en un
conector IDE.

Periféricos

Los periféricos los podemos definir como los dispositivos que nos permiten comunicar el interior del
ordenador con el mundo exterior . Hay periféricos de entrada (para meter datos), de salida (sacar datos)
y de entrada/salida (permiten meter y sacar datos).

Pero los periféricos se conectan al ordenador mediante los puertos de comunicacion (ranuras o
conectores situadas en la placa base del ordenador), no directamente a la placa base. Veamos los tipos
de puertos que hay:
Mas sobre los periféricos aqui: Perifericos.

Con todo esto creo que ya tenemos


bastante para entender como
funciona un ordenador. Puedes
ampliar más la información en este
enlace: Componentes de un
Ordenador.

Aquí te dejamos una imagen con


los principales componentes de un
ordenador:

Sistema informático
Un sistema informático. Puede ser
definido como un sistema de información Sistema informático
que basa la parte fundamental de su
procesamiento, en el empleo de
la computación, como cualquier sistema,
es un conjunto de funciones
interrelacionadas, hardware, software y
de Recurso Humano. Un sistema
informático normal emplea un sistema
que usa dispositivos que se usan para
programar y almacenar programas y
datos.
Si además de la información, es capaz
de almacenar y difundir los
conocimientos que se generan sobre
cierta temática, tanto dentro, como en el
entorno de la entidad, entonces está en
presencia de un sistema de gestión de Concepto: Es el conjunto de partes interrelacionadas,
información y conocimientos. Como hardware, software y de recurso humano
utilizador final emplea esa información en que permite almacenar y
dos actividades fundamentales: la toma procesar información.
de decisiones y el control.

Inicios de un sistema informático


La actividad de un sistema comienza cuando en la entidad donde se utiliza, se efectúa un
determinado hecho económico (compra, venta, pago, cobro), administrativo (orden o directiva,
actividad de control), productivo o de otra naturaleza, que genera datos primarios que deben ser
captados, en un formulario o directamente en una computadora, pueden ser datos adquiridos, si
vienen del entorno ya sea Internet u otra entidad, en ambos casos la participación humana es
imprescindible por lo que de debe organizar mediante procedimientos racionales y estructurales a
fin de evitar errores.
Estos datos primarios que ya pueden llamarse información primaria por cuanto han sido objeto de
operaciones que los han modificado físicamente, son transmitidos por diferentes canales para su
inclusión en el sistema de información de la entidad, donde son modificados, almacenados en
bases de datos, asociados con otros datos y utilizados en cálculos de variado tipo. Estas
actividades son realizadas por la parte informática del sistema.
Después de estas actividades las informaciones ya están en condiciones de ser consultadas,
pueden definirse como informaciones de resultado o salida y de esta consulta, el ser humano
tomará decisiones o controlará determinada actividad de la entidad.

Componentes de un sistema informático


Personas en los dos extremos de la cadena de procesamiento físico de la
información: en la realización de los hechos que generan los datos
primarios y su captación y adquisición y en la consulta y utilización de ellos.
Por supuesto también intervienen en ciertas acciones de operación del
sistema.

 Equipos de procesamiento de información, fundamentalmente


computadoras.
 Equipos de apoyo a las transmisiones (HUB, gateways), equipos de apoyo y de seguridad
(back-ups, acondicionadores de aire, deshumificadores, entre otros)
 Programas de computadoras, sistemas operativos, programas de servicio de comunicaciones,
y sobre todo, programas de aplicación)
 Información técnica de apoyo al sistema: manuales técnicos sobre el trabajo de las
computadoras y los equipos de apoyo, manuales técnicos sobre los sistemas operativos y
programas generales.
 Manuales de usuario para orientar a los usuarios-operadores sobre su trabajo con el sistema
de información. Incluyen la definición de los procedimientos manuales que deben realizar los
usuarios-operadores, la descripción de los formularios para captar la información primaria, la
descripción de los reportes de salida y la descripción de las acciones interactivas con el
sistema informático: captación de la información, operación del mismo, acciones ante errores
y situaciones anormales, seguridad y protección de los recursos informativos y consulta de
información de resultados.
 Informaciones variado tipo, soportados sobre formularios de papel, CDs, DVDs, reportes de
papel de impresora, bases de datos en línea almacenadas en discos duros.

Tipos de sistemas informáticos


Esta clasificación de sistemas informáticos se limita a las aplicaciones de gestión económica,
financiera y contable, con un grupo de sistemas, no necesariamente excluyentes, por lo que
puede ser posible que más de un sistema concreto pueda ser clasificado en más de un grupo.
Sistemas de procesamiento básico de la información. Son aquellos en que las computadoras
se limitan a realizar las operaciones de procesamiento físico de la información. Las personas que
integran el sistema, asumen todas las labores de generación de la información primaria y de
análisis de información de resultados.

 Sistemas de procesamiento de transacciones (TPS). Estos se dedican al proceso físico de los


datos relacionados con ciertas transacciones rutinarias y aisladas en el trabajo habitual de las
entidades socioeconómicas, tales como el control de inventarios, control de activos fijos o la
nómina de sueldos o salarios, explotan poco las posibilidades de las máquinas y el software
actual.

 Sistemas de automatización de oficinas (OAS). Incluye el empleo de procesadores de texto,


hojas electrónicas de datos, preparadores de exposiciones, calendarización, comunicación
mediante correos electrónicos, videoconferencias, implican la búsqueda y captación de
operaciones y en muchos casos, la preparación de decisiones para ejecutivos y directivos.
Pueden solucionar tareas típicas de las oficinas, como la programación y control de
actividades mediante agendas electrónicas individuales y colectivas, registro y control de
acuerdos y directrices, escritura y conformación de textos en informes, folletos, creación,
actualización y consulta de bases de datos relacionadas con clientes y vendedores.

 Sistemas de información para la dirección (MIS). Estos sistemas han abarcado los TPS,
integrando las mismas mediante sistemas de bases de datos, y almacenes de datos, de forma
tal que el sistema puede reflejar la realidad compleja de una entidad socioeconómica, con
todos sus subsistemas y relaciones informativas. Se orientan, sobre todo, a proporcionar
información para la toma de decisiones y el control, por lo que puede asegurarse que el rol de
la computadora en estos sistemas es relativamente pasivo.

Los MIS actuales abarcan una gran cantidad de funciones y tareas, tiene enormes y complejos
sistemas de bases de datos. Logran con una simple entrada de información primaria que se
desencadenen todas las operaciones que esa entrada genera, sin que los usuarios-operadores
tengan que intervenir en nada más que la entrada inicial. Ejemplo de este son los software
“Mónica” , el “Visual conta” y Versat Sarasola y Atenas para la contabilidad.
Sistemas de apoyo a la toma de decisiones. Se apoyan en los MIS, los que crean y actualizan
las bases de datos, que los primeros utilizan. Los DSS se destinan a la toma de decisiones, están
hechos para apoyar el trabajo individual o para las decisiones en grupo, apoyan mucho en la
llamada investigación de operaciones o los métodos cuantitativo de la toma de decisiones,
técnicas matemáticas para apoyar el trabajo del ser humano en las llamadas decisiones bien
estructuradas, débilmente estructuradas y no estructuradas, las cuales por su complejidad
pueden tener errores al ser analizadas por el ser humano con métodos tradicionales (intuición,
experiencia). Ejemplo de estas decisiones son el empleo de técnicas de ruta crítica para dirigir
proyectos de construcciones. La utilización de la programación lineal para dirigir la alimentación
óptima en nutrientes, pero al costo más bajo posible de ganando. Un tipo muy importante de DSS
son los sistemas empresariales de planeación de recursos (ERP).

 Sistema de apoyo a las decisiones individuales


 Sistema de apoyo a las decisiones en grupo

Los DSS como ya se explicó pueden ser para el trabajo individual o grupal. Hay ocasiones en que
varias personas más o menos distantes requieren usar e interactuar con la misma información a
través del sistema informático (grupal), este tipo de sistema está dirigido virtualmente a un grupo
de personas, las cuales deben resolver un problema complejo, el cual incluirá votaciones, llenado
de cuestionarios, creación de escenarios y simulaciones, que después serán conocidos por todos.
Y otra como el sistema Scheduling en que es típico el trabajo individual (en sentido relativo:
puede ser información que se utilice por un grupo de personas pero que la reciben y pueden
utilizarla en una terminal de una red de computación)
Sistemas basados en la inteligencia artificial. La inteligencia artificial, es una rama de la
ciencia de la computación que busca emular las capacidades intelectuales del ser humano,
mediante el empleo de software especializado y las computadoras. Abarca muchos campos, entre
los que se encuentra la robótica, la solución general de problemas, identificación y reconocimiento
de patrones visuales, auditivos y digitales, la simulación del movimiento, el análisis y la síntesis
del lenguaje natural y la potenciación del conocimiento humano. Representan un paso adelante
en relación con los anteriores MIS y DDS, pueden asumir actividades más “humanas”, más
activas en los procesos de dirección, pues tiene incorporados muchos elementos que los hacen
actuar similarmente como lo haría un humano.

 Sistemas de expertos o basados en las reglas de conocimientos. Se basan en disponer del


conocimiento de uno o más expertos humanos, por lo general en forma de reglas de
producción, expresadas en forma de IF (condición), THEN(acción), ELSE (acción alternativa),
SI (condición), entonces ejecutar a (acción) y en caso contrario ejecutar la (acción alternativa),
para la solución de un problema concreto determinado.

Los sistemas de expertos, como comúnmente se les conoce, tiene una base de datos especial
donde se almacenan los conocimientos de los expertos humanos. Esta se llama base de
conocimientos, su confección y llenado se apoya en una tecnología llamada ingeniería del
conocimiento, a medio camino entre la informática y la tecnología. Además estos sistemas
cuentan con programas especializados en inteligencia artificial conocidos como motores de
inferencia, mediante los cuales revisan las bases de conocimientos y ejecutan las operaciones
“inteligentes” para solucionar los problemas que se les plantea.
Estos sistemas son criticados por: las bases de conocimientos son difícil de cumplimentar. En la
medida en que la base de datos se llena de conocimientos lejos de ser más rápido se ralentiza.

 Sistemas de razonamiento basado en casos (RBC). Se basan en la analogía como forma de


representación del conocimiento, se fundamentan en la aparente forma humana de razonar,
usan las experiencias pasadas para afrontar problemas nuevos, consecuentemente aplican
técnicas de intuición y permiten el aprendizaje. Su base teórica se apoya en el campo del
razonamiento aproximado. Su filosofía implica aprender de los errores y los éxitos anteriores.
Pueden utilizarse con éxito en problemas de interpretación, justificación, clasificación,
proyección y previsión. Ejemplo : JULIA: Diseño de grupos de comidas.
Funcionamiento: parten del concepto de caso: este es una porción de conocimiento que
representa una experiencia concreta y el contexto en que sucedió, se guarda en una librería de
casos (archivos) en los cuales se guardan las experiencias relevantes o memorables, a los
efectos de emplearla en la solución de casos futuros.
Inconveniente: en la informática como en otros dominios de la actividad humana no hay
soluciones perfectas y puede generar soluciones no buenas. No obstante, son soluciones
prácticas que incluyen una metodología de razonamiento con muchas expectativas para el futuro.

 Sistemas de redes neuronales artificiales (RNA). Busca simular la forma en que


supuestamente trabajan las neuronas naturales en el cerebro humano. Cada sistema está
compuesto de muchas neuronas artificiales, las cuales al asociarse entre si, mediante
determinadas arquitecturas pueden realizar trabajos complejos con asombrosa calidad. Su
mayor virtud es que logran trabajar adecuadamente aunque la información de entrada que
reciban tenga cierto grado de errores o sea hasta cierto punto incompleto. Pero la asociación
de esas neuronas artificiales hace que trabajos simples se conviertan en actividades muy
complejas que se realizan con éxito. Ejemplo: diseño de un RNA para realizar evaluaciones
del sistema de control interno en determinadas entidades.

 Sistemas basados en algoritmos genéticos (GA). Conjunto de métodos que se apoyan, como
su nombre lo indica, en la emulación de la forma de desarrollo genético de los animales y las
plantas, estos son entre sí mismos una técnica de aprendizaje automático, aspiran a permitir
que las computadoras “aprendan” por sí mismas, para algunos especialistas son solo una
familia de métodos de búsqueda adaptativa de soluciones.

Comienzan con una colección de datos o patrones generados aleatoriamente y evolucionan


posteriormente hacia una solución óptima o al menos satisfactoria, mediante la adaptación de los
datos iniciales o los patrones, con el empleo de operaciones equivalentes.
La solución que proporcionan no es necesariamente óptima, pero puede estar muy cerca de ese
criterio. Estos algoritmos se utilizan cada día más en aplicaciones de gestión económica,
financiera, contable y de auditoría
Sistemas basados en técnicas WEB. El auge en el mundo de uno de los servicios de la
Internet, el World Wide Web (W.W.W) ha hecho que surgiera una nueva modalidad de sistemas a
partir de la tecnología WEB, y en el concepto de hipertexto e hipermedia.

 Intranets
 Sitios WEBs de orientación externa

La Intranets surge de la utilización de la WEB en la gestión interna de la entidad. Una intranets es


una red particular, basada en redes de comunicación de área local o en redes de área amplia,
que utiliza tecnología estándar y servicios o productos que se pueden encontrar o han sido
desarrollados para Internet. Una Intranet puede tener o no conexión con Internet y en caso de
tenerla puede filtrar los accesos no deseados con los llamados cortafuegos. La Intranets deberá
estar entrelazada con los sistemas empresariales, como los MIS, los DDS y los ERP, en estos
casos los usuarios-operadores de sus recursos serán los mismos funcionarios y especialistas que
utilizan los sistemas de gestión empresarial mencionados. De esta forma el flujo de nformación se
simplificará notablemente realizándose a través de la red y reduciendo al mínimo la cantidad de
documentos soportados sobre el papel que se muevan dentro de la entidad.
Los sistemas basados en la WEB, pueden ser también de uso externo, o sea, para comunicar
información al entorno de la entidad (clientes, suministradores, niveles superiores, agencias
gubernamentales, público en general y otras entidades políticas o administrativas de control). En
estos casos la información que aparecerá en el sitio WEB estará acorde con la misión y los
objetivos de la entidad.
Ejemplo: un sitio de una universidad dará información sobre la instrucción, los cursos que
imparten, las facultades, las escuelas y centros de investigación que la componen, sobre el
claustro de profesores que la integran. En estos casos el receptor-objeto del sitio WEB es alguien
situado fuera de las fronteras del sistema socioeconómico, o sea, la entidad.
Sistemas de gestión del conocimiento. Es conocido que el conocimiento está asociado a la
información, pero es mucho más, el conocimiento es, desde la perspectiva de la ciencia de la
dirección, la capacidad de solucionar problemas, el saber qué hacer, cómo hacerlo, dónde
hacerlo, y para qué hacerlo.
Este conocimiento da una ventaja competitiva a las entidades que lo poseen, por lo tanto debe
ser protegido, pero también debe ser conservado y difundido entre los miembros de una entidad,
para que la pericia de unos pase a ser patrimonio de otros. En esto consiste la gestión del
conocimiento.
Los sistemas que se encargan de esa gestión, o sea, detección, adquisición, conservación y
difusión del conocimiento son los sistemas de gestión del conocimiento.Dos tipos de sistemas que
utilizan las entidades socioeconómicas son:

 Sistemas de información de marketing (SIM)


 Sistemas de gestión de relaciones (e-CRM).

Los sistemas de información de marketing se destinan a gestionar toda la información con el


mercado, la gestión de clientes potenciales y reales, los estudios de mercado, el análisis del
impacto de las políticas de promoción, el monitoreo y análisis de los competidores, el análisis de
los precios, el estudio de las tendencias de consumo, los estudios macroeconómicos de
tendencias demográficas, etc. Están muy vinculados a Internet.
Los sistemas de gestión de relaciones son sistemas muy asociados a los SIM y a la gestión
comercial, pues se utilizan para propiciar una adecuada relación con los clientes de la entidad. Se
utilizan prácticamente en todo el ciclo de relaciones con el cliente. Pueden emplearse para definir:
provisiones de ventas, registros de visitas de gestión al cliente, contactos realizados en ferias y
congresos, volúmenes de compras anteriores, intenciones de compra anterior o satisfechas,
comportamiento de pago, bancos con los que trabaja, oportunidades de negocio, acciones
directas de marketing que ha recibido.
No debe dejar de mencionarse a los sistemas de fabricación integrados CIM, los cuales
representan un nivel superior de integración de los sistemas informáticos, requieren de alta
tecnología informática, pero también de una cultura proclive a esas soluciones evolucionadas y
una organización madura y preparada para asimilar esos sistemas.
Prácticamente todas las funciones de una empresa industrial, comercial, de servicios, agrícola,
etc., pueden ser cubiertas por aplicaciones informáticas especializadas, pero entre sí puede haber
un intercambio de información que justifique y convierta en realidad el concepto de sistema y el
de la organización como sistema.

Etapas en el desarrollo informático de las entidades


La utilización de las Nuevas tecnologías de la Información y las comunicaciones demuestran que
la misma no es solo un problema técnico y económico sino que introducir la informática y las
comunicaciones y avanzar en su desarrollo, es, ante todo, un problema que está en función de
tres variables altamente relacionadas entre sí:

 La necesidad de informatizar para hacer que la entidad cumpla con su misión y pueda
alcanzar la visión de sí misma que se plantea. Sin la necesidad del desarrollo no habrá
resultado.
 El grado de madurez que alcance en su gestión y el nivel técnico de su equipo directivo y de
su capital humano en general. Si ese capital humano no logra asimilar el conocimiento
necesario, nunca se pasará del empleo elemental de los recursos informáticos.
 El desarrollo de una cultura proclive al cambio y a la introducción de esa tecnología. Sin la
disposición a evolucionar, a modificar los hábitos y las rutinas de trabajo, para lograr mejores
formas y métodos de hacer, no habrá asimilación de tecnología compleja.

Teniendo en cuenta las variables declaradas, las etapas por las que transita el desarrollo
informático de las entidades son las siguientes:

1. Introducción elemental de las tecnologías informáticas. Aplicaciones aisladas TPS a la


nómina de salarios y sueldos, a los inventarios, el control de activos fijos y la contabilidad
financiera.
2. Profundización de la gestión económica, financiera y contable con apoyo de la informática.
Tránsito de los TPS al MIS.
3. Comprensión del MIS y sus posibilidades. Relativa madurez del capital humano en la
gestión: introducción de DSS y ERP. Intranet.
4. Paralelamente a la etapa 3, se produce la etapa 4, en la cual se informatiza la gestión de
marketing: SIM.
5. Solucionada la gestión interna, se asume la externa: sitios WEBs y asimilación del
comercio electrónico.
6. Etapa superior de madurez del capital humano: empleo de sistemas de inteligencia
artificial.
7. Integración de las soluciones informáticas. Enfoque CIM en las empresas industriales.

Sobre la base de estas tres variantes, el desarrollo de cada etapa se sucede en lo que ha dado
en denominarse como el Ciclo de vida de los sistemas de información y conocimientos.
Un sistema informático es un sistema de información que está informatizado.

No todos los sistemas de información son sistemas informáticos, pero todos los sistemas informáticos son
sistemas de información. Por lo tanto se puede decir que un sistema informático es un subconjunto de un
sistema de información.

Por ejemplo, el sistema de información de una biblioteca antiguamente se hacía manualmente: el ingreso
de nuevos libros, las fichas de cada libro se llenaban a mano, las búsquedas de libros, la organización de
los mismos en estantes, etc.

Con la llegada de la computadoras una biblioteca sigue contando con un sistema de información para
organizarse, pero que a su vez contiene un sistema informático: una o más computadoras para buscar
libros, para ingresarlos al sistema, para saber dónde están ubicados exactamente, un operador que
controla las computadoras (el operador humano se considera parte parte del sistema), disponibilidad de
impresoras, escáneres, manuales de uso del sistema, técnicos de mantenimiento del sistema, usuarios del
sistema, etc.

Definición de Sistema Informático

Teniendo en cuenta esta introducción y el ejemplo, entonces podemos definir sistema informático:

Un sistema informático es un conjunto de partes o recursos formados por el hardware, software y las
personas que lo emplean, que se relacionan entre sí para almacenar y procesar información con un
objetivo en común.

Recursos de un Sistema Informático


Recurso de hardware: computadoras, impresoras, escáneres, memorias, lectores de código de barras,
estructura física de una red de computadoras, etc.

Recurso de software: manuales de uso, sistema operativo, archivos, documentos, aplicaciones, firmware,
bases de datos, información de una red de computadoras, etc.

Recurso humano: son todos las personas que forman parte del sistema, como ser los operadores del
sistema, los técnicos que lo mantienen y los usuarios finales.

Ciclo de vida de un sistema de informático


Sugiero leer el artículo: Ciclo de vida de un sistema informático.

Finalidad u objetivo de un sistema de informático

Un sistema informático tiene un objetivo específico y concreto, por ejemplo: informatizar la administración
de información en una biblioteca, informatizar el control de pagos e información general de los clientes de
un gimnasio, etc.

Pero también hay objetivos o finalidades generales que deseablemente deberían cumplir todos
los sistemas informáticos:

La finalidad u objetivo más general de los sistemas informáticos es hacer las tareas más rápidas, flexibles
y cómodas para los usuarios, empleando de la tecnología informática eficientemente para tal fin.

Específicamente los objetivos básicos de un sistema informático deberían ser:

* Reducir tiempos, costos y esfuerzo en un sistema.

* Agilizar un sistema ya existente, que puede ser manual, o incluso informático pero ya viejo u obsoleto.

* Crear un sistema nuevo, para resolver algún problema específico, tal vez integrándolo a un sistema ya
existente.

* Capturar datos de su propia fuente.

* Reducir la cantidad de tareas manuales, disminuyendo así la cantidad de errores posibles.

* Centralizar el control de procesos.

* Aumentar la productividad de una empresa.


Algoritmos. Definición
Un algoritmo se puede definir como una secuencia de instrucciones que representan un modelo de
solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que realizadas en
orden conducen a obtener la solución de un problema.

Para realizar un programa es conveniente el diseño o definición previa del algoritmo. El diseño de
algoritmos requiere creatividad y conocimientos profundos de la técnica de programación. Luis Joyanes,
programador experto y autor de muchos libros acerca de lógica y programación nos dice "en la ciencia de la
computación y en la programación, los algoritmos son más importantes que los lenguajes de programación o
las computadoras. Un lenguaje de programación es sólo un medio para expresar un algoritmo y una
computadora es sólo un procesador para ejecutarlo".

Loa algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo puede
escribirse y luego ejecutarse en un lenguaje diferente de programación. El algoritmo es la infraestructura
de cualquier solución, escrita luego en cualquier lenguaje de programación.

Características de los algoritmos


 Preciso. Definirse de manera rigurosa, sin dar lugar a ambigüedades.
 Definido. Si se sigue un algoritmo dos veces, se obtendrá el mismo
 resultado.
 Finito. Debe terminar en algún momento.
 Puede tener cero o más elementos de entrada.
 Debe producir un resultado. Los datos de salida serán los resultados de
 efectuar las instrucciones.

Se concluye que un algoritmo debe ser suficiente para resolver el problema.

Entre dos algoritmos que lleven a un mismo objetivo, siempre será preferible el más corto (se deberá analizar la
optimización de tiempos y / o recursos).

Etapas para la solución de un problema por medio del computador.


1. Análisis del problema, definición y delimitación (macroalgoritmo).

Considerar los datos de entrada, el proceso que debe realizar el computador y los datos de salida.

2. Diseño y desarrollo del algoritmo (se utiliza pseudocódigo, escritura natural del algoritmo, diagramas de flujo,
etc. )

3. Prueba de escritorio. Seguimiento manual de los pasos descritos en el algoritmo. Se hace con valores bajos y tiene
como fin detectar errores.

4. Codificación. Selección de un lenguaje de programación y digitación del pseudocódigo haciendo uso de la sintaxis
y estructura gramatical del lenguaje seleccionado.

Compilación o interpretación del programa. El software elegido convierte las instrucciones escritas en el lenguaje
a las comprendidas por el computador.

6. Ejecución. El programa es ejecutado por la máquina para llegar a los resultados esperados.

7. Depuración (debug). Operación de detectar, localizar y eliminar errores de mal funcionamiento del programa.

8. Evaluación de resultados. Obtenidos los resultados se los evalúa para verificar si son correctos. (Un programa
puede arrojar resultados incorrectos aun cuando su ejecución no muestra erorres).
Algoritmos cualitativos y algoritmos cuantitativos.
Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos. Las
instrucciones para armar un aeromodelo, para desarrollar una actividad física o encontrar un tesoro, son ejemplos
de algoritmos cualitativos.

Trate de diseñar el algoritmo para estos casos:

 Tomar mate
 Utilizar una guía telefónica
 Cocinar siguiendo una receta
 Cambiar una llanta de automóvil
 Buscar una palabra en el diccionario

Los algoritmos cuantitativos involucran cálculos numéricos.

Ejemplos:

 Solución de un factorial.
 Solución de una ecuación de segundo grado
 Encontrar el mínimo común multiplicador.
 Técnicas de representación

Para la representación de un algoritmo, antes de ser convertido a lenguaje de

programación, se utilizan algunos métodos de representación escrita, gráfica o

matemática. Los métodos más conocidos son:

 Diagramación libre (Diagramas de flujo)


 Diagramas Nassi-Shneiderman
 Pseudocódigo
 Lenguaje natural (español, inglés, etc.)
 Fórmulas matemáticas.

Herramientas
Para implementar la solución de un problema mediante el uso de una computadora es Necesario establecer
una serie de pasos que permitan resolver el problema, a este conjunto de pasos se le denomina algoritmo, el cual
debe tener como característica final la posibilidad de transcribirlo fácilmente a un lenguaje de programación, para
esto se utilizan herramientas de programación, las cuales son métodos que permiten la elaboración de algoritmos
escritos en un lenguaje entendible. Un algoritmo, aparte de tener como característica la facilidad para transcribirlo,
debe ser:

1. Preciso. Debe indicar el orden en el cual debe realizarse cada uno de los pasos que conducen a la solución
del problema.
2. Definido. Esto implica que el resultado nunca debe cambiar bajo las mismas condiciones del problema, éste
siempre debe ser el mismo.
3. Finito. No se debe caer en repeticiones de procesos de manera innecesaria; deberá terminar en algún
momento.
Por consiguiente, el algoritmo es una serie de operaciones detalladas y no ambiguas para ejecutar paso a paso que
conducen a la resolución de un problema, y se representan mediante una herramienta o técnica. 1 O bien, es
una forma de describir la solución de un problema planteado en forma adecuada y de manera genérica.

Además de esto, se debe considerar que el algoritmo, que posterior mente se transformará en un programa de
computadora, debe considerar las siguientes partes:

 Una descripción de los datos que serán manipulados.


 Una descripción de acciones que deben ser ejecutadas para manipular los datos.
 Los resultados que se obtendrán por la manipulación de los DATOS.
Las herramientas o técnicas de programación que más se utilizan y
que se emplearán para la representación de algoritmos a lo largo del libro
son dos:

1. Pseudocódigo.
2. Diagramas de flujo.

Identificadores

Antes de analizar cada una las herramientas que se utilizan en representación de algoritmos para la solución
de problemas, se establecerá qué son los identificadores que se utilizan dentro de un algoritmo. Los
identificadores son los nombres que se les asignan a los objetos, los cuales se pueden considerar como
variables o constantes, éstos intervienen en los procesos que se realizan para la solución de un problema, por
consiguiente, es necesario establecer qué características tienen. Para establecer los nombres de los
identificadores se deben respetar ciertas reglas que establecen cada uno de los lenguajes de programación,
para el caso que nos ocupa se establecen de forma indistinta según el problema que se esté abordando, sin
seguir regla alguna, generalmente se utilizará la letra, o las letras, con la que inicia el nombre de la variable
que representa el objeto que se va a identificar.

Constante

Un identificador se clasifica como constante cuando el valor que se le asigna a este identificador no cambia
durante la ejecución o proceso de solución del problema. Por ejemplo, en problemas donde se utiliza el valor
de PI, si el lenguaje que se utiliza para codificar el programa y ejecutarlo en la computadora no lo tiene
definido, entonces se puede establecer de forma constante estableciendo un identificador llamado PI y
asignarle el valor correspondiente de la siguiente manera:

PI = 3.1416.

De igual forma, se puede asignar valores constantes para otro identificadores según las necesidades del
algoritmo que se esté diseñando.

Variables

Los identificadores de tipo variable son todos aquellos objetos cuyo valor cambia durante la ejecución o
proceso de solución del problema. Por ejemplo, el sueldo, el pago, el descuento, etcétera, que se deben
calcular con un algoritmo determinado, o en su caso, contar con el largo (L) y ancho (A) de un rectángulo
que servirán para calcular y obtener su área. Como se puede ver, tanto L como A son variables que se
proporcionan para que el algoritmo pueda funcionar, y no necesariamente se calculen dentro del proceso de
solución. Tipos de variables Los elementos que cambian durante la solución de un problema se denominan
variables, se clasifican dependiendo de lo que deben representar en el algoritmo, por lo cual pueden ser: de
tipo entero, real y string o de cadena, sin embargo, existen otros tipos de variables que son permitidos con
base en el lenguaje de programación que se utilice para crear los programas, por consiguiente, al momento
de estudiar algún lenguaje de programación en especial se deben dar a conocer esas clasificaciones.
Para el caso de este libro, se denominará variables de tipo entero a todas aquellas cuyo valor no tenga
valores decimales; contrario a las de tipo real, la cual podrá tomar valores con decimales. Como ejemplo de
variables enteras se puede considerar el número de personas, días trabajados, edad de una persona, tcétera.
Y para el caso de reales, se puede considerar el sueldo de una persona, el porcentaje de equis cantidad,
Etcétera.
En caso de que las variables tomen valores de caracteres, se designarán string o de cadena; como ejemplo
de éstas se pueden mencionar el sexo de una persona, falso o verdadero, el nombre de una persona, el tipo
de sangre, etcétera.

Pseudocódigo

Sin duda, en el mundo de la programación el pseudocódigo es una de las herramientas más conocidas para
el diseño de solución de problemas por computadora. Esta herramienta permite pasar casi de manera
directa la solución del problema a un lenguaje de programación específico. El pseudocódigo es una serie de
pasos bien detallados y claros que conducen a la resolución de un problema.

Diagramas de flujo.

Los diagramas de flujo son una herramienta que permite representar visualmente qué operaciones se requieren
y en qué secuencia se deben efectuar para solucionar un problema dado. Por consiguiente, un diagrama
de flujo es la representación gráfica mediante símbolos especiales, de los
pasos o procedimientos de manera secuencial y lógica que se deben realizar para solucionar un problema dado
Los diagramas de flujo desempeñan un papel vital en la programación de un problema, ya que facilitan la
comprensión de problemas complicados y sobre todo aquellos en que sus procesos son muy largos; 2
generalmente, los diagramas de flujo se dibujan antes de comenzar a programar el código fuente, que se
ingresará posteriormente a la computadora.
Los diagramas de flujo facilitan la comunicación entre los programadores y los usuarios, además de que
permiten de una manera más rápida detectar los posibles errores de lógica que se presenten al implementar el
algoritmo. En la tabla 1.1 se muestran algunos de los principales símbolos
utilizados para construir un diagrama de flujo.
Dentro de los diagramas de flujo se pueden utilizar los símbolos que se presentan en la tabla 1.2, con los cuales
se indican las operaciones que se efectuarán a los datos con el fin de producir un resultado.

Terminal /Inicio.

Entrada de datos.

Proceso.

Decisión.

Decisión múltiple.

Imprimir resultados.

Flujo de datos.

Conectores.
Un punto de decisión o ramificación. Las líneas
Lista de Símbolos que representan diferentes decisiones surgen
de diferentes puntos del diamante.

Utilizados en
Diagramas de Flujo
Aquí tienen una lista más completa de los
símbolos de diagramas de flujo.
Símbolo de Entrada / Salida
Símbolo de Inicio / Final Representa el material o la información que
El símbolo de terminación marca el punto entra o sale del sistema, como una orden del
inicial o final del sistema. Por lo general, cliente (entrada) o un producto (salida).
contiene la palabra "Inicio" o "Fin".

Símbolo de Acción o Proceso Símbolo de Entrada Manual


Representa un paso en el que se pide al usuario
Un rectangulo solo puede representar un solo
que introduzca la información manualmente.
paso dentro de un processo ("agregar dos tazas
de harina"), o un subproceso completo ("hacer
pan") dentro de un proceso más grande.

Símbolo del Documento Impreso Símbolo de Preparación


Un documento o informe impreso. Representa un ajuste a otro paso en el proceso.

Símbolo de Multidocumento Símbolo del Conector


Representa multidocumento en el proceso. Indica que el flujo continúa donde se ha
colocado un símbolo identico (que contiene la
misma letra).

Símbolo de Decisión o
Ramificación
O Símbolo
Indica que el flujo del proceso continúa en más acciones podría describirse con más detalle en
de dos ramas. un diagrama de flujo separado.

Símbolo de Unión de Invocación


Indica un punto en el diagrama de flujo en el
que múltiples ramificaciones convergen de
nuevo en un solo proceso.

Símbolo del Operación Manual


Indica una secuencia de comandos que
continuarán repitiéndose hasta que se detenga
manualmente.
Símbolo de Fusión
Indica un paso en el que dos o más sub-listas o
subprocesos se convierten en uno.

Símbolo de Límite de Bucle


Indica el punto en el que debe detenerse un
bucle.
Símbolo de Intercalar
Indica un paso que ordena información en un
formato estándar.

Símbolo de Retardo
Indica un retraso en el proceso.

Símbolo de Ordenar
Indica un paso que organiza una lista de
elementos en una secuencia o establece según
algunos criterios predeterminados.
Almacenamiento de Datos o
Símbolo de Datos Almacenados
Indica un paso donde se almacenan los datos.

Símbolo de Proceso Predefinido


Indica una secuencia de acciones que realizan
una tarea específica incrustada dentro de un
proceso más grande. Esta secuencia de
Símbolo de la Base de Datos
Indica una lista de información con una Indica un paso que muestra información.
estructura estándar que permite buscar y
ordenar.

Conector Fuera de Página


Indica que el proceso continúa fuera de la
Símbolo de Almacenamiento página.
Interno
Indica que la información se almacenó en la
memoria durante un programa, utilizado en
diagramas de flujo de diseño de software.

Símbolo de Visualización

Programa informático
Un programa informático escrito en un estilo orientado a objetos.

Un programa informático o programa de computadora es una secuencia de instrucciones, escritas para


realizar una tarea específica en una computadora.1Este dispositivo requiere programas para funcionar, por lo
general, ejecutando las instrucciones del programa en un procesador central.2 El programa tiene un formato
ejecutable que la computadora puede utilizar directamente para ejecutar las instrucciones. El mismo programa
en su formato de código fuente legible para humanos, del cual se derivan los programas ejecutables (por
ejemplo, compilados), le permite a un programador estudiar y desarrollar sus algoritmos. Una colección de
programas de computadora y datos relacionados se conoce como software.
Generalmente, el código fuente lo escriben profesionales conocidos como programadores de computadora.3 Este
código se escribe en un lenguaje de programación que sigue uno de los siguientes
dos paradigmas: imperativo o declarativo, y que posteriormente puede ser convertido en un archivo
ejecutable (usualmente llamado un programa ejecutable o un binario) por un compilador y más tarde ejecutado
por una unidad central de procesamiento. Por otra parte, los programas de computadora se pueden ejecutar con
la ayuda de un intérprete, o pueden ser empotrados directamente en hardware.
De acuerdo a sus funciones, los programas informáticos se clasifican en software de sistema y software de
aplicación. En las computadoras de 2015, al hecho de ejecutar varios programas de forma simultánea y eficiente,
se lo conoce como multitarea.

Programación
Artículo principal: Programación

#include <stdio.h>
#include <conio.h>
int main(void) {
printf("Hola Mundo!\n");
getch();
return 0;
}

Código fuente del programa Hola mundo escrito en el Lenguaje de programación C

public class HelloWorld {


public static void main(String[] args){
System.out.println("Hola Mundo!");
}
}

Código fuente del programa Hola mundo escrito en el Lenguaje de programación Java

using System;

class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hola Mundo!");
}
}

Código fuente del programa Hola mundo escrito en el Lenguaje de programación C#

La programación de computadoras es el proceso iterativo de escribir o editar código fuente. Dicha edición implica
probar, analizar y perfeccionar, y, a veces, coordinar con otros programadores, en el caso de un programa
desarrollado en conjunto. Una persona que practica esta técnica se le conoce como programador de
computadoras, desarrollador de software, o codificador. El proceso, a veces a largo plazo, de programación de
computadoras normalmente se lo conoce como desarrollo de software. El término ingeniería de software se está
convirtiendo en muy popular, ya que esta actividad es vista como una disciplina de ingeniería.
Paradigmas[editar]
Los programas de ordenador se pueden clasificar según el paradigma del lenguaje de programación utilizado
para producirlos. Dos de los principales paradigmas son imperativos y declarativos.
Los programas escritos con un lenguaje imperativo especifican un algoritmo utilizando declaraciones, expresiones
e informes.4 Una declaración asocia un nombre de variable a un tipo de datos. Por ejemplo: var x: integer; .
Una expresión produce un valor. Por ejemplo: 2 + 2 produce 4. Por último, una declaración puede asignar una
expresión a una variable o usar el valor de una variable para alterar las estructuras de control del programa. Por
ejemplo: x := 2 + 2; if x = 4 then hacer_algo(); Una crítica de los lenguajes imperativos es el efecto
secundario de una sentencia de asignación en una clase de variables llamadas variables no locales.5
Los programas escritos en un lenguaje declarativo especifican las propiedades que tienen o que deben cumplirse
para la salida. No especifican detalles expresados en términos de flujo de control de la máquina de ejecución
pero sí de las relaciones matemáticas entre los objetos declarados y sus propiedades. Los lenguajes
funcionales y lógicos son dos amplias categorías de lenguajes declarativos. El principio detrás de los lenguajes
funcionales (como Haskell) es el de no permitir efectos secundarios, lo que hace que sea más fácil para razonar
sobre los programas como si se tratasen de funciones matemáticas.5 El principio detrás de los lenguajes lógicos
(como Prolog) es definir el problema a ser resuelto - la meta - y dejar la solución detallada al propio sistema
Prolog.6 El objetivo se define proporcionando la lista de sub-objetivos. Luego, cada subobjetivo se define más
arriba, proporcionando la lista de sus sub-objetivos, etc. Si la ruta de sub-objetivos no encuentra una solución,
entonces ese subobjetivo se retrocede y otra vía se intenta sistemáticamente.
La forma en que se crea el programa puede ser textual o visual. En un programa de lenguaje visual, los elementos
en vez de ser textualmente especificados son manipulados gráficamente.
Compilado o interpretando[editar]
Un programa de computadora bajo la forma de lenguaje de programación de computadoras legible por un
humano, se lo llama código fuente. Dicho código fuente se puede convertir en una imagen ejecutable por
un compilador o ejecutarse inmediatamente con la ayuda de un intérprete.
Cualquiera de los programas compilados o interpretados pueden ser ejecutados en un proceso por lotes sin
intervención humana, pero los programas interpretados le permiten al usuario escribir comandos en una sesión
interactiva. En este caso, los programas son los comandos separados, cuya ejecución se produce
secuencialmente, y por lo tanto simultáneamente. Cuando se utiliza un lenguaje para dar órdenes a una aplicación
de software (como un shell de Unix u otra interfaz de línea de comandos), se le llama un lenguaje de scripts.
Los compiladores se utilizan para traducir el código fuente de un lenguaje de programación, ya sea en código
objeto o código máquina.7 El código objeto de objeto necesita procesamiento adicional para convertirse en código
máquina, y el código máquina es el código nativo de la unidad central de procesamiento, listo para su ejecución.
Los programas de computadora compilados se conocen comúnmente como ejecutables, imágenes binarias, o
simplemente como binarios — una referencia al formato de archivo binario utilizado para almacenar el código
ejecutable.
Los programas de computadora — interpretados en un lote o una sesión interactiva — o bien se descodifican y
luego ejecutados inmediatamente o se decodifican en alguna representación intermedia eficiente para la
ejecución futura. BASIC, Perl y Python son ejemplos de programas de computadora ejecutados inmediatamente.
Por otra parte, los programas de computadora de Java se compilan antes de tiempo y se almacena como un
código independiente de la máquina llamado bytecode. Entonces, dicho bytecode es ejecutado a petición de un
intérprete llamado máquina virtual.
La principal desventaja de los intérpretes es que los programas de computadora corren más lento que cuando
son compilados. La interpretación de código resulta más lenta que la ejecución de la versión compilada porque el
intérprete debe decodificar cada declaración cada vez que se carga y luego realizar la acción deseada. Sin
embargo, el desarrollo de software puede ser más rápido usando un intérprete porque la prueba es inmediata
cuando se omite el paso de la compilación. Otra desventaja de los intérpretes es que debe estar presente al
menos uno en la computadora durante la ejecución del programa de computadora. Por el contrario, los programas
de computadora compilados no necesitan compilador presente durante la ejecución.
No se requieren propiedades de un lenguaje de programación si se está compilado exclusivamente o
interpretándose exclusivamente. Por lo general, la clasificación refleja el método más popular de ejecución del
lenguaje. Por ejemplo, BASIC se considera un lenguaje interpretado y C un lenguaje compilado, a pesar de la
existencia de compiladores de BASIC e intérpretes de C. Algunos sistemas utilizan compilación en tiempo de
ejecución (JIT) mediante la cual las secciones de la fuente se compilan 'sobre la marcha' y se almacenan para
ejecuciones posteriores.
Programas que se auto-modifican[editar]
Un programa informático en ejecución normalmente es tratado como algo diferente de los datos con los cuales
opera. Sin embargo, en algunos casos ésta distinción es ambigua, especialmente cuando un programa se
modifica a sí mismo. El programa modificado es ejecutado secuencialmente como parte del mismo programa. En
el caso de programas escritos en código máquina, lenguaje
ensamblador, Lisp, C, COBOL, PL/1 y Prolog y JavaScript (la función eval), entre otros, es posible tener código
que se auto-modifica.

Ejecución y almacenamiento de los programas[editar]


Típicamente, los programas se almacenan en una memoria no volátil (por ejemplo un disco), para que luego el
usuario de la computadora, directa o indirectamente, solicite su ejecución. Al momento de dicha solicitud, el
programa es cargado en la memoria de acceso aleatorio o RAM del equipo, bajo el control
del software llamado sistema operativo, el cual puede acceder directamente al procesador. El procesador ejecuta
(corre) el programa, instrucción por instrucción hasta que termina. A un programa en ejecución se le suele llamar
también proceso. Un programa puede terminar su ejecución en forma normal o por causa de un error, dicho error
puede ser de software o de hardware.
Programas empotrados en hardware[editar]

El microcontrolador a la derecha de la Memoria USB está controlada por un firmware empotrado.

Algunos programas están empotrados en el hardware. Una computadora con arquitectura de programas
almacenados requiere un programa inicial almacenado en su ROM para arrancar. El proceso de arranque es para
identificar e inicializar todos los aspectos del sistema, desde los registros del procesador, controladores de
dispositivos hasta el contenido de la memoria RAM.8 Seguido del proceso de inicialización, este programa inicial
carga al sistema operativo e inicializa al contador de programa para empezar las operaciones normales.
Independiente de la computadora, un dispositivo de hardware podría tener firmware empotrado para el control de
sus operaciones. El firmware se utiliza cuando se espera que el programa cambie en raras ocasiones o nunca, o
cuando el programa no debe perderse cuando haya ausencia de energía.9
Programas cargados manualmente[editar]

Interruptores para la carga manual en una Data General Nova 3.

Históricamente, los programas eran cargados al procesador central de forma manual mediante interruptores. Una
instrucción se representaba por una configuración de estados de interruptores de abierto o cerrados. Después de
establecer la configuración, se ejecutaba un botón de ejecución. Este proceso era repetitivo. Asimismo, los
programas se cargaban manualmente mediante una cinta de papel o tarjetas perforadas. Después de que se
cargaba el programa, se establecía la dirección de inicio mediante interruptores y se presionaba el botón de
ejecución.10
Programas generados automáticamente[editar]
La programación automática es un estilo de programación que crea código
fuente mediante clases genéricas, prototipos, plantillas, aspectos, y generadores de código para aumentar la
productividad del programador. El código fuente se genera con herramientas de programación tal como
un procesador de plantilla o un IDE. La forma más simple de un generador de código fuente es un
procesador macro, tal como el preprocesador de C, que reemplaza patrones de código fuente de acuerdo a reglas
relativamente simples.
Un motor de software da de salida código fuente o lenguaje de marcado que simultáneamente se vuelve la entrada
de otro proceso informático. Podemos pensar como analogía un proceso manejando a otro siendo el código
máquina quemado como combustible. Los servidores de aplicaciones son motores de software que entregan
aplicaciones a computadoras cliente. Por ejemplo, un software para wikis es un sevidor de aplicaciones que
permite a los usuarios desarrollar contenido dinámico ensamblado a partir de artículos. Las Wikis
generan HTML, CSS, Java, y Javascript los cuales son interpretados por un navegador web.
Ejecución simultánea[editar]
Véanse también: Proceso (informática) y Multiprocesamiento.

Muchos programas pueden ejecutarse simultáneamente en la misma computadora, hecho al cual se lo conoce
como multitarea, pudiéndose lograr mediante mecanismos de software o de hardware. Los sistemas operativos
modernos pueden ejecutar varios programas a través del planificador de procesos — un mecanismo de software
para conmutar con frecuencia la cantidad de procesos del procesador de modo que los usuarios
puedan interactuar con cada programa mientras estos están corriendo.11 También se puede lograr la multitarea
por medio del hardware; las computadoras modernas que usan varios procesadores o procesadores con varios
núcleos pueden correr muchos programas a la vez.12

Categorías funcionales[editar]
Los programas se pueden categorizar aplicando criterios funcionales. Estas categorías funcionales son software
de sistema y software de aplicación. El software de sistema incluye al sistema operativo el cual acopla
el hardware con el software de aplicación.13 El propósito del sistema operativo es proveer un ambiente en el cual
el software de aplicación se ejecuta de una manera conveniente y eficiente.13 Además del sistema operativo, el
software de sistema incluye programas utilitarios que ayudan a manejar y configurar la computadora. Si un
programa no es software de sistema entonces es software de aplicación. El middleware también es un software
de aplicación que acopla el software de sistema con la interfaz de usuario. También son software de aplicación
los programas utilitarios que ayudan a los usuarios a resolver problemas de aplicaciones, como por ejemplo la
necesidad de ordenamiento.

Potrebbero piacerti anche