1

salut les ga.... j'ai besoin d'aide....

bon comme vous le savez tous, il n'y a pas de hazard en programmation....mon probleme c'est de créer un routine de génération de nombre aleatoire (en assembleur ) sans utiliser de romcall ( et surtout pas _random) ni par des shells....

Merci de réfléchir a mon probleme...
j'en ai besoin pour des jeux sur PC vu que il y a pas de routine de random comme sur la ti....

2

Salut, c'est pas de l'ASM x86 mais l'idée est quand même là :

http://map.tni.nl/sources/external/z80bits.html#3.2

C'est une routine qui génère une suite périodique de nombres pseudo aléatoires. EN ASM z80 on peut aussi récupérer la valeur du registre R (avec ld a,r) qui peut etre considérée comme aléatoire sachant qu'elle est incrémentés à chaque exécution d'instruction.

3

merci pour l'aide... j'ai regardé ton lien.... je sais pas c'est koi rand8 et seed....mais je crois avoir compris la méthode... je vais essayer pour voir si ça suffit pour ce que je veux faire......

4

rand8 est un label
Seed est une valeur quelconque, c'est la valeur de la graine courante qui sert à calculer le prochain nombre pseudo aléatoire. Elle est auto-modifiée dans la routine. Tu peux aussi la stocker quelque part en mémoire si tu ne peux aps faire de code qui s'automodifie.

5

jai regardé la routine... elle est pas vraiment efficace...( bref c'est pas vraiment aléatoire parce que ca tourne en boucle )... j'ai finalement utiliser l'horloge du PC ( je multiplie les secondes par les milisecondes et je garde les 8 faibles bits ).... Merci quand meme pour ton aide....