¿Qué es un lenguaje
máquina?
|
El lenguaje máquina
es el único que entiende la computadora digital,
es su "lenguaje natural". En él sólo se pueden utilizar dos
símbolos: el cero (0) y el uno (1). Por ello,al lenguaje máquina también se
le denomina lenguaje binario.
Como:
1010001011110011 00100010 00010010
¿Para qué sirve?
Una dificultad añadida a los lenguajes binarios es el hecho
de que son dependientes de la máquina, es decir, cada procesador utiliza un
lenguaje máquina distinto (un juego de instrucciones distinto) que está
definido en su propio hardware.
En consecuencia, un programa
escrito para un tipo de procesador no se podrá usar en otro equipo que
utilice un procesador distinto, ya que, el programa no será portable o
transportable. Para que dicho programa pueda funcionar en una segunda
computadora, habrá que traducir todas las instrucciones escritas en el
lenguaje máquina del primer equipo al lenguaje binario de la segunda
computadora.
|
¿Qué es el lenguaje
ensamblador?
Este lenguaje es una colección de
símbolos mnemónicos que representan: operaciones (mnemónicos de instrucciones
para la máquina o de directrices para el ensamblador), nombres simbólicos,
operadores y símbolos especiales. El lenguaje ensamblador proporciona códigos de operación de los mnemónicos para todas las instrucciones de la máquina contenidas en la lista de instrucciones.
Además, el lenguaje ensamblador contiene mnemónicos directrices, los cuales especifican acciones auxiliares que se llevan a cabo por el ensamblador.
Estas directrices no siempre son traducidas a lenguaje maquina.
Un programador escribe el programa origen en lenguaje ensamblador utilizando cualquier editor de textos o procesador de palabras que sea capaz de producir una salida de texto en ASCII.
Una vez que el código origen ha sido escrito, el archivo origen es ensamblado mediante su procesamiento a través de algún ensamblador.
¿Para qué sirven?
El ensamblador es el lenguaje más cercano al lenguaje
máquina, el de más bajo nivel. Todo lo que es c, c++, c#, vb, etc, se acaba
traduciendo a assembler.
Lo bueno de programar en ensamblador es que el programa que puedas crear va a ser más rápido y de menor tamaño. Además puedes controlar 100% el programa.
Otra ventaja de aprender ensamblador es el hecho de poder entender los programas desensamblados. (Todo programa, en teoría, puede desensamblarse y modificarse a placer).
Lo bueno de programar en ensamblador es que el programa que puedas crear va a ser más rápido y de menor tamaño. Además puedes controlar 100% el programa.
Otra ventaja de aprender ensamblador es el hecho de poder entender los programas desensamblados. (Todo programa, en teoría, puede desensamblarse y modificarse a placer).
¿Qué es el Lenguaje de
alto nivel y para qué sirve?
Un
lenguaje de alto nivel permite al programador escribir las instrucciones de un
programautilizando palabras o expresiones sintácticas muy similares al inglés.
Por ejemplo, en C se pueden usar palabras tales como: case, if, for, while,
etc.
Los lenguajes de alto nivel logran la independencia del tipo de máquina y se aproximan al lenguaje natural. Los lenguajes de alto nivel, también denominados lenguajes evolucionados, surgen con posterioridad a los anteriores, con los siguientes objetivos, entre otros:
Lograr independencia de la máquina, pudiendo utilizar un mismo programa en diferentes equipos con la única condición de disponer de un programa traductor o compilador, que lo suministra el fabricante, para obtener el programa ejecutable en lenguaje binario de la máquina que se trate. Además, no se necesita conocer el hardware específico de dicha máquina.
Aproximarse al lenguaje natural, para que el programa se pueda escribir y leer de una forma más sencilla, eliminando muchas de las posibilidades de cometer errores que se daban en el lenguaje máquina, ya que se utilizan palabras (en inglés) en lugar de cadenas de símbolos sin ningún significado aparente.
Incluir rutinas de uso frecuente como son las de entrada/salida, funciones matemáticas, manejo de tablas, etc, que figuran en una especie de librería del lenguaje, de tal manera que se pueden utilizar siempre que se quieran sin necesidad de programarlas cada vez.
Se puede decir que el principal problema que presentan los lenguajes de alto nivel es la gran cantidad de ellos que existen actualmente en uso (FORTRAN, LISP, ALGOL, COBOL, APL, SNOBOL, PROLOG, MODULA2, ALGOL68, PASCAL, SIMULA67, ADA, C++, LIS, EUCLID, BASIC), además de las diferentes versiones o dialectos que se han desarrollado de algunos de ellos
Variantes
- Genera un
código más sencillo y comprensible.
- Escribir un
código válido para diversas máquinas y, posiblemente, sistemas operativos.
- Reducción de
velocidad al ceder el trabajo de bajo nivel a la máquina.
- Algunos
requieren que la máquina cliente posea una determinada plataforma
No hay comentarios:
Publicar un comentario