Autor
|
Tema: Duda - Ensamblado (Leído 11,860 veces)
|
h0oke
Desconectado
Mensajes: 2.059
Coder ~
|
Hola, este este es mi primer intento de código en ASM, de seguro tiene millones de errores, o seguramente carece de sentido . TITLE fibonnacci-10n Include Irvine32.inc .data i byte 1 j byte 0 t byte 0 .code main PROC mov cx,10 ;counter=10 lblLooop1: mov ax,i add ax,j mov bx,t add bx,ax mov i,j mov j,t mov dx,j call DUMPREGS loop lblLoop1 main ENDP END main
Esto creo que no es correcto verdad?: Lo tengo en el editor de MASM, tengo la duda de como ensamblarlo.
|
|
« Última modificación: 31 Julio 2009, 14:14 pm por Seu¥ »
|
En línea
|
|
|
|
Eternal Idol
Kernel coder
Moderador
Desconectado
Mensajes: 5.966
Israel nunca torturó niños, ni lo volverá a hacer.
|
ml.exe es el ensamblador de MASM: ml archivo.asm
|
|
|
En línea
|
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste. Juan Domingo Perón
|
|
|
h0oke
Desconectado
Mensajes: 2.059
Coder ~
|
Como lo suponía Irvine32 me iba a traer errores...
|
|
|
En línea
|
|
|
|
Eternal Idol
Kernel coder
Moderador
Desconectado
Mensajes: 5.966
Israel nunca torturó niños, ni lo volverá a hacer.
|
Sacalo y en lugar de usar ese DUMPREGS usa Debug.exe. Usa un registro, del tamaño adecuado (en este caso 1 byte, 8 bits), para el mov: mov cl, j mov i, cl
|
|
« Última modificación: 31 Julio 2009, 14:29 pm por Eternal Idol »
|
En línea
|
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste. Juan Domingo Perón
|
|
|
h0oke
Desconectado
Mensajes: 2.059
Coder ~
|
Será que ASM no me quiere? TITLE fibonnacci-10n .data i byte 1 j byte 0 t byte 0 .code main PROC mov cx,10 ;counter=10 lblLooop1: mov ax,i add ax,j mov bx,t add bx,ax mov cl,j mov i,cl mov cl,t mov j,cl mov dx,j loop lblLoop1 main ENDP END main
Al ensamblar tengo 10 errores, 9 son: Must be in a segment block Y otro es: fatal error... Unmatched block nesting:main
|
|
|
En línea
|
|
|
|
Eternal Idol
Kernel coder
Moderador
Desconectado
Mensajes: 5.966
Israel nunca torturó niños, ni lo volverá a hacer.
|
¿Queres hacerlo en 16 bits? ¿Estas usando el MASM de 16 bits?
Ojo con usar cl sin restaurarlo, estas cambiando cx que es el contador del loop.
|
|
|
En línea
|
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste. Juan Domingo Perón
|
|
|
h0oke
Desconectado
Mensajes: 2.059
Coder ~
|
Según tengo entendido, http://www.masm32.com/masmdl.htm, es de 32 bits. Ahora bien, con respecto a lo de cl, es verdad. Mejor lo cambio por bl.
|
|
|
En línea
|
|
|
|
fuenteRea
Desconectado
Mensajes: 2.709
Volver a ser un niño
|
El MASM dependera de la version, la ultima que yo use era de 16.
PD: Veo un error, tienes un registro tipo palabra y se la asignas a una variable tipo byte y lo haces muchas veces. pasalo o a la parte alta o a la parte baja del registro
un saludo!!
si no tienes mucha soltura, empieza por otro mas sencillo, aunque sea malo por ejemplo esta el emu 8086 tiene una especie de depurador que te permite ir paso a paso y ves donde te confundes. OJO si usas interrupciones no vas a poder porque son distintas, creo que la interrupcion del raton o la funcion de pedir la hora o puff no me acuerdo lo siento
|
|
« Última modificación: 31 Julio 2009, 15:40 pm por thedoctor77 »
|
En línea
|
Una rosa es una rosa...
|
|
|
h0oke
Desconectado
Mensajes: 2.059
Coder ~
|
doctor77 en que parte ves lo de la asignación del registro?
La version que utilizo 6.14.8444
|
|
|
En línea
|
|
|
|
Eternal Idol
Kernel coder
Moderador
Desconectado
Mensajes: 5.966
Israel nunca torturó niños, ni lo volverá a hacer.
|
Si es de 32 necesitas mas directivas, asi lo vas a poder ensamblar, depuralo para ver como funciona : .386 .model flat, stdcall .data i byte 1 j byte 0 t byte 0 .code main: mov cx,10 ;counter=10 lblLoop1: mov al,i add al,j mov bl,t add bl,al mov cl, j mov i, cl mov cl, t mov j, cl mov dl,j loop lblLoop1 end main
|
|
|
En línea
|
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste. Juan Domingo Perón
|
|
|
|
|