Programación General > ASM (Ensamblador)
Random/rand en ASM?
esse:
--- Código: Text ---Random PROC range:DWORD ;get pseudo random namber mov eax, [range] ;[RandSeed] es variable global que se puede cambiar xor edx, edx ;para modificar el patron del random imul edx,[RandSeed],08088405H ;08088405h una constante, algunas cifras se pueden cambiar, otras no inc edx mov [RandSeed],edx mul edx mov eax, edx retRandom ENDP ;/////////////////////////////////////////////////////////////PRINCIPIO DEL PROGRAMA/////////////////////////////////////////////////////////////////main PROC mov ax,@data mov ds,ax mov es,axinicio: ;semilla random mov eax, fs:[046ch] mov RandSeed, eax call Random(10d) scanFmain ENDPEND main
Cuando le dejo el ret, se cierra el programa, si le quito el ret se queda congelado :S ya me genera el aleatorio... pero ya q llamo la funcion, no regresa al codigo..
Gracias!
Eternal Idol:
La proxima pone TODO el codigo por favor (con MASM tuve que agregar, dword ptrs para RandSeed y assume fs:nothing, comentar scanF, etc).
Esto esta mal:
--- Código: Text ---call Random(10d)
No esta pasando ningun parametro sino que esta llamando a Random+0xA (10d).
Asi es como se pasa un parametro a esta funcion:
--- Código: Text ---push 10dcall Random
esse:
Ahh ok muchas gracias, es que estoy acostumbrado a medio y alto nivel :P y disculpa la proxima pondre todo el codigo pero es q como lo tengo en modulos se me hizo mas facil pegar solo el main lo siento :rolleyes:
Navegación
[*] Página Anterior
Ir a la versión completa