<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在200 smart中生成偽隨機數

CHANBAEK ? 來源:頭條號朝拾憶 ? 作者:頭條號朝拾憶 ? 2023-03-23 13:51 ? 次閱讀

上文寫了博途中生成偽隨機數的幾種辦法,現在試著使用其中簡單的線性同余法實現在200 smart中完成類似功能。

回顧下線性同余法的公式:RandNum =(A * RandNum + B)% M

A、B、M均為常數,其中A是乘數,B是增量,M是模數,RandNum是初始值(種子)。

與博途不同的是,①:200 smart中沒有雙整數相除得余數的直接指令,需要我們自行實現;②:200 smart讀取系統時間,最小計量單位只到秒,不能直接將其作為偽隨機數發生器的種子,而博途能精確到納秒,可以作為種子。

程序如下(只涉及基本運算,僅供參考):

poYBAGQb6LqAW2XQAABHHEdLM6I905.jpg

在"線性同余"中調用"雙整數取余"

pYYBAGQb6LuAZaeyAAD3v2qxotY052.jpg

主程序

poYBAGQb6LyAVlPzAABsBh7R3n8327.jpg

"線性同余"

關于A、B、M的取值,可以參考以下方法:

pYYBAGQb6L2AO-tuAAE0qspDQ-A398.jpg

poYBAGQb6L6ABW_IAABPfEjhlF4200.jpg

"雙整數取余"

poYBAGQb7IGAdNwEABvjP0yG4zA838.gif

運行情況

使用類似方法得到偽隨機數序列,可用于程序的模擬、調試。

完。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • SMART
    +關注

    關注

    3

    文章

    219

    瀏覽量

    44463
  • 指令
    +關注

    關注

    1

    文章

    580

    瀏覽量

    35398
  • 程序
    +關注

    關注

    114

    文章

    3630

    瀏覽量

    79660
  • 模數
    +關注

    關注

    0

    文章

    40

    瀏覽量

    13189
  • 偽隨機數
    +關注

    關注

    0

    文章

    4

    瀏覽量

    7104
收藏 人收藏

    評論

    相關推薦

    請問如何在MATLAB中生成一組在規定范圍符合指定分布的隨機數

    何在MATLAB中生成一組在規定范圍符合指定分布的隨機數何在MATLAB中生成一組在規定范圍符合指定分布的
    發表于 03-17 11:40

    【assingle分享】labview隨機數發生器

    ,提供了多種不同的函數,下面大概總結一下。一、隨機數發生器在LABVIEW數值函數選板中,提供了一個隨機數發生器函數,返回一個0-1之間的隨機數
    發表于 04-07 10:27

    請問如何生成固定的隨機數?

    比如有三個數字1 3 5 如何設計一個程序或者命令來生成隨機數,但僅限于生成1,3或5
    發表于 05-01 11:56

    概率隨機數生成【子模塊】

    本帖最后由 ZHZJK 于 2014-1-7 17:04 編輯 你還在用系統自帶的隨機數生成函數嗎你還在為模擬數值虛假而煩惱嗎而個人編寫了一個按照概率生成隨機數子模塊將會解決這
    發表于 12-31 16:49

    【總結】LabVIEW隨機數發生器

    的期望均值μ和期望標準偏差μ = E{x} = 0= [E{x – μ}2]1/2 = s隨機序列產生約290個采樣后才會出現重復。下面創建一個正態分布隨機數序列,并計算它的均值和標準方差。信號
    發表于 01-30 14:51

    關于隨機數生成器復用的問題

    本人最近用verilog寫了一個隨機數生成器RNG,生成一個32bits的隨機數,然后加入到信道仿真的模塊中,在信道仿真的模塊里面需要有3個子模塊都需要用這個
    發表于 07-27 16:59

    關于STM32真隨機數算法的問題

    rand是隨機數,真隨機數配合定時器time()計算產生隨機數,但是如果我想上電初始化的時候要產生一個隨機數怎么做,單片機每次上電時間都是
    發表于 11-13 10:12

    隨機數發生器在信息安全系統中的應用

    中的隨機函數,只能產生出隨機數。它有其自身的內在規律,只能作為對外部世界的隨機事件的近似模擬。目前最常見的
    發表于 12-05 09:55

    如何使用MSP430內部時鐘生成隨機數

    ■TI公司 MSP430微控制器產品部Lane Westlund不管是生成隨機器件地址、強化加密算法還是創建獨立產品密鑰,可靠地生成隨機數都變得日益重要。這些
    發表于 07-12 06:20

    keil-O2優化時系統自帶的隨機數會導致死機

    暫時用的一個代替方法: //獲取隨機數//可以產生0~RANDOM_MAX-1的隨機數//seed:種子//max:最大值 //返回值:0~(max-1)中的一個值u32 app_get_rand
    發表于 03-27 04:36

    單片機C語言如何產生隨機數

    來實現隨機數的產生。 C語言中有三個通用的隨機數發生器,分別為 rand函數、random函數、randomize 函數,但是rand函數產生的并不是真意正義上的隨機數,是一個
    發表于 05-14 15:14

    什么是隨機數

    做開發的工程師們應該或多或少都接觸過隨機數,可能認為它就是一個隨機生成的數字嘛,使用時也很簡單,只要調用開發語言提供的函數即可。但實際上隨機數后面還是有著比較復雜但也有趣的知識點的。根
    發表于 07-22 09:42

    stm32隨機的使用

    stm32隨機的使用前言最近使用了一款芯片,內置隨機數發生器,封裝了一個 8 Byte的指令接口,mcu每次發送指令給芯片,芯片就會返回 8 字節隨機數。但如果沒有芯片,這個
    發表于 08-23 07:08

    單片機生成隨機數的方法

    大家都知道單片機要生成隨機數有一個比較簡單的方法,就是用定時器的計數值來生成。但是如果是要求在一定數據范圍內生成一個隨機數,并且與之前
    發表于 01-18 06:07

    學習筆記 | 基于FPGA的隨機數發生器(附代碼)

    是專門的隨機試驗的結果,產生隨機數有多種不同的方法。這些方法被稱為隨機數生成器。隨機數最重要的特性是它在產生時后面的那個數與前面的那個數毫無
    發表于 04-21 19:42
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>