Programación
Se
conoce como programación en ciencias de la computación a los pasos que se
abordan para crear el código fuente de un programa informático. De acuerdo con
estos pasos, el código se escribe, se prueba y se perfecciona. La programación
es una de las actividades más determinantes en el desarrollo de sistemas
eficientes, rápidos y amigables para todo tipo de usuarios.
Lenguajes de programación
Cuando
se programa, se indica una serie de instrucciones para que la computadora las
ejecute. Para asegurarse que la computadora entienda las instrucciones, se han
establecido lenguajes bien definidos para especificar y poder generar la
comunicación con la computadora. Estos lenguajes tienen características
similares a los lenguajes comunes que utilizan las personas para comunicarse
unas con otras, pues cuentan con reglas y estructuras que deben seguirse.
Un
lenguaje de programación es cualquier lenguaje artificial, el cual, se utiliza
para definir adecuadamente una secuencia de instrucciones que puedan ser
interpretadas y ejecutadas en una computadora. Se asume que las instrucciones
así escritas son traducidas luego a un código que la máquina pueda comprender.
El proceso de traducción es realizado normalmente por la computadora, usando un
programa especializado para tal fin. Consiste en un conjunto de reglas sintácticas
y semánticas que definen su estructura y el significado de sus elementos,
respectivamente.
Tipos de lenguajes de programación
En
computación se suele hablar de niveles y generaciones de los lenguajes de
programación. Respecto al nivel, se clasifican en lenguajes de bajo y alto
nivel. Los lenguajes de bajo nivel, son aquellos que se asemejan al lenguaje
empleado por la computadora, mientras que los lenguajes de alto nivel, son
aquellos que se asemejan al lenguaje humano.
Niveles
de los lenguajes de programación
Los
lenguajes de alto nivel son resultado de una evolución, desde los lenguajes de
bajo nivel. La computadora sólo es capaz de comprender su lenguaje máquina.
Pero para las personas no es fácil entender y manejar este código máquina de combinaciones
binarias. Las investigaciones dieron un primer paso que llevó a la evolución
desde las hileras de números binarios del código máquina, a un lenguaje
ensamblador, que las representaba como una serie de comandos más entendibles.
Los lenguajes de nivel superior están orientados más hacia lo que se quiere
realizar, que en la manera como se ejecutarán los comandos.
- Lenguajes de bajo nivel:
A
nivel de circuitos, los microprocesadores sólo son capaces de procesar señales
electrónicas binarias. Estas instrucciones binarias que se envían al
microprocesador, se componen de series de unos y ceros, espaciadas en el tiempo
de una forma determinada. Esta secuencia de señales se denomina código máquina.
El código representa normalmente datos y números, así como instrucciones para
manipularlos. Para hacer más fácil el manejo del código máquina, se dio a cada
instrucción un mnemónico, como por ejemplo STORE (Almacenar), ADD (Adicionar) o
JUMP (Saltar). Tal abstracción da como resultado el ensamblador, que es un
lenguaje de muy bajo nivel basado en mnemónicos y que es específico para cada
microprocesador.
De
esta forma, son llamados lenguajes de bajo nivel, a aquellos constituidos por
instrucciones en lenguaje máquina o próximos a él. Tales lenguajes permiten crear
programas muy rápidos y eficientes, pero en contrapartida, estos lenguajes
suelen ser difíciles de aprender, programar y depurar. Un hecho importante es,
que los programas escritos en un bajo nivel, son prácticamente específicos para
cada procesador, lo que implica, que si se quiere ejecutar el programa en otra
máquina de arquitectura diferente, es necesario volver a escribir el programa
desde el principio.
- Lenguajes de alto nivel:
Al
pensar en una computadora, normalmente se concibe como una máquina que realiza
tareas de procesamiento de texto y cálculos. Esta es una percepción bastante
sintética y esquemática de entender la computadora. Existe un alto nivel de
abstracción entre lo que se pide a la computadora y lo que realmente comprende.
De un modo paralelo se presenta una relación compleja entre los lenguajes de
alto nivel y el código máquina. Un programa escrito en un lenguaje de alto
nivel, debe ser compilado o interpretado para traducir su código, en otro de
bajo nivel (lenguaje máquina). Como ejemplo de lenguajes de alto nivel se
tienen Pascal, BASIC, FORTRAN, COBOL, Java, C y C++.
En
los lenguajes de alto nivel las instrucciones son independientes de la máquina,
son más fáciles de aprender porque están formados por elementos de lenguajes
naturales (del inglés). En BASIC, comandos como "IF CONTADOR = 10 THEN
STOP" son usados para ordenar a la computadora, que pare si CONTADOR es
igual a 10. Pero aunque las computadoras parecieran comprender el lenguaje
natural, lo hacen de una manera bastante rígida y sistemática, lo cual podría
parecer un poco frustrante e inspira la búsqueda de lenguajes más cercanos aún
al natural.
Compiladores e Intérpretes
Se
ha señalado que la computadora sólo puede ejecutar instrucciones en código de
máquina, por lo cual, todos los programas escritos en cualquiera de los
lenguajes de programación deben ser convertidos o traducidos. Este proceso es
llevado a cabo por unos programas especiales, los compiladores y los
intérpretes.
La
traducción del código fuente, escrito en lenguaje ensamblador, a código máquina
(o código objeto), no representa un proceso complicado y se lleva a cabo
mediante un compilador. De manera similar, la traducción de código fuente de
lenguajes de alto nivel puede ser realizada por un compilador, o también
mediante un intérprete. Con base en el código fuente suministrado, el
compilador crea una lista de instrucciones de código máquina.
Instrucciones
Las
instrucciones son los comando que le indican a un programa o procesador que
hacer con cierta información. Una instrucción puede estar compuesta por una
única línea de código que finaliza en un punto y coma o por una serie de
instrucciones de una línea incluidas en un bloque.se puede agrupar un grupo de
instrucciones para hacer mas cosas. El orden en que se ejecutan las
instrucciones en un programa se denomina flujo de control o flujo de ejecución.
El flujo de control puede variar cada vez que se ejecuta un programa,
dependiendo de cómo reacciona éste a la entrada que recibe en tiempo de
ejecución.
-Instrucciones
declarativas
Sirven
para declarar librerías, variables, constantes, arreglos, punteros,
estructuras.
-Instrucciones
de asignación
Sirven
para dar valores a las variables, y llevan éste formato. nombre_variable =
expresión
-Instrucciones
selectivas
Son
mediante las cuales podemos ejecutar diferentes acciones, como resultado de una
expresión que estemos evaluando en ese momento.
-Instrucciones
repetitivas
Sirven
para repetir una condición N veces, siempre y cuando la condición sea
verdadera.
-Instrucciones
de entrada y salida de datos
Son
palabras reservadas para ingresar o mostrar datos, sin embargo a veces se usa
para ello recursos que se encuentran en librerías.
-Instrucciones
de bifurcación
Interrumpen
el flujo normal de un programa, es decir que evitan que se ejecute alguna
instrucción del programa y salta a otra parte del programa.
No hay comentarios:
Publicar un comentario