Lenguaje Ensamblador
Enviado por jborre • 14 de Septiembre de 2014 • 5.906 Palabras (24 Páginas) • 1.279 Visitas
UNIVERSIDAD DE CARTAGENA
A la altura de tos los tiempos
TRABAJO DE LENGUAJE ENSAMBLADOR
PRESENTADO POR
BORRE PASCUALES JAIME
CUADRO ARNEDO SADIR
SEMESTRE VII
INGENIERIA DE SISTEMAS A DISTANCIA
CARTAGENA, 30 DE AGOSTO DE 2014
INTRODUCCION
Al desarrollarse las primeras computadoras electrónicas, se vio la necesidad de programarlas, es decir, de almacenar en memoria la información sobre la tarea que iban a ejecutar. Las primeras se usaban como calculadoras simples; se les indicaban los pasos de cálculo, uno por uno.
Lenguaje Ensamblador es la primera abstracción del Lenguaje de Máquina, consistente en asociar a los códigos de operación (OPCODES) palabras clave que faciliten su uso por parte del programador.
Como se puede ver, el Lenguaje Ensamblador es directamente traducible al Lenguaje de Máquina, y viceversa; simplemente, es una abstracción que facilita su uso para los seres humanos. Por otro lado, la computadora no entiende directamente el Lenguaje Ensamblador; es necesario traducirle a Lenguaje de Máquina. Originalmente, este proceso se hacía a mano, usando para ello hojas donde se escribían tablas de programa similares al ejemplo de la calculadora que vimos anteriormente. Pero, al ser tan directa la traducción, pronto aparecieron los programas Ensambladores, que son traductores que convierten el código fuente (en Lenguaje Ensamblador) a código objeto (es decir, a Lenguaje de Máquina).
Una característica que hay que resaltar, es que al depender estos lenguajes del hardware, hay un distinto Lenguaje de Máquina (y, por consiguiente, un distinto Lenguaje Ensamblador) para cada CPU. Por ejemplo, podemos mencionar tres lenguajes completamente diferentes, que sin embargo vienen de la aplicación de los conceptos anteriores:
1. Lenguaje Ensamblador de la familia Intel 80x86.
2. Lenguaje Ensamblador de la familia Motorola 68000.
3. Lenguaje Ensamblador del procesador POWER, usado en las IBM RS/6000
OBJETIVOS.
Las características que definen un lenguaje de alto nivel son que están orientados a un determinado tipo de problema y que son independientes de la máquina.
El primer objetivo de un lenguaje de alto nivel es el de proporcionar un medio conveniente para expresar la solución a un determinado problema. Existen otras dos formas frecuentes para lograr este objetivo, las matemáticas y los lenguajes naturales, como el español. El problema de los lenguajes naturales es su riqueza y su complejidad, que los hacen imposible de utilizar para programar un computador. Los conceptos matemáticos están claramente en los lenguajes de programación, añadiendo palabras tomadas de los lenguajes naturales (especialmente inglés) que Combinadas con ciertos símbolos matemáticos y de acuerdo a unas reglas, sirven para crear un programa que pueda controlar el computador. El resultado es un buen lenguaje de alto nivel con una estructura clara, que no difiere demasiado de la forma de pensar y de expresarnos que tenemos normalmente.
Un segundo objetivo es la simplicidad, que se logra con un reducido conjunto de operaciones básicas, unas cuantas reglas para combinar estas operaciones, y por encima de todo, la falta de excepciones a estas reglas.
Tercer objetivo está la eficiencia, los programa elegidos en el lenguaje deben traducirse a lenguaje máquina de una forma rápida y el código máquina resultante debe ser eficiente.
CONCEPTO DE LENGUAJE DE PROGRAMACIÓN
Lenguaje de programación: notación formal para describir algoritmos o funciones que serán ejecutadas por un computador.
Tipos de lenguajes
Lenguaje máquina.
Lenguajes simbólicos.
Lenguajes ensambladores.
Lenguajes macroensambladores.
Lenguajes orientados a problemas.
Lenguajes de diseño de sistemas de información.
Lenguajes de 5ª generación.
Lenguajes de bajo nivel: orientados al computador.
Lenguaje máquina.
Lenguaje ensamblador.
Lenguaje macroensamblador.
Lenguajes de alto nivel: orientados al problema.
LENGUAJES DE ALTO NIVEL
Son métodos convenientes y sencillos de describir las estructuras de información y las secuencias de acciones necesarias para ejecutar tareas concretas.
Características:
Posibilidad de traducción automática a lenguaje máquina.
Independencia de la arquitectura del computador.
Transportabilidad.
Clasificación:
Lenguajes de propósito general.
Lenguajes de propósito específico (comercial, científico, educativo).
Lenguajes procedimentales.
Lenguajes declarativos.
LENGUAJES DE BAJO NIVEL
Totalmente vinculados a la estructura del computador.
Diseñados para sacar partido de la máquina.
Lenguaje máquina
Único lenguaje comprendido y ejecutado por un computador.
Instrucciones: cadenas de unos y ceros.
Características:
Dependencia absoluta de la arquitectura del computador.
Imposibilidad de transportar programas entre distintas máquinas, salvo que sean compatibles.
Instrucciones poco potentes.
Programas muy largos.
Códigos de operación, datos y referencias en binario.
DEFINICION DEL LENGUAJE ENSAMBLADOR.
El lenguaje ensamblador es el sistema alfanumérico para escribir código máquina mediante Expresiones abreviadas (mnemotécnicos).
La compilación es más complicada porque incluye la conversión de operaciones matemáticas Complejas, comandos de lenguaje natural o tipos de comandos complejos.
Cada ordenador tiene su propio lenguaje ensamblador, exclusivo de su CPU; un lenguaje de alto nivel (LAN) puede ser compilado en distintas máquinas.
Es usado principalmente
...