インテル® C++ コンパイラー 14.0 ユーザー・リファレンス・ガイド
16/32/64 ビットの乱数整数を生成します。対応する第 4 世代インテル® Core™ プロセッサー拡張命令は RDSEED です。
extern int _rdseed16_step(unsigned short *random_val); |
extern int _rdseed32_step(unsigned int *random_val); |
extern int _rdseed64_step(unsigned __int64 *random_val); |
これらの組込み関数は、16/32/64 ビットの乱数整数を生成します。 これらの組込み関数は、RDSEED 命令に基づくコードシーケンスにマップされます。 生成されるコードは、組込み関数が使用されているコンテキストとターゲット OS に依存します。
_rdrand64_step() 組込み関数は、64 ビット・レジスターをサポートしているシステムでのみ使用できます。
生成された乱数は指定されたメモリーの場所に書き込まれ、ステータス (ハードウェアによって有効な乱数が返された場合は '1'、そうでない場合は '0') が返されます。