首页 > 其他分享 >什么是浮点数

什么是浮点数

时间:2023-01-07 18:55:05浏览次数:48  
标签:表示 单精度 尾数 浮点数 什么 精度 小数

像1011.0011这样带小数点的表现形式,完全是纸面上的二进制数表现形式,在计算机内部是无法使用的。那么,实际上计算机是以什么样的表现形式来处理小数的呢?我们一起来看一下。很多编程语言中都提供了两种表示小数的数据类型,分别是双精度浮点数和单精度浮点数。双精度浮点数类型用64位、单精度浮点数类型用32位来表示全体小数。在C语言中,双精度浮点数类型和单精度浮点数类型分别用double和float来表示。不过,这些数据类型都采用浮点数来表示小数。

浮点数是指用符号、尾数、基数和指数这四部分来表示的小数(如下图)。

 

 

因为计算机内部使用的是二进制数,所以基数自然就是2。因此,实际的数据中往往不考虑基数,只用符号、尾数、指数这三部分即可表示浮点数。也就是说,64位(双精度浮点数)和32位(单精度浮点数)的数据,会被分为三部分来使用(如下图)。

 

 


像0.3333·…这样相同数值无限循环的值称为循环小数。计算机是功能有限的机器设备,无法直接处理循环小数。

双精度浮点数和单精度浮点数能够表示的范围如下图

 

 

浮点数的表现方式有很多种,这里我们使用最为普遍的IEEE(美国电气和电子工程师协会:这个协会制定了计算机领域的各种规定)标准。双精度浮点数和单精度浮点数在表示同一个数值时使用的位数不同。此外,双精度浮点数能够表示的数值范围要大于单精度浮点数。
符号部分是指使用一个数据位来表示数值的符号。该数据位是1时表示负,为0时则表示“正或者0”。这和用二进制数来表示整数时的符号位是同样的。数值的大小用尾数部分和指数部分来表示。例如,小数就是用“尾数部分×2的指数部分次幂”这样的形式来表示的。讲到这里,大家是不是多少有点概念了呢。
尾数部分和指数部分并不只是单单存储着用整数表示的二进制数。尾数部分用的是“将小数点前面的值固定为1的正则表达式”,而指数部分用的则是“EXCESS系统表现”。

标签:表示,单精度,尾数,浮点数,什么,精度,小数
From: https://www.cnblogs.com/2674308160-lucky/p/17033266.html

相关文章

  • K8s 为什么会抛弃 docker
    为什么K8s会抛弃docker前言CRIcontainerd参考为什么K8s会抛弃docker前言在这之前先来了解下,k8s是如何和docker进行交互的。CRIkubelet调用下层容......
  • 软件测试和开发之间的工作有什么区别
    从工作内容强度来看开发人员在项目开发过程和上线之后的人员配比悬殊巨大,比如在开发周期的时候,需要10个人来写代码,但在项目上线后,可能只需要两三个人来维护就可以......
  • c语言的主要用途是什么?
    C语言的用途可以概括如下: 1)系统编程C语言可移植性好,性能高,能够直接访问硬件地址,而且到达某个地址的时间非常短,这使得C语言天生适合开发操作系统或者嵌入式应用程序。在......
  • 37_Java中的浮点数精确运算
    java中的BigDemcimal用于小数的精确运算构造方法:​ BigDecimal(Stringval)四则运算:​ add(BigDecimalb):加法​ subtract(BigDecimalb):减法​ multiply......
  • 什么是计算机
    什么是计算机按照程序运行,由硬件和软件组成。计算机的硬件计算机的组成包括:CPU主板内存电源主机箱硬盘显卡键盘鼠标显示器等,其中CPU,memory,motherboard是最重要......
  • 既然有MySQL了,为什么还要有MongoDB?
    大家好,我是哪吒,最近项目在使用MongoDB作为图片和文档的存储数据库,为啥不直接存MySQL里,还要搭个MongoDB集群,麻不麻烦?让我们一起,一探究竟,了解一下MongoDB的特点和基本用法,实......
  • IEEE浮点数——打印浮点型数据的各个部分 共用体 + 位域
    标准浮点格式单精度浮点数值的分类/*打印浮点型数据的各个部分*共用体+位域*单精度浮点型*大端31s符号exp阶码frac尾数小端0*位数1......
  • hncloud:美国主机的性价比高 为什么
    近些年随着美国服务器在国内的火爆,许多国内用户都选择租用美国的服务器,其除了免备案外,价格也是很便宜的。那么,美国服务器价格为什么这么便宜?小编就为大家进行整理。......
  • 什么是Rancher :Rancher 概述及其应用场景
    一、什么是容器关于容器,说复杂了也复杂,说简单了也简单。因为容器可以看作是轻量化的虚拟机,也可以看作是微服务的基础等等,但容器本身其实最关键的是跳出操作系统而独立运行......
  • 什么是 DevSecOps?
    DevSecOps分别代表开发、安全和运营。这是一个新的工作流程,涉及将安全实践集成到所有DevOps流程中。DevSecOps在开发过程的早期进行安全实践和实施。这就创造了一种文化,即......