gpt4 book ai didi

assembly - 在 16 位 Turbo Pascal 中访问高性能计数器

转载 作者:行者123 更新时间:2023-12-01 13:01:36 26 4
gpt4 key购买 nike

我正在尝试在 16 位 Turbo Pascal 7 程序(不要问...)中使用高性能计数器,该程序在 WinXP DOS 框中运行。我可以使用内联 $0F、$31 执行 RDTSC 指令,并将 AX 和 DX 的内容设置为看起来合理的值,但我如何访问 EAX、EDX 的上半部分并将结果写入 2 个长字全局变量?

最佳答案

如果我正确阅读了我的文档,那么您可以通过使用操作码的 0x66 前缀从实模式访问 32 位寄存器。因此,内联“$66 $50”应该具有以下效果:它将 EAX 作为 32 位值压入堆栈。然后你只需弹出下半部分和上半部分作为两个正常的(16 位)pop 操作码(你会先得到下半部分)。对于 EDX,请使用“$52”而不是“$50”。

(我没试过这个。)

关于assembly - 在 16 位 Turbo Pascal 中访问高性能计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5576070/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com