在汇编中生成随机 32 位数字
Generating random 32bit number in assembly
我正在寻找一个生成从 1 到 n 的随机数的汇编函数。 n 值可能约为 60000。我不知道该怎么做。我已经搜索过这个,但找不到任何符合我期望的东西。
线性全等生成器:
r[n+1] = (a * r[n] + c) % m
m = 65537 (216+1)
a = 65538(a - 1
必须是 m
的任何质因数的倍数,单个因数是 m
本身,即 65537)
c = 任意偶数(c
和 m
必须互质)
[Knuth,第二卷,3.2.1.1--3.2.1.2]
我正在寻找一个生成从 1 到 n 的随机数的汇编函数。 n 值可能约为 60000。我不知道该怎么做。我已经搜索过这个,但找不到任何符合我期望的东西。
线性全等生成器:
r[n+1] = (a * r[n] + c) % m
m = 65537 (216+1)
a = 65538(a - 1
必须是 m
的任何质因数的倍数,单个因数是 m
本身,即 65537)
c = 任意偶数(c
和 m
必须互质)
[Knuth,第二卷,3.2.1.1--3.2.1.2]