Push Codigo Ensamblador

Páginas: 19 (4716 palabras) Publicado: 2 de diciembre de 2012
PUSH fuente
La instrucción PUSH decrementa en dos el valor de SP y luego transfiere el contenido del operando fuente a la nueva dirección resultante en el registro recién modificado.
El decremento en la dirección se debe a que al agregar valores a la pila ésta crece de la dirección mayor a la dirección menor del segmento, por lo tanto al restarle 2 al valor del registro SP lo que hacemos esaumentar el tamaño de la pila en dos bytes, que es la única cantidad de información que puede manejar la pila en cada entrada y salida de datos.
-------------------------------------------------
El programa ensamblador
Tabla de contenidos
6.1. Creación de un programa ejecutable en ensamblador
6.2. Definición de datos
6.2.1. Definición de bytes
6.2.2. Definición de enteros
6.2.3. Definición destrings
6.2.4. Definición de espacio en blanco
6.3. Uso de etiquetas
6.4. Gestión de la pila
6.5. Desarrollo de programas en ensamblador
6.6. Ejemplo de programa en ensamblador
Los programas escritos en lenguaje ensamblador, a pesar de representar instrucciones del lenguaje máquina del procesador, no son directamente ejecutables por éste sino que es necesario traducirlas a su codificaciónen binario. Este proceso de traducción es fácilmente automatizable, y por tanto se dispone de programas denominados ensambladores (o más genéricamente compiladores que se encargan de esta tarea.
El ensamblador es un programa que recibe como datos de entrada uno o varios ficheros de texto plano con un conjunto de instrucciones y datos escritos en lenguaje ensamblador y produce un fichero binario yejecutable que contiene la codificación binaria del programa. La figura 6.1 muestra el funcionamiento del programa ensamblador.
Figura 6.1. El programa ensamblador

En general, a los programas encargados de traducir de un lenguaje de programación a otro se les denomina “compiladores” y todos ellos trabajan de forma similar. Dado un conjunto de ficheros escritos en un lenguaje, producen comoresultado otro fichero que contiene la traducción a un segundo lenguaje. En el caso del ensamblador, la traducción es de lenguaje ensamblador a lenguaje máquina.
En adelante se utilizarán los términos “compilador” y “ensamblador” de forma indistinta y siempre en referencia al programa que traduce de lenguaje ensamblador a lenguaje máquina.
Así como el lenguaje máquina de un procesador es único einmutable (a no ser que se rediseñe el procesador), pueden coexistir múltiples lenguajes ensamblador que representen el mismo lenguaje máquina. La representación de las instrucciones mediante cadenas alfanuméricas es un convenio utilizado para facilitar su escritura, por lo que pueden existir múltiples convenios de este tipo siempre y cuando se disponga del ensamblador los que traduzca al lenguajemáquina del procesador.
En el caso concreto del sistema operativo Linux, se incluye como parte de las herramientas del sistema un compilador capaz de traducir de lenguaje ensamblador a lenguaje máquina. Su nombre es as. En la práctica este programa lo suelen invocar otros compiladores tales como gcc que es un compilador del lenguaje de alto nivel C a lenguaje máquina, pero también permite latraducción de ficheros con código ensamblador invocando internamente el programa as.
6.1. Creación de un programa ejecutable en ensamblador
La figura 6.2 muestra un programa en lenguaje ensamblador creado mediante un editor de texto plano, un programa que guarda únicamente el texto codificado en formato ASCII o UNIcodE sin información alguna sobre estilo. El primer paso, por tanto, para la obtenciónde un programa ejecutable es la creación de un fichero de texto que contenga el código.
Figura 6.2. Estructura de un programa en ensamblador

Un programa consta de varias secciones separadas cada una de ellas por palabras clave que comienzan por el símbolo “.”. La palabra.dataque aparece en la primera línea no tiene traducción alguna para la ejecución, sino que es la forma de notificar al...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Código Ensamblador
  • arquitectura de computadores, código en ensamblador
  • codigo ensamblado
  • push
  • Push Push
  • push
  • Push
  • Push

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS