如何使用汇编程序从英特尔处理器中获取随机数?

2024-03-14

我需要从处理器(英特尔酷睿 i3)中的英特尔随机生成器获取随机数。我不想使用任何图书馆。我想在 C++ 中使用汇编程序粘贴,但我不知道应该使用哪些寄存器和指令。


呼叫RDRAND支持的 CPU(目前仅 Ivy Bridge 和 Haswell Intel CPU)上的指令会将随机值放入指定的寄存器中。例如,这将为您提供一个随机 64 位值:

RDRAND %rax

成功后,进位位将被设置。参见英特尔的Bull Mountain 软件实施指南 http://software.intel.com/file/37157更多细节。 (“Bull Mountain”是英特尔硬件 RNG 的代号。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用汇编程序从英特尔处理器中获取随机数? 的相关文章

随机推荐

  • Android 应用内结算返回服务器响应代码 2。这是什么意思?

    我正在使用应用内结算 V3 当我尝试购买时 我收到服务器响应代码 2 我已经搜索过 但找不到有关此响应代码含义的文档 如果你看官方的话应用内结算参考 IAB 版本 3 http developer android com google pl
  • 从 Git 子模块存储库导入 React 组件

    我有一个用 React 开发的父存储库 其中有一个子子模块 也是由 React 开发的 项目文件夹结构如下所示 parent git nodemodule src subModules childProject git src js x j
  • 在 ANTLR 3 中,如何在运行时而不是提前生成词法分析器(和解析器)?

    我想在运行时生成 antlr 词法分析器 也就是说 生成语法并从语法生成词法分析器类及其在运行时的支持位 我很高兴将它输入到 java 编译器中 它可以在运行时访问 这是一种快速但肮脏的方法 生成一个combined ANTLR 语法 g给
  • 与单进程场景​​相比,多进程场景中的访问时间意外缩短

    我正在从program1访问共享库 共享数组数据结构 并找到读取该数组的所有元素的访问时间 当只有 Program1 单独执行时 我得到了大约 17000 个时钟周期 现在 当我首先在另一个选项卡中执行program2 具有空的while循
  • 使用 Travis-CI 推送 Git 存储库

    我想每次推送到主服务器时都执行一个脚本 该脚本将创建一些我想要提交和推送的文件 Travis 构建的日志似乎正在添加文件 提交和推送 但没有任何反应 我的 travis yml 是这样的 before install openssl aes
  • 通过交集和并集组合 NSArray

    我有两个 NSArrays A 和 B 它们共享一些共同的元素 例如 A 1 2 3 4 5 B 4 5 6 7 我想创建一个新的 NSArray 其中包含两个 NSArray 之间常见的内容 并与第二个 NSArray 的内容相连接 同时
  • 如何在.net core 2启动时访问IConfigurationRoot?

    我写了一个自定义ConfigurationProvider与实体框架 因为我还想让它在运行时可更新 所以我创建了一个IWritableableOption https stackoverflow com a 42705862 2441442
  • 批处理文件双击可以正常运行,但无法在 Windows 计划任务中运行

    我的 C 驱动器上有一个 archive pst 文件 我在 Outlook 中使用它来备份我的电子邮件 但我的C 不是每晚都备份的 因此 我想将 pst 文件复制到我的网络驱动器 以便持续备份 出于多种原因 我不希望 Outlook 直接
  • 为什么用于标点符号的 R gsub (或 regexp)不能获取所有标点符号?

    我正在清理基于文本的数据文件 但无法弄清楚为什么gsub punct X1 没有给出所有标点符号的匹配 不幸的是 我无法在这里复制这个问题 这让我认为这是一个字符编码问题 有问题的标点符号的外观与标准 ASCII 明显不同 这是我读入文件后
  • 在 Python 中生成一周中的日期?

    我需要从一个日期生成一周的星期一的日期 例如 2015 10 22 并生成接下来几天的日期 星期一 星期二 星期三 星期四 星期五 星期六 星期日 Java 示例 初始日期 2015 10 22 周一 date set Calendar D
  • 在 Spring Security 中传播 AccessDeniedException

    在我的 Web 应用程序中 我使用 Spring Security 和 Spring MVC 我已经使用了几种方法 Secured注释并以这样一种方式配置 Spring Security 当没有适当角色的情况下访问其中一个方法时 用户将被带
  • 获取 magento 商店列表

    如何获取 Magento 网站下的商店组列表 然后获取该商店组中的商店列表 尝试这样直接获取对象 Mage app gt getWebsites lt in file gt app code core Mage Core Model App
  • iOS 5、xcode 4.2、故事板中的主页按钮

    iOS 5 0 代码 4 2 我正在做一份多步骤调查问卷 每个分支大约有10个问题 并且还有子分支 但逻辑是相当线性的 大多数是 否答案 但也有一些多选选项 调查问卷将得出结论页 在此结论页面上 我想要一个显示 HOME 的按钮 这会将用户
  • 作为本地化字符串的字符串常量

    我想本地化我的常量 常量按通常的方式定义和声明 extern NSString const kStringName NSString const kStringName Whatever 如何使其可本地化 这根本行不通 NString co
  • NOCHECK 不禁用外键引用

    表创建脚本 CREATE TABLE dbo details id int NULL details varchar max NULL CREATE TABLE dbo name id int IDENTITY 1 1 NOT FOR RE
  • 如何自动更新 Subversion 工作副本?

    有谁知道我如何自动运行svn update 如果有人有脚本或类似的东西 你能给我举个例子吗 我正在使用 TortoiseSVN 在生产服务器上 我有一个运行以下批处理文件的计划任务 CD C Program Files TortoiseSV
  • 如何查看 Git 存储中未跟踪的文件

    我经常将我完成的工作隐藏在新的 未跟踪的 文件中 并且我希望以后能够找到这项工作 找到它的明显方法似乎是git show 我刚刚发现Git在我使用时完全省略了这些文件git show 但幸运的是 在弹出隐藏代码时不会忽略它们 这使得似乎不可
  • 在 FFmpeg 中正确分配和填充帧

    我正在填写一个Frame使用 BGR 图像进行编码 但出现内存泄漏 我想我找到了问题的根源 但它似乎是一个库问题 由于 FFmpeg 是一个如此成熟的库 我认为我误用了它 我希望得到指导如何正确地使用它 我正在分配一个Frame using
  • JasperReports 中的印地语字体 [重复]

    这个问题在这里已经有答案了 在印地语字体的内部预览中正确显示 但在 PDF 中情况有所不同 例如 在 Pdf 中显示 怎么解决这个问题 一些字体类型 例如 Arial Unicode MS 将支持特殊字符 例如印地语符号 要解决此问题 请打
  • 如何使用汇编程序从英特尔处理器中获取随机数?

    我需要从处理器 英特尔酷睿 i3 中的英特尔随机生成器获取随机数 我不想使用任何图书馆 我想在 C 中使用汇编程序粘贴 但我不知道应该使用哪些寄存器和指令 呼叫RDRAND支持的 CPU 目前仅 Ivy Bridge 和 Haswell I