2008-09-27 8 views
0

Compilateur, TASM 5Comment prendre la graine pour un générateur aléatoire à partir de l'horloge, programmation en assembleur

Architecture x86.

Pour un algorithme générateur de nombres aléatoires, prendre l'horloge comme graine.


Je trouve cette solution:

AcquireSeed PROC 

    PUSH AX 
    PUSH CX 
    PUSH DX 

    MOV Ah, 00h ; Int 
    INT 1AH  ; return the clock in CX:DX 

    MOV seed, DL ; save the less significant byte of the clock at seed (declared at .data) 

    POP DX 
    POP CX 
    POP DX 

AcquireSeed endp 
+0

S'il vous plaît élaborer. Ne laissez pas ce genre de questions vagues et vagues. – GEOCHET

+0

Quelle architecture, x86? PowerPC? BRAS? –

+0

@Rich: 'algorithme aléatoire' = générateur de nombres aléatoires, 'feed' = graine. –

Répondre

3

Je ne sais pas ce que vous entendez par la question, mais vous cherchez peut-être pour RDTSC?

Si oui, ce ne sont pas directement pris en charge par TASM mais vous pouvez insérer le opcode pour avec

db 0Fh, 31h