elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


  Mostrar Temas
Páginas: [1]
1  Programación / ASM / Examen de Ensamblador [Ayuda] en: 27 Octubre 2009, 06:24 am
Bueno me han pedido que desarrolle un programa en Ensamblador que haga lo siguiente:

1.- Desarrolle una macro llamada lenstr que tenga como argumento la etiqueta a un arreglo de bytes, la macro deberá contar el número de caracteres que tiene el arreglo hasta encontrar un CTRL/D, la macro deb regresar el número de caracteres del registro DX.


2.- Crear dos arreglo myarreglo que contenga "este arreglo tiene 20 caracteresª" y el arreglo cuenta que contenga "ejemplo de arregloª", a donde ª es el carácter CTRL/D:
Dada la macro anterior contar los caracteres del arreglo myarreglo y cuenta y sumar la longitud de los dos arreglos en AX.

3.- Desarrollar el punto 1 como un procedimiento al cual se le pasa en el stack la dirección del arreglo y regresa BX la cuenta de caracteres.

4.- De acuerdo al punto 2 llamar la función lentsr y sumar la longitud del arreglo myarreglo y cuenta en el registro DX.


He desarrollado el siguiente código:
.ASM
Código:
.386
.model flat,stdcall
option casemap:none
.stack

include examen.inc
include \MASM32\macros\macros.asm

lenstr macro

LOCAL myarreglo


endm

.code
inicio:
invoke lstrcat,addr myarreglo ,addr cuenta
invoke lstrlen,addr myarreglo
invoke wsprintf,addr buffer,addr fmo,eax
mov edx , eax
invoke MessageBox,NULL,addr buffer,addr MsgTitulo,MB_OK + MB_ICONINFORMATION
invoke ExitProcess,0
mov ebx , edx

add edx , ebx

end inicio

.INC
Código:
include windows.inc
include user32.inc
include kernel32.inc

includelib user32.lib
includelib kernel32.lib

.data
myarreglo db "este arreglo tiene 20 caracteresª",0
cuenta db "ejemplo de arregloª",0

MsgTitulo db "Programa en Assembler",0

fmo db "la longitud de nuestra cadena es %d caracteres",0
.data?
buffer db 100 dup (?)

No he podido colocar el codigo dentro de la macro como es requerido...realiza la suma de las cadenas de caracteres pero necesito ayuda con la forma de introducir las instrucciones en la MACRO.

Y un poco de orientación en el enlace con un lenguaje de alto nivel de estas mismas funciones.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines