Náhodné volání podprogramu v ASM
HackForum

Náhodné volání podprogramu v ASM | # |
| Programuju mikroprocery pic v assembleru.
Mam 27 podprogramu a potrebuju je nahodne volat. Nevi nekdo jak na to? Díky (odpovědět) | Honzaa | 213.195.224.2/10.115.126.* | 27.12.2006 11:07 |
|
|
|
re: Náhodné volání podprogramu v ASM | # |
| Generátory náhodných čísel, založené na oblíbené rovnici x[i + 1] = (5 * x + 1) mod 256.
Jednoduchý generátor (8bitové číslo, za náhodnou lze považovat vyšší část bitů) ASM Z80 (přepiš si do assembleru svého procesoru:
¨
Rand8ld a,Seed ; obvykle 0
ld b,a
adda,a
adda,a
adda,b
inc a ;nebo ADD A,7
ld (Rand8+1),a
ret
Šestnáctibitově:
Rand16 ldde,Seed ; obvykle 0
ld a,d
ld h,e
ld l,253
or a
sbc hl,de
sbca,0
sbc hl,de
ld d,0
sbca,d
ld e,a
sbc hl,de
jr nc,Rand
inc hl
Rand ld (Rand16+1),hl
ret
V prvním případě je v A (pseudo)náhodné číslo 0-255, v případě druhém je v HL číslo 0-65535.
Citováno: [link] , strana 4. (odpovědět) | |
|
|
re: Náhodné volání podprogramu v ASM | # |
| Pokazdy kdyz to spustim tak to vygeneruje ty sama cisla ne? (odpovědět) | Honzaa | 213.195.224.2/10.115.126.* | 27.12.2006 15:28 |
|
|
|
re: Náhodné volání podprogramu v ASM | # |
| Tak si změň seed, ne? Proxoruj třeba čas od zapnutí počítače s nějakou jinou hodně proměnlivou hodnotou... (odpovědět) | guma2 | 195.113.79.10/10.0.10.* | 27.12.2006 18:44 |
|
|
|