Autor
|
Tema: Sintaxis FASM (Leído 11,287 veces)
|
Erik#
Desconectado
Mensajes: 1.138
Gundam
|
Ok, todo bien, pero un par de cosas:
ese "xor cl, cl" pone a cero el registro verdad? porque usas el registro "cl"? porque pones "byte" delante de [Numero1]? que hace exactamnt ese "ret"?
Gracias, y por cierto, en primer codigo q ha posteado Erik# no lo compila el FASM, de hecho tengo la duda de que se pueda hacer un "pop" a una variable definida en .data es posible?
Gracias y un saludo!
Estan caros los manuales de ASM que no se leen uno ? ¬¬' xor cl,cl pone cl en 0. Uso el registro cl por que se me da la regalada gana , podria usar al ,ah,ch,etc.. ( Siempre de tamaño de un byte ya que estoy trabajdno con un byte) El byte antes de los corchetes es para expesificar el tamaño que quiero. ret según lo que yo se saca EIP de la pila y lo restaura xD ¿Regalada gana? que vocabulario tan completo. (vés como al es de 1 byte (8 bits)). format pe console entry start include 'win32ax.inc' Numero1 dd 3 Numero2 dd 9 Numero3 dd ? formato db '%d',0 .code start: xor cl,cl mov cl,byte[Numero1] add cl,byte[Numero2] mov byte[Numero2],cl push [Numero2] push formato call [printf] add esp,8 call [getchar] ret section '.idata' import data readable library msvcrt,'msvcrt.dll' import msvcrt,printf,'printf',getchar,'_fgetchar'
¿Porque no trabajas con dd? son usados para numeros, van genial, ya te digo que con db no vas a poder sumar mucho (:
|
|
|
En línea
|
|
|
|
ferk93
Desconectado
Mensajes: 28
|
Ok, gracias a los dos y ya nos veRemos q me da q voy a tener muchas dudas con esto del ASM.
|
|
|
En línea
|
|
|
|
Erik#
Desconectado
Mensajes: 1.138
Gundam
|
Ok, gracias a los dos y ya nos veRemos q me da q voy a tener muchas dudas con esto del ASM.
De nada, ya sabes, cualquier duda, todos los programadores de asm (no me incluyo xD) te podran ayudar y los usuarios noobs como yo en asm tambien ¬¬ ya no soy tan noob xd
|
|
|
En línea
|
|
|
|
YST
Desconectado
Mensajes: 965
I'm you
|
Es ridiculo usar cl si estas trabajando con dword . format pe console entry start include 'win32ax.inc' Numero1 dd 3 Numero2 dd 9 Numero3 dd ? formato db '%d',0 .code start: xor ecx,ecx mov ecx,dword[Numero1] add ecx,dword[Numero2] mov [Numero3],ecx cinvoke printf,formato,[Numero3] invoke getchar ret section '.idata' import data readable library msvcrt,'msvcrt.dll' import msvcrt,printf,'printf',getchar,'_fgetchar'
|
|
« Última modificación: 9 Julio 2009, 04:10 am por YST »
|
En línea
|
Yo le enseñe a Kayser a usar objetos en ASM
|
|
|
Erik#
Desconectado
Mensajes: 1.138
Gundam
|
Es ridiculo usar cl si estas trabajando con dword . format pe console entry start include 'win32ax.inc' Numero1 dd 3 Numero2 dd 9 Numero3 dd ? formato db '%d',0 .code start: xor ecx,ecx mov ecx,dword[Numero1] add ecx,dword[Numero2] mov [Numero3],ecx cinvoke printf,formato,[Numero3] invoke getchar ret section '.idata' import data readable library msvcrt,'msvcrt.dll' import msvcrt,printf,'printf',getchar,'_fgetchar'
Pero sin indicarle que son dword, funciona
|
|
|
En línea
|
|
|
|
|
Erik#
Desconectado
Mensajes: 1.138
Gundam
|
Pero es lo mismo solamente que el ensamblador te lo detecta , no ahorras ni un byte . Tambien es una forma de economizar xD! Voy a mirarlo en los procesos. EDIT: La diferencia de uso de bytes es muy pequeña, casi ni se nota
|
|
« Última modificación: 9 Julio 2009, 12:51 pm por Erik# »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
bubblesort en fasm
ASM
|
dewolo
|
5
|
6,322
|
21 Junio 2011, 21:56 pm
por _Enko
|
|
|
Funciones en FASM
ASM
|
fary
|
2
|
4,914
|
28 Septiembre 2011, 21:48 pm
por fary
|
|
|
urldownloadtofile FASM
ASM
|
rmdma()
|
8
|
5,626
|
20 Febrero 2012, 21:11 pm
por Eternal Idol
|
|
|
fasm consola
« 1 2 3 »
ASM
|
bengy
|
24
|
14,973
|
15 Junio 2014, 01:04 am
por Eternal Idol
|
|
|
Cadenas en FASM
ASM
|
Yuki
|
3
|
3,804
|
6 Mayo 2016, 10:28 am
por fary
|
|