Actualizado el 21 de Marzo del 2018 (Publicado el 12 de Febrero del 2018)
1.212 visualizaciones desde el 12 de Febrero del 2018
182,9 KB
16 paginas
Creado hace 16a (30/01/2008)
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Curso: Arquitectura y Ensambladores 1
Plataforma: Windows
Uso del Leguaje Ensamblador
Descripción:
Este tutorial es una guía para lograr entender los principales comandos de línea de DOS
las cuales el lenguaje ensamblador utiliza para controlar la computadora. Además de esto daremos
una guía para la instalación de Borland Turbo Assembler 5.0, y la forma de utilizarlo.
1
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Índice
Introducción-------------------------------------------------------------------------------------------------------------2
Objetivos-----------------------------------------------------------------------------------------------------------------3
Leguaje Ensamblador ------------------------------------------------------------------------------------------------4
Historia --------------------------------------------------------------------------------------------------------4
Definición------------------------------------------------------------------------------------------------------4
Instalacion Borland Turbo Assembler 5.0 ----------------------------------------------------------------------6
Compilación de un ejemplo en Borland Turbo Assembler 5.0-------------------------------------------10
Funcionamiento ------------------------------------------------------------------------------------------------------12
Los Registros ----------------------------------------------------------------------------------------------12
Direccionamiento en modo real -----------------------------------------------------------------------15
Instrucciones para el movimiento de datos --------------------------------------------------------16
Instrucciones de transferencia de cadenas de datos --------------------------------------------17
Instrucciones para operaciones aritméticas -------------------------------------------------------18
Instrucciones para Interrupciones---------------------------------------------------------------------20
Ejemplo Práctico-----------------------------------------------------------------------------------------------------24
Conclusiones----------------------------------------------------------------------------------------------------------26
Bibliografía-------------------------------------------------------------------------------------------------------------27
Recomendaciones---------------------------------------------------------------------------------------------------28
2
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Introducción
El lenguaje ensamblador es un tipo de lenguaje de bajo nivel, se llaman así porque están
muy cercanos al hardware del ordenador. Es por ello de el lenguaje ensamblador asigna una
abreviatura a cada instrucción en binario (código máquina), de esta forma es más fácil recordar y
más difícil equivocarse con las instrucciones o abreviaturas.
Una desventaja es que con este lenguaje sigue siendo necesario conocer muy bien el
hardware del ordenador. En otras palabras es necesario conocer a fondo la arquitectura de la
maquina para la que se va a programar.
Fue usado ampliamente en el pasado para el desarrollo de software, pero actualmente sólo
se utiliza en contadas ocasiones, especialmente cuando se requiere la manipulación directa del
hardware o se pretenden rendimientos inusuales de los equipos.
3
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Objetivos
General
Comprender el Lenguaje Ensamblador.
Específicos
Realizar la instalación adecuada de de Borland Turbo Assembler 5.0.
Desarrollo eficiente de programas en lenguaje ensamblador.
4
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Leguaje Ensamblador
1. Historia [1]
Los lenguajes de computadoras toman diferentes formas; los de las primeras computadoras, como
la ENIAC y la EDSAC, se componían en el lenguaje real de las máquinas mismas. La dificultad de
programar las máquinas de esta manera limitaba drásticamente su utilidad y proporcionaba un
fuerte incentivo para que se desarrollaran lenguajes de programación más orientados hacia la
expresión de soluciones con la notación de los problemas mismos.
Los primeros lenguajes de programación se conocieron como Lenguajes Ensambladores, un
ejemplo es: TRANSCODE, desarrollado para la computadora FERUT. En los lenguajes
ensambladores se define un código especial llamado mnemónico para cada una de las
operaciones de la máquina y se introduce una notación especial para especificar el dato con el cual
debe realizarse la operación.
2. Definición [2]
Un programa escrito en lenguaje ensamblador consiste en una serie de instrucciones que
corresponden al flujo de órdenes ejecutables que pueden ser cargadas en la memoria de una
computadora. Por ejemplo, un procesador x86 puede ejecutar la siguiente instrucción binaria como
se expresa en código maquina:
Binario: 10110000 01100001 (Hexadecimal: 0xb061)
La representación equivalente en ensamblador es más fácil de recordar: mov al, 061h
Esta instrucción significa:
Mueva el valor hexadecimal 61 (97 decimal) al registro "al".
El mnemónico "mov" es un código de operación u "opcode" , elegido por los diseñadores de la
colección de instrucciones para abreviar "move" (mover).- El opcode es seguido por una lista de
argumentos o parámetros, completando una instrucción de ensamblador típica.
La transformación del lenguaje ensamblador en código máquina la realiza un programa
ensamblador, y la traducción inversa la puede efectuar un desensamblador. A diferencia de los
lenguajes de alto nivel, aquí hay usualmente una correspondencia 1 a 1 entre las instrucciones
simples del ensamblador y el lenguaje máquina. Sin embargo, en algunos casos, un ensamblador
puede proveer "pseudo instrucciones" que se expanden en un código de máquina más extenso a
fin de proveer la funcionalidad necesaria. Por ejemplo, para un código máquina condicional como
"si X mayor o igual que" , un ensamblador puede utilizar una pseudoinstrucción al grupo "haga si
menor que" , y "si = 0" sobre el resultado de la condición anterior. Los ensambladores más
completos también proveen un rico lenguaje de macros que se utiliza para generar código más
complejo y secuencias de datos.
Cada arquitectura de computadoras tiene su propio lenguaje de máquina, y en consecuencia su
propio lenguaje ensamblador. Los ordenadores difieren en el tipo y número de operaciones que
soportan; también pueden tener diferente cantidad de registros, y distinta representación de los
tipos de datos en memoria. Aunque la mayoría de las computadoras son capaces de cumplir
esencialmente las mismas funciones, la forma en que lo hacen difiere, y los respectivos lenguajes
ensambladores reflejan tal diferencia.
5
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Pueden existir múltiples conjuntos de mnemónicos o sintáxis de ensamblador para un mismo
conjunto de instrucciones, instanciados típicamente en diferentes programas ensamblador. En
estos casos, la alternativa más popular es la provista por los fabricantes, y usada en los manuales
del programa.
(cid:3) Ventajas
Máximo rendimiento: máxima velocidad y mínimo tamaño
Puede explotar al máximo el CPU
Acceso a cualquier recurso de la computadora
Ayuda a conocer a detalle cómo trabaja la computadora
(cid:3) Desventajas
El programa sólo corre en un CPU
Es díficil llegar a ser programador experto
Es díficil escribir programas grandes y complejos
Es díficil depurar y dar mantenimiento a los programas
Un error puede provocar que falle el equipo
6
Universidad de San Carlos de Guatemala
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Instalacion Borland Turbo Assembler 5.0
Ahora procedermos a descargar Borland Turbo Assembler 5.0 del
http://vetusware.com/download/TASM%205.0/?id=65
A continuación debe dar clic sobre el boton download. Aparecera la ventana de descarga, donde
usted le indicara la direccion donde lo guardara, ej C:\Download\Assembler. Este proceso puede
tardar varios minutos. El instalador viene comprimido en formato .rar si no cuenta con un programa
http://www.programas-
para
gratis.net/php/programa2.php?id_programa=570.
Ahora procederemos a descomprimir el instalador de la siguiente forma:
Damos clic derecho sobre el Tasm_5.rar, y luego seleccionamos la opcion “Extraer en Tasm_5”
descomprimirlo,
descargarlo
sitio web
puede
del
sitio web
Figura1. Extraer archivos
Aparecerá una carpeta con el
Comentarios de: Uso del Lenguaje Ensamblador Para Procesadores Intel 80x86 (0)
No hay comentarios