- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在开发一个同时使用 CPU 和 FPU 寄存器的汇编程序。我的问题涉及如何将寄存器值加载到 FPU 堆栈(即 ecx)。
mov ecx, 10d ; Load 10 into ECX
fldpi ; Load Pi
fild ecx ; This does not work, it does however for .data variables
fmul ; Multiply
任何帮助将不胜感激。我正在使用 Visual Studio 2015/MASM 进行开发,使用 .386 和 .model flat、STDCALL。
最诚挚的问候,Z
最佳答案
你可以这样做:
mov [temp_mem],ecx
fild dword ptr [temp_mem]
或
push ecx
fild dword ptr [esp]
pop ecx
或者您可以在数据部分中只包含常量 10:
.data
ten dd 10
.code
fild dword ptr [ten]
关于assembly - 将寄存器值加载到 FPU 堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31746253/
我在 masm 中有这段代码来处理 FPU,它工作得很好 在这段代码中,我从 2 个不同的文本框中获取一个数字,然后将它们相除,然后将结果输出到另一个文本框 这是本地的数据 LOCAL variabl
现代 FPU 使用什么方法来计算 transcendental functions ? 例如,Intel CPU 提供的指令如 FSIN , FCOS , FYL2X等。我很好奇将使用哪些算法在硬件中
我需要更改 FPU control word从它在多线程应用程序中的默认设置。这个设置是每线程还是每进程?它在 Mac OS X 和 Windows 下有不同的作用域吗? 最佳答案 它是 Window
fpu 以基于堆栈的方式实现其寄存器的动机是什么?据我了解,其他指令集(例如 x86/sse)使用命名寄存器。我可以想象基于堆栈的属性通常与我们对函数的想法相对应,从而为汇编程序员带来更直观的设计。
为什么当进入ECX循环时会有一些大的随机值插入0?还有其他方法可以在这里循环吗? program Project2; {$APPTYPE CONSOLE} uses SysUtils; funct
十进制数学是否使用 FPU? 我认为答案是肯定的,但我不确定,因为小数不是浮点数,而是固定精度数。 我主要在寻找 .NET,但一般的答案也很有用。 最佳答案 关于 .NET,更具体地说是 C#,不,S
我有一个函数是实用程序库的一部分,它在 C++ Builder 中编译和运行时创建的单元测试失败。问题函数如下。运行单元测试时,程序似乎卡在 fldcw controlWord 行,无法越过该行。似乎
我想在 x86 系统中禁用 FPU/MMX/SSE 指令,我将为 Device-Not-Available 异常实现一个处理程序。我提到了Control register wiki page ;看来我
我最近在 FPU 堆栈溢出方面遇到了一些麻烦。我设法将其追溯到一个有问题的库函数,该函数每次调用时都会将垃圾值推送到 FPU 堆栈上,并且从不清除它。 幸运的是,这很容易重现,我确切地知道是什么条件导
我目前正在开发一个同时使用 CPU 和 FPU 寄存器的汇编程序。我的问题涉及如何将寄存器值加载到 FPU 堆栈(即 ecx)。 mov ecx, 10d ; Load 10 into E
我目前正在开发一个同时使用 CPU 和 FPU 寄存器的汇编程序。我的问题涉及如何将寄存器值加载到 FPU 堆栈(即 ecx)。 mov ecx, 10d ; Load 10 into E
抱歉我的英语不好 我正在努力提高我的 asm 能力,我发现这很容易使用机器代码例程对其进行处理的入口点来自 C 代码 我是这样用的 char asmRoutineData2[] =
所以我在 AT&T 中用汇编写了一些 C。我现在遇到了一个小问题,因为当我用 float 参数调用 f_float 的第一个函数时,参数从堆栈加载并且返回值是正确的。但是在第二次调用带有双参数的 f_
我想知道,我应该使用什么值来更改 FPU 舍入模式。 .data nearest: ?? down: ?? up: ?? zero: ?? .text .global
介绍——又长又无聊的部分 (问题在最后) 我对不断更改 FPU 控制字的第三方 COM 组件感到非常头疼。 我的开发环境是Windows和Visual C++ 2008。正常的FPU控制字指定在各种情
我想知道是否可以将 SSE 与 x87 并行使用。所以考虑下面的伪代码, 1: sse_insn2: x87_insn 假设管道 1 和 2 可以并行执行,它们是否会并行执行? 最佳答案 在所有现代(
编辑:我在调试 session 期间犯了一个错误,导致我提出这个问题。我看到的差异实际上在于打印 double 和解析 double (strtod)。即使在这次整改之后,斯蒂芬的回答仍然很好地涵盖了
我有一个软件项目,在这个项目中,我有时会从小型、简单的浮点运算中得到奇怪的结果。我假设我遗漏了一些东西,并且想要一些关于如何调试以下问题的提示: (使用的编译器是MS VC 6.0,也就是Micros
是否可以在没有浮点单元的嵌入式处理器中执行浮点运算? 最佳答案 是的,您只需在软件中完成即可。你的compiler may provide support ,或者您可能需要自己动手。有freely-a
我可以用这个重置 FPU 的 CTRL 寄存器: http://support.microsoft.com/kb/326219 但是我怎样才能保存当前寄存器并在以后恢复它们呢? 它来自.net代码..
我是一名优秀的程序员,十分优秀!