Las operaciones que
debe realizar el hardware son especificadas
por una lista de instrucciones, llamadas programas o
software.
EL software se divide en dos
grandes grupos:
- software del sistema
y - software de aplicaciones.
El software del sistema es el conjunto de
programas indispensables para que la máquina funcione; se
denominan también programas del sistema. Estos
programas son básicamente:
- Sistema operativo : DOS y WINDOWS
- Editores de texto:
EDIT , PADWORD - Compiladores / interpretes (lenguajes de
programación) y - Programas de utilitarios.
Uno de los programas mas importantes es el sistema
operativo, que sirve, esencialmente, para facilitar la
escritura y
uso de sus propios programas.
El sistema operativo: dirige las operaciones
globales de la
computadora, instruye a la computadora
para ejecutar otros programas y controla el almacenamiento y
resuperación de archivos
(programas y datos) de cintas
y discos.
Gracias al sistema operativo
es posible que el programador pueda introducir y grabar nuevos
programas, así como instruir a la computadora
para que los ejecute.
Los sistemas
operativos pueden ser:
monousuarios (un solo usuario ) y
multiusuarios, o de tiempo compartido
(diferentes usuarios), atendiendo al numero de usuarios, y mono
tarea (una sola tarea) o multitarea (múltiples tareas)
según las tareas (procesos) que
puede realizar simultáneamente.
QuickBASIC corre (funciona) en el sistema
operativo de disco DOS – monousuario, mono tarea – que soportan
las computadoras
personales PC . Ya se usan los sistemas
operativos OS/2 que soportan las computadoras
personales PS/2 (multitarea), y en UNIX.
Los lenguajes de programación sirven para escribir programas
que permitan la
comunicación usuario / máquina. Los programas
especiales llamados traductores (compiladores e
intérpretes) convierten las instrucciones escritas en
lenguaje de
programación, en instrucciones escritas en lenguaje
máquina (0 y 1 bits), para que esta pueda
entender.
Los programas de utilidad, facilitan el uso de la
computadora.
Ejemplo: Un editor de textos permite la escritura y
edición de documentos. Estos
apuntes fueron escritos en un editor de textos o procesador de
palabras WORD
("word
proccesor").
Los programas pueden realizar tareas
concretas:
Nominas de pagos
Contabilidad
Análisis estadístico,
Cálculos de producción, bases de datos,
etc, etc.,
es decir, los programas que se pueden escribir en
QuickBASIC se denominan programas de aplicación. A
lo largo del libro se
verán pequeños programas de aplicación que
muestran los principios de una
buena programación de computadora.
Para ver el gráfico seleccione la
opción "Descargar" del menú superior
Figura 1.9. Relación entre
programas de aplicación y programas del
sistema,
Se debe diferenciar entre el acto de crear un programa y la
acción de la computadora cuando ejecuta las instrucciones
del programa.
La creación de un programa se hace inicialmente
en papel y a
continuación se introduce en la computadora y se convierte
en lenguaje
entendible por la computadora.
La Figura 1.10 muestra el
proceso
general de ejecución de un programa:
- Aplicación de una entrada (datos) al
programa y - Obtención de una salida
(resultados).
La entrada puede tener una variedad de formas, tales
como números o caracteres alfabéticos.
Para ver el gráfico seleccione la
opción "Descargar" del menú superior
Figura 1,10. Acción de un
programador
La salida puede también tener formas:
- datos numéricos o caracteres
- señales pare controlar equipos o robots,
etc.
La ejecución de un programa requiere
–generalmente– unos datos como entrada, además del
propio programa, para poder producir
una salida. ( Fig 1.11 )
Para ver
el gráfico seleccione la opción "Descargar" del
menú superior
Figura 1.1 1. Ejecución de un
programa.
1.4.
LOS LENGUAJES DE PROGRAMACION
Los lenguajes utilizados para escribir programas de
computadoras que puedan ser entendidos por ellas se denominan
lenguajes de
programación.
Los lenguajes de programación se clasifican en
tres grandes categorías:
- Maquina
- Bajo nivel
- Alto nivel.
1.4.1. Lenguaje máquina
Los !lenguajes máquina, son aquellos cuyas
instrucciones son directamente entendibles por la computadora y
no necesitan traducción posterior para que la UCP, pueda
entender y ejecutar el programa.
Las instrucciones en lenguaje maquina, se expresan en
términos de la unidad de memoria mas
pequeña, el bit (digito binario 0 o 1 ), en esencia una
secuencia de bits que especifican la operación y las
celdas implicadas en una operación. Una serie de
instrucciones en lenguaje maquina son
0010 0000 0000 1001
1001 0001 1001 1110
Como se puede observar, estas instrucciones serán
fáciles de leer por la computadora y difíciles por
un programador, y viceversa. Esta razón hace
difícil escribir programas en código
o lenguaje a maquina y requiere buscar otro lenguaje pare
comunicarse con la computadora, pero que sea mas fácil de
escribir y leer por el programador.
Para evitar la tediosa tarea de escribir programas en
lenguaje maquina, se han diseñado otros lenguajes de
programación que facilitan la escritura y posterior
ejecución de los programas.
Estos lenguajes son los de bajo y alto nivel.
1.4.2. Lenguajes de bajo nivel
(ensambladores)
La programación en lenguaje maquina es
difícil, por ello se necesitan lenguajes que permitan
simplificar este proceso. Los
lenguajes de bajo nivel han sido diseñados para ese
fin.
Estos lenguajes dependen de la maquina, es decir,
dependen de un conjunto de instrucciones especificas de la
computadora.
Un lenguaje típico de bajo nivel es el
lenguaje ensamblador. En este lenguaje las instrucciones
se escriben en códigos alfabéticos conocidos como
nemotécnicos (abreviaturas de palabras inglesas o
españolas). Así, por ejemplo, nemotécnicos
típicos son:
ADD suma
MPY multiplicar
LDA cargar acumulador
SUB resta
DIV dividir
STO almacenar
Las palabras nemotécnicas son mucho más
fáciles de recordar que las secuencias de dígitos 0
y 1. Una instrucción típica en ensamblador
puede ser:
ADD X, Y, Z
Esta instrucción significa que se deben sumar los
números almacenados
en las direcciones x, y y almacenar el resultado en la
dirección z.
El programa ensamblador
traducirá la instrucción a código
de maquina.
Por ejemplo:
ADD se puede traducir a 1110
x se puede traducir por 1001,
y 1010,
z por 1011.
La instrucción traducida sería:
1110 1001 1010 1011
Después que un programa ha sido escrito en
lenguaje
ensamblador, se necesita un programa –llamado ensamblador–
que lo traduzca a código máquina:
Para ver el gráfico seleccione la
opción "Descargar" del menú superior
Figura 1.12. Programa
ensamblador.
1.4.3. Lenguajes de alto nivel
Los lenguajes de programación de alto
nivel (Ada, BASIC, COBOL,
FORTRAN, Modula-2, Pascal, etc.) son
aquellos en los que las instrucciones o sentencias a la
computadora son escritas con palabras similares a los lenguajes
humanos –en general lenguaje inglés,
como es el caso de QuickBASIC–, lo que facilita la escritura y
la fácil compresión por el programador.
Por ejemplo, la línea siguiente es una
línea de un programa QuickBASIC:
IF (x=y) AND (z=w) THEN PRINT "Esto es
una prueba"
Que simbólicamente quiere decir :
si (x=y) y (z=w) entonces escribir "Esto
es una prueba"
Esta línea se puede comprender
fácilmente conociendo la traducción de las palabras
inglesas IF (si), THEN (entonces), PRINT (escribir / imprimir),
AND (y) y sin necesidad de mucha explicación.
Se pueden escribir también operaciones como:
z=x+y
significa que un programa escrito en un lenguaje de alto
nivel se puede escribir con poca o ninguna modificación en
diferentes tipos de
computadoras.
- Otra propiedad de
estos lenguajes es que son independientes de la máquina,
es decir , las sentencias del programa no dependen del diseño o hardware de una
computadora especifica.
Los programas escritos en lenguaje de alto nivel no son
entendibles directamente la máquina. Necesitan ser
traducidos a instrucciones en lenguaje máquina que
entiendan las computadoras.
Los programas que realizan esta traducción
se llaman compiladores, y los programas escritos en un
lenguaje de alto nivel se llaman programas
fuentes,
El compilador traduce el programa fuente en un programa
llamado programa objeto. Este programa objeto se utiliza
en la fase de ejecución del programa.
Algunas computadoras especialmente microcomputadoras,
utilizan unos programas similares llamados interpretes que
traducen los programas.
El proceso de traducción de un programa fuente
denomina interpretación o
compilación, según sea el
programa.
Un intérprete traduce y ejecuta una
instrucción (sentencia) en código fuente, cada vez.
Los programas interpretados generalmente se ejecutan mucho mas
lentamente que los programas compilados; sin embargo, los
intérpretes son mas fáciles de utilizar y la
depuración de errores es mucho mas cómoda.
BASICA y GW-BASIC son intérpretes y QuickBASIC es
un compilador. El lenguaje
QuickBASIC realiza la traducción y ejecución cada
vez que se ejecuta una línea.
- QuickBASIC
reúne características de intérprete en
cuanto facilidad de edición, ejecución y puesta a
punto de programas, y de compilador por su estructura y
velocidad de
ejecución. - QuickBASIC no es transportable a las versiones
clásicas de BASIC como BASICA / GW-BASIC,:
–en gran reedita– a versiones estructuradas como
Turbo BASIC, HP BASIC, VAX BASIC, etc.
Documento cedido por:
JORGE LUIS CASTILLO TEJEDA