gpt4 book ai didi

floating-point - 如何在软件中模拟浮点运算?

转载 作者:行者123 更新时间:2023-12-04 17:56:47 31 4
gpt4 key购买 nike

关闭。这个问题需要更多focused .它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .

5年前关闭。




Improve this question




当 CPU 没有(或有缺陷的)浮点单元时,软件如何执行浮点运算?例如 PIC、AVR 和 8051 微 Controller 架构。

最佳答案

“仿真”是 PIC、AVR 和 8051 上下文中的错误术语。浮点仿真是指在具有 FPU 选项但并非所有部件都包含 FPU 的体系结构上对 FPU 硬件进行仿真。这允许包含浮点指令的二进制文件在没有 FPU 的变体上运行。在使用时,FPU 仿真被实现为无效指令异常处理程序;当遇到 FPU 指令但没有 FPU 时,会发生异常,处理程序读取指令值并在软件中实现操作。

但是,您列出的架构都没有定义 FPU 或 FPU 指令,因此没有什么可模拟的。相反,在这些情况下,浮点运算完全在软件中实现,编译器生成代码以根据需要调用浮点例程。例如表达式 x = y * z ;将生成等效于函数调用的代码 x = _fmul( y, z ) ; .事实上,如果您查看包含浮点运算的构建的链接器映射输出,您可能会看到例程符号名称,例如 _fmul , _fdiv等等 - 这些函数是编译器固有的。

关于floating-point - 如何在软件中模拟浮点运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39810751/

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