Вектор-06Ц/Генератор случайных чисел
Этот документ создан для Emuverse и распространяется на условиях лицензии CC-BY-SA-3.0. |
(Права на описание — Emuverse, права на фрагменты кода — см. в шапке фрагмента.)
LFSR 16-битный
https://zx-pk.ru/threads/21907-demo-effekty-dlya-vektora.html?p=930543&viewfull=1#post930543
; by ivagor rnd16: lxi h,65535 dad h shld rnd16+1 rnc mvi a,00000001b ; flipped 80h - 10000000b xra l mov l,a mvi a,01101000b ; flipped 16h - 00010110b xra h mov h,a shld rnd16+1 ret
LFSR/LCG 16-битный
https://wikiti.brandonw.net/index.php?title=Z80_Routines:Math:Random#Combined_LFSR.2FLCG.2C_16-bit_seeds
https://zx-pk.ru/threads/32499-portirovanie-desolate-na-vektor-06ts.html?p=1091958&viewfull=1#post1091958
Random16: ld hl,(seed1) ld b,h ld c,l add hl,hl add hl,hl inc l add hl,bc ld (seed1),hl ld hl,(seed2) add hl,hl sbc a,a and %00101101 xor l ld l,a ld (seed2),hl add hl,bc ret seed1: dw 12345 seed2: dw 54321