上文寫(xiě)了博途中生成偽隨機(jī)數(shù)的幾種辦法,現(xiàn)在試著使用其中簡(jiǎn)單的線性同余法實(shí)現(xiàn)在200 smart中完成類(lèi)似功能。
回顧下線性同余法的公式:RandNum =(A * RandNum + B)% M
A、B、M均為常數(shù),其中A是乘數(shù),B是增量,M是模數(shù),RandNum是初始值(種子)。
與博途不同的是,①:200 smart中沒(méi)有雙整數(shù)相除得余數(shù)的直接指令,需要我們自行實(shí)現(xiàn);②:200 smart讀取系統(tǒng)時(shí)間,最小計(jì)量單位只到秒,不能直接將其作為偽隨機(jī)數(shù)發(fā)生器的種子,而博途能精確到納秒,可以作為種子。
程序如下(只涉及基本運(yùn)算,僅供參考):
在"線性同余"中調(diào)用"雙整數(shù)取余"
主程序
"線性同余"
關(guān)于A、B、M的取值,可以參考以下方法:
"雙整數(shù)取余"
運(yùn)行情況
使用類(lèi)似方法得到偽隨機(jī)數(shù)序列,可用于程序的模擬、調(diào)試。
完。
-
SMART
+關(guān)注
關(guān)注
3文章
229瀏覽量
45272 -
指令
+關(guān)注
關(guān)注
1文章
615瀏覽量
36234 -
程序
+關(guān)注
關(guān)注
117文章
3824瀏覽量
82431 -
模數(shù)
+關(guān)注
關(guān)注
0文章
40瀏覽量
13435 -
偽隨機(jī)數(shù)
+關(guān)注
關(guān)注
0文章
4瀏覽量
7209
發(fā)布評(píng)論請(qǐng)先 登錄
請(qǐng)問(wèn)如何在MATLAB中生成一組在規(guī)定范圍符合指定分布的隨機(jī)數(shù)
什么是隨機(jī)數(shù)
學(xué)習(xí)筆記 | 基于FPGA的偽隨機(jī)數(shù)發(fā)生器(附代碼)
C語(yǔ)言中偽隨機(jī)數(shù)的產(chǎn)生及性能檢驗(yàn)
C語(yǔ)言random函數(shù)偽隨機(jī)數(shù)產(chǎn)生
神經(jīng)網(wǎng)絡(luò)的偽隨機(jī)數(shù)生成方法
偽隨機(jī)數(shù)生成算法
如何在C語(yǔ)言中使用隨機(jī)數(shù)
如何使用隨機(jī)數(shù)生成器來(lái)生成私鑰

基于FPGA的偽隨機(jī)數(shù)發(fā)生器設(shè)計(jì)方案
MAX765x微處理器的偽隨機(jī)數(shù)生成例程

FPGA的偽隨機(jī)數(shù)發(fā)生器學(xué)習(xí)介紹
如何使用雪花算法生成真正的隨機(jī)數(shù)
如何在FPGA中實(shí)現(xiàn)隨機(jī)數(shù)發(fā)生器

評(píng)論