Gen. nahodnych cisel
Pavel Gazda
Pavel.Gazda
Středa Březen 17 12:11:02 CET 2004
Ahoj,
nevim, v jakem je to stavu, ale tak nejak jsem to chtel kdysi pouzit:
(
generuje pseudonahodnou posloupnost,
postup by mel vychazet z Turbo pascalu, upraven pro DALLAS (x51)
randinit se provadi pouze jednou, protoze po inicializaci stejnym cislem
nasleduje
stejna posloupnost
)
;************************
randinit:
MOV RandSave,#0
MOV RandSave+1,TL0
RET
;************************
CRANDOM EQU 8405H
random:
MOV d+6,RandSave
MOV d+7,RandSave+1
MOV m+6,#HIGH(CRANDOM)
MOV m+7,#LOW(CRANDOM)
MOV AdrX,#m+7
MOV AdrY,#d+7
MOV SizeX,#2
MOV SizeY,#2
CALL NasXYdoX ; m4,..,m7
MOV m+2,RandSave
MOV m+3,RandSave+1
MOV R2,#3
rand1:
CLR C
MOV A,m+3
RLC A
MOV m+3,A
MOV A,m+2
RLC A
MOV m+2,A
DJNZ R2,rand1
MOV A,m+2
ADD A,m+3
MOV m+2,A
MOV A,m+3
ADD A,m+5
MOV m+5,A
MOV A,m+2
ADDC A,m+4
MOV m+4,A
MOV A,m+7
ADD A,#1
MOV m+7,A
MOV A,m+6
ADDC A,#0
MOV m+6,A
MOV A,m+5
ADDC A,#0
MOV m+5,A
MOV A,m+4
ADDC A,#0
MOV m+4,A
MOV RandSave,m+4
MOV RandSave+1,m+5
RET
;**************************
Další informace o konferenci Hw-list