美文网首页
Python 模拟32bit 浮点数运算

Python 模拟32bit 浮点数运算

作者: Holi2018 | 来源:发表于2018-04-21 15:39 被阅读0次

周虽旧邦,其命唯新

01

“如将Python中的浮点数运算精度限制到32位?”

为什要提出这么怪异的问题。存在即合理~~

提出这个问题的原因是,在用python模拟32位MCU上的程序时,发现两者的结果有差异。

而差异的地方就是重点。秉持这种观点,我就想办法深挖下去。排除了其他所有的可能,就差计算精度的影响了。

MCU的浮点运算单元是32位的,而Python默认的浮点运算为64位(安装的64 bit安装包)

python shell

浮点运算的结果如下:

python shell

32位浮点数的有效数据位为7位,而以上计算结果明显超过7位。

02

差异已经很明显了,那怎么消除着这种差异~~

方案一:

使用round()控制精度。

No,单精度与双精度浮点运算差异不止一个round函数,也不止千八百个~~

方案二:

使用decimal模块

这个还在我的学习计划中~~

方案三:

stackoverflow.com

问题解决~~

03

使用numpy模块中的float32完美解决这个问题。

numpy.float32

举个例子~~

python shell

End

相关文章

  • Python 模拟32bit 浮点数运算

    周虽旧邦,其命唯新 01 “如将Python中的浮点数运算精度限制到32位?” 为什要提出这么怪异的问题。存在即合...

  • Python入门第二课

    Python中整数和浮点数 Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全...

  • JS程序员入门Python笔记-语法篇

    1、 语法改动 2、和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数: ...

  • python标准数据类型--数值

    数值类型: python支持的数值类型有整数、浮点数和复数(a+bj) 数值操作 基本四则运算:+-*/,除法运算...

  • Python的整数与浮点数

    整数和浮点数混合运算的结果是浮点数整数运算中

  • 8-Python中整数和浮点数

    Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。 基本的运算: 1 +...

  • Python运算符重载

    Python运算符重载 一、模拟数字类型运算重载 1.算术运算 2.比较运算 示例: 二、反向操作与就地操作 1....

  • note-7——Python中整数和浮点数

    Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。基本的运算: 使用括号...

  • 009-Python中整数和浮点数

    Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。 基本的运算: 使用括...

  • 3-8Python中整数和浮点数

    Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。基本的运算: 使用括号...

网友评论

      本文标题:Python 模拟32bit 浮点数运算

      本文链接:https://www.haomeiwen.com/subject/pajxlftx.html