zoukankan      html  css  js  c++  java
  • 关于<C++ PRIMER>的一点随想(原)

      忽然记起C++ PRIMER中提到过,double类型的数据,在CPU上运行会比float要快.

      其实,它这么说,是有些不严谨的.我们知道,CPU中的浮点运算,都是用一个叫做扩展精度寄存器来运算的.这个扩展精度寄存器是80位大小的(也就是10个字节).也就是说float和double都是扩展成10个字节来计算的.

      可能C++ PRIMER作者的意思是,在存回结果的时候,要进行截断,于是有更大精度范围的double自然会比float快.

      但是在C语言里面,扩展精度被实现为long double,这个有12个字节,主要是考虑到字节对齐(也和效率有关)的问题,所以多用了2个字节.所以,应该是long double的速度是最快的.

      但这同时也带来了空间上得一点浪费.

      本人小菜,说的不对,望各位高手指教.

  • 相关阅读:
    类加载器
    类加载器
    类加载器
    类加载器
    Java11新特性
    Java11新特性
    Spring Cloud Alibaba学习笔记(24)
    Java11新特性
    PyCharm Professional 2016.1 破解 激活
    pycharm最新激活码 2018 2.28 到期
  • 原文地址:https://www.cnblogs.com/winkyao/p/2295658.html
Copyright © 2011-2022 走看看