Monografías Plus »

Lenguaje ensamblador



Monografias.com

Ilustración 1 lenguaje ensamblador (Salomon, 2010)

Según (Salomon, 2010) El lenguaje ensamblador, o assembler (en inglés assembly language y la abreviación asm), es un lenguaje de programación de bajo nivel. Consiste en un conjunto de mnemónicos que representan instrucciones básicas para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables. Implementa una representación simbólica de los códigos de máquina binarios y otras constantes necesarias para programar una arquitectura de procesador y constituye la representación más directa del código máquina específico para cada arquitectura legible por un programador. (Salomon, 2010)

Características

Según (macias, 2016) El código escrito en lenguaje ensamblador posee una cierta dificultad de ser entendido ya que su estructura se acerca al lenguaje máquina, es decir, es un lenguaje de bajo nivel.

El lenguaje ensamblador es difícilmente portable, es decir, un código escrito para un microprocesador, puede necesitar ser modificado, para poder ser usado en otra máquina distinta. Al cambiar a una máquina con arquitectura diferente, generalmente es necesario reescribirlo completamente.

Los programas hechos por un programador experto en lenguaje ensamblador son generalmente mucho más rápidos y consumen menos recursos del sistema (memoria RAM y ROM) que el programa equivalente compilado desde un lenguaje de alto nivel. Al programar cuidadosamente en lenguaje ensamblador se pueden crear programas que se ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto nivel. (macias, 2016)

Programa ensamblador

Según (cedeño, 2000) Generalmente, un programa ensamblador (assembler en inglés) moderno crea código objeto es decir al código que resulta de la compilación del código fuente  es un conjunto de líneas de texto traduciendo instrucciones mnemónicas es una palabra que sustituye a un código de operación ( de lenguaje ensamblador en opcodes es la porción de una instrucción de lenguaje de máquina que especifica la operación a ser realizada., y resolviendo los nombres simbólicos Nombrar las entidades hace posible referirse a las mismas, lo cual es esencial para cualquier tipo de procesamiento simbólico. para las localizaciones de memoria y otras entidades. (cedeño, 2000)

Ejercicio

Según (ber, 2012) En esta práctica realizamos el desarrollo de un programa en código en lenguaje ensamblador y nos ayudamos del código C para realizar algunas operaciones como mostrar los resultados por pantalla, declarar los valores de los polinomios o definir la estructura principal dónde podemos elegir que tarea realizaremos con el polinomio.

La práctica trata de desarrollar un conjunto de operaciones matemáticas con polinomios, estas son las operaciones que vamos a desarrollar en lenguaje ensamblador:

– Ordenar los términos de un polinomio.– Evaluar un polinomio.– Grado de un polinomio.– Hacer la derivada de un polinomio.– Hacer la integral de un polinomio.– Sumar dos polinomios.

El código C hará lo siguiente:

Mostrará un menú por pantalla con las opciones que tiene:

1. Ordenar los términos de un polinomio.2. Evaluar un polinomio.3. Grado de un polinomio.4. Hacer la derivada de un polinomio.5. Hacer la integral de un polinomio.6. Sumar dos polinomios.

Y dependiendo del valor que leamos realizaremos las siguientes funciones (en pseudocódigo):

Leemos el valorif valor=1 //Ordenaremos el polinomio rMuestra el polinomio r(x)m_pol_bubbleSort(); //subrutina en ensambladorMuestra el polinomio r(x)end ifif valor=2 //Evaluaremos el polinomio. y = p(x)Muestra el polinomio p(x)Leer valor escalary = p_pol_eval(); //subrutina de evaluación en ensambladorMuestra "y", valor obtenido de evaluar p(x=escalar).end ifif valor=3 //Sumar dos polinomios. r(x)=p(x)+q(x)Muestra los polinomios p(x) i q(x).p_pol_add(); //subrutina en ensambladorMuestra el polinomio resultado, r(x)end ifif valor=4 //Hacer la derivada de un polinomio. r(x)= p'(x)Muestra el polinomio p(x)p_pol_derive(); //subrutina en ensambladorMuestra el polinomio resultado, r(x)end ifif valor=5 //Realizar la integral de un polinomio. r(x)= Integral (q(x))Muestra el polinomio p(x)p_pol_integrate(); //función en CMuestra el polinomio resultado, r(x)end if

El código en lenguaje ensamblador tiene que implementar las subrutinas siguientes:

p_delete:Borrar el polinomio. Poniendo los valores del coeficiente a 0 y el exponente a -1.

p_bubbleSort:Ordenar el polinomio r(x) utilizando el algoritmo de la burbuja.

p_pow:Realizar la potencia de un término, que luego utilizaremos para evaluar el polinomio

p_eval:Evaluaremos un polinomio utilizando la subrutina p_pow para cada término y sumando el total de los términos.

p_add:Sumamos dos polinomios, si el polinomio resultante es superior a 20 no lo sumaremos y mostraremos por pantalla la imposibilidad de sumarlo por ser superior al espacio que tenemos reservado.

p_derive:Realizaremos la derivada de un polinomio (ber, 2012).

https://es.wikipedia.org/wiki/Lenguaje_ensamblador#Ejemplos_de_lenguaje_ensamblador

https://www.codifica.me/programar-en-lenguaje-ensamblador-ejemplo-practico/

https://es.wikipedia.org/wiki/C%C3%B3digo_objeto

https://es.wikipedia.org/wiki/C%C3%B3digo_fuente

 

 

 

Autor:

Pin Soza Karla Carolina

Sexto Semestre

UNIVERSIDAD ESTATAL DEL SUR DE MANABI

FACULTAD DE CIENCIAS TECNICAS

INGENIERIA EN COMPUTACION Y REDES