codigo ensamblador

5
Estructura de un programa en lenguaje ensamblador Page 60,132 Title Programa de prueba estructura de un programa en ensamblador ;--------------------------------------------- -------------------------------------------- Stacksg segment para stack ‘stack’ Stacksg ends ;--------------------------------------------- -------------------------------------------- Datasg segment para ‘data’ Datasg ends ;--------------------------------------------- -------------------------------------------- Codesg segment para ‘code’ Begin proc far Assume ss:stacksg,ds:datasg,cs:codesg Mov ax,datasg

Upload: omar-urdhy

Post on 24-Dec-2015

4 views

Category:

Documents


1 download

DESCRIPTION

Ejemplos de codigos ensambladores

TRANSCRIPT

Page 1: Codigo Ensamblador

Estructura de un programa en lenguaje ensamblador

Page 60,132

Title Programa de prueba estructura de un programa en ensamblador

;-----------------------------------------------------------------------------------------

Stacksg segment para stack ‘stack’

Stacksg ends

;-----------------------------------------------------------------------------------------

Datasg segment para ‘data’

Datasg ends

;-----------------------------------------------------------------------------------------

Codesg segment para ‘code’

Begin proc far

Assume ss:stacksg,ds:datasg,cs:codesg

Mov ax,datasg

Mov ds,ax

…..

Mov ax,4c00h

Int 21,h

Begin endp

Codesg ends

End begin

URDHY, 04/11/14,
Control de formato. Designa el número máximo de líneas y el número máximo de caracteres en línea.
URDHY, 11/04/14,
Define el final de un procedimiento
URDHY, 11/04/14,
Es la salida al sistema operativo
URDHY, 11/04/14,
Ax, 4c00h es la petición al sistema operativo
URDHY, 11/04/14,
Ds, ax almacena la dirección del segmento de datos en ds.
URDHY, 11/04/14,
Ax,datasg obtiene la dirección del segmento de datos
URDHY, 11/04/14,
Registro ss direcciona la pila, el ds el segmento de datos, el cs el segmento de código.
URDHY, 11/04/14,
Directiva assume. Dentro de un programa en lenguaje ensamblado esta directiva utiliza cada uno de los segmentos, pila, datos y código. Codifica el segmento de código.
URDHY, 11/04/14,
Operando far. Está relacionado con la ejecución del programa
URDHY, 11/04/14,
Son procedimientos, el segmento de código
URDHY, 11/04/14,
Esta es una etiqueta solamente.
URDHY, 11/04/14,
El tamaño máximo de un segmento es de 64 kbps.
URDHY, 11/04/14,
Indica el final de cada segmento.
URDHY, 11/04/14,
Define el inicio de un programa. El nombre del segmento debe estar presente.
URDHY, 11/04/14,
Aquí va el nombre del segmento. Ejemplo: Stack’sg’.
URDHY, 04/11/14,
Se emplea nada más para un título en el programa
Page 2: Codigo Ensamblador

DIRECTIVAS SIMPLIFICADAS EN LENGUAJE ENSAMBLADOR

STACKSG SEGMENT PARA STACK ‘STACK’

STACKSG ENDS

CODESG SEGMENT

.MODEL MODELO DE MEMORIA “TINY, SMALL, MEDIUM, COMPACT, LARGE, O HUGE”

.MODEL SMALL ;ASSUME

.STACK {TAMAÑO DE PILA}

.DATA

.CODE

ESTRUCTURA GENERAL

PAGE 60,132

TITLE DIRECTIAS SIMPLIFICADAS

;-----------------------------------------------------------------------------------------

.MODEL SMALL

.STACK 64 ;SE DEFINE LA PILA

.DATA ;SE DEFINE EL SEGMENTO DE DATOS

Page 3: Codigo Ensamblador

LISTA DB 11, 12, 13, 14, 15, 16,………

CAR DB ‘CADENA DE CARACTERES$’

FLDA DW 250

FLDB DW 125

FLDC DW ?

;-----------------------------------------------------------------------------------------

.CODE ;SE DEFINE EL SEGMENTO DE CODIGO

BEGIN PROC FAR

MOV AX,@DATA ;SE LE ASIGNA LA DIRECTIVA DE DATASG

MOV DS,AX ;EN EL REGISTRO DS

MOV AX,FLDA

ADD AX, FLDB

MOV FLDC,AX

MOV AL,LISTA+3

MOV AX,4C00H

INT 21H

BEGIN ENDP

END BEGIN

URDHY, 11/11/14,
Este se usa para variables que no se conocen, por lo regular aquí se guardan las demás variables.
URDHY, 11/11/14,
DB define un Bit, DW define Directiva, DD define palabra doble, DF define palabra larga, DQ define palabra cuádruple, DT define 10 Bits.
URDHY, 11/11/14,
Este símbolo específica a ensamblador que hasta allí termina la cadena de caracteres.