いう擬似乱数列生成系の提案です。standardにすら遠く及ばない簡易な生成系ですが、用途によってはこれで十分なこともあるでしょう。概要(おそらく最大の)フェルマー素数である65537を法とすることが特徴の、素数を法とする乗法合同法による擬似乱数列生成系です。2巻、等)を参照してください。しては、次の4つの数を候補とします。23272この4数はスペクトル検定で、2〜6次元の「全ての次元でそれほど悪くない」結果になるものです。それぞれのひとつの次元ではこれより良い結果になる数もありますが、別の次元で極端に悪いため候補から外しました。示すと次のようになります。機械語命令では「ゼロの時ジャンプ」という1命令が追加で必要になりますが、そう大きなコストでもないでしょう。ここでは8086での実装例を示します。C-86付属のアセンブラr86のもので一般的ではありませんが、同処理系を実装されたkmoriさんを偲んでそのまま掲載します。CGROUPGROUPTEXTDGROUPGROUPDATA,BSSTEXTCSEGDATADSEGBSSDSEGTEXTCSEGfllcg_srand_::MOV[fllcg_state_].W,AXRETAEQU15978fllcg_rand_::PUSHDXMOVAX,[fllcg_state_].WMOVBX,AMULBXSUBAX,DXJZ_1ADCAX,0MOV[fllcg_state_].W,AXPOPDXRET_1:MOVAX,1-AMOV[fllcg_state_].W,AXPOPDXRETBSSDSEGEVENfllcg_state_:RS2END。