当前位置: 首页 > news >正文

【C++】科普:C++中的浮点数怎么在计算机中表示?

这里我们以8.25这个数为例说明计算机时如何存取float类型的数据的:

float a = 8.25;

引言

1. 所占位数

首先,明确一个概念,float类型的数据在常规计算机中通常占4个字节,也就是32位。其内存分布如图:

在这里插入图片描述

位字段说明所占位数具体含义
符号位1说明浮点数正负,0表示正,1表示负
指数位8说明浮点数的指数,也有正负,大于127为正,小于127的为负
尾数位23浮点数的尾数位

2. 科学计数法

在十进制中,我们了解科学计数法。

例如,825的科学计数法表述为:8.25*102,0.0825的科学计数法表述为:8.25*10(-2)

请注意观察这一点:整数部分的值是大于1小于10的。后面的指数部分也有正指数和负指数。

2. 计算步骤

1. 二进制表示

将8.25用二进制数表示出来:

首先:整数部分为8,二进制表示为1000;

其次,小数部分为0.25,为二进制表示计算方法和整数部分的计算方法恰恰相反,整数部分转换二进制的时候是不断除以2得到的,这里就是不断乘以2:

0.25*2 = 0.5,整数部分为0,记下:0

0.5*2 = 1.0,整数部分为1,记下:1

则0.25的二进制表示即为0.01,即1*2^(-2);

在这一阶段,我们得出结果:8.25的二进制表示为:1000.01

2. 使用科学计数法来表示

在引言里介绍了十进制的科学计数法,同理我们推理出二进制的科学计数法:

8.25的二进制表示为:1000.01;

1000.01的二进制科学计数法表示为:1.00001*2^3

请根据引言中的注意事项,可以推理出:在二进制的科学计数法中:整数部分的取值只能是1,是个固定值。

因此在表示中可以直接把这一步写死,根本不需要去表示整数部分。

3. 转化为计算机存储数据

1.00001*2^3

在引言里,我们已经知道了浮点数在计算机中的表示方法,套用这套表示方法,我们可以知道:

符号位:

8.25是一个正数,因此这位为0.

指数位:

指数位为+3,所以这里的值为127+3=130,130的二进制表示为1000 0010,因此这里为1000 0010。

尾数位:

小数位为00001,这里尾数位占用23个字节,位数不够,所以补0,因此这里为:00001后面补18个0。

4.得出结论

浮点数8.25在计算机中的二进制表示为:0 1000 0010 0000 1000 0000 0000 0000 000

相关文章:

【C++】科普:C++中的浮点数怎么在计算机中表示?

这里我们以8.25这个数为例说明计算机时如何存取float类型的数据的: float a 8.25;引言 1. 所占位数 首先,明确一个概念,float类型的数据在常规计算机中通常占4个字节,也就是32位。其内存分布如图: 位字段说明所占位…...

Linux 多线程:多线程和多进程的对比

目录一、多进程优缺点二、多线程优缺点三、使用多执行流的场景在多任务处理中,我们既可以使用多进程,也可以使用多线程。但多进程和多线程并不是随意选择的,因为它们应对的场景不同,优缺点也不同。 一、多进程优缺点 多进程就是在…...

IO流你了解多少

IO流你了解多少 🏠个人主页:shark-Gao 🧑个人简介:大家好,我是shark-Gao,一个想要与大家共同进步的男人😉😉 🎉目前状况:23届毕业生,目前在某公…...

【C++】C++ 11 新特性之auto关键字

文章目录类型别名的思考auto简介auto关键字的特性类型别名的思考 随着程序越来越复杂&#xff0c;程序中用到的类型也越来越复杂&#xff0c;经常体现在&#xff1a; 类型难于拼写含义不明确导致容易出错 #include <string> #include <map> int main() {std::ma…...

nodejs的后端框架egg,thinkjs,nestjs,nuxtjs,nextjs对比

1. Egg.js&#xff1a;优点&#xff1a;Egg.js是一个基于Koa的Node.js企业级应用开发框架&#xff0c;它提供了完整的开发规范和一套稳定性和安全性较高的架构体系&#xff0c;能够帮助开发者快速构建高可用、高性能的应用程序。同时&#xff0c;Egg.js还提供了很多自定义插件和…...

SpringBoot @SpringBootTest 无法启动服务

这几天在看Hikari、Druid连接池。按照网上代码写Junit测试类。当时代码如下: package com.ceaning.crudp.utils;import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; impo…...

PyTorch深度学习实战 | 神经网络的优化难题

即使我们可以利用反向传播来进行优化&#xff0c;但是训练过程中仍然会出现一系列的问题&#xff0c;比如鞍点、病态条件、梯度消失和梯度爆炸&#xff0c;对此我们首先提出了小批量随机梯度下降&#xff0c;并且基于批量随机梯度下降的不稳定的特点&#xff0c;继续对其做出方…...

如何缩小pdf文件的大小便于上传?在线压缩pdf工具推荐

​平时在工作、学习时我们经常都需要用到pdf文件&#xff0c;那么当遇上需要将pdf压缩大小的时候&#xff0c;该使用哪种pdf压缩&#xff08;https://www.yasuotu.com/pdfyasuo&#xff09;方式呢&#xff1f;今天分享一个在线压缩pdf的方法&#xff0c;需要的小伙伴一起来了解…...

使用C++编写一个AVL的增删改查代码并附上代码解释

//qq460219753提供其他代码帮助 #include <iostream> using namespace std;struct Node {int data;Node *left;Node *right;int height; };// 获取结点高度 int height(Node *node) {if (node nullptr){return 0;}return node->height; }// 获取两个数中较大的一个 i…...

React/ReactNative 状态管理: redux-toolkit 如何使用

有同学反馈开发 ReactNative 应用时状态管理不是很明白&#xff0c;接下来几篇文章我们来对比下 React 及 ReactNative 状态管理常用的几种框架的使用和优缺点。 上一篇文章介绍了 redux 的使用&#xff0c;这篇文章我们来看下 redux 的升级版&#xff1a;redux-toolkit。 下…...

14基于双层优化的电动汽车优化调度研究

说明书 MATLAB代码&#xff1a;基于双层优化的电动汽车优化调度研究 关键词&#xff1a;双层优化 选址定容 输配协同 时空优化 参考文档&#xff1a;《考虑大规模电动汽车接入电网的双层优化调度策略_胡文平》中文版 《A bi-layer optimization based temporal and sp…...

古茗科技面试:为什么 ElasticSearch 更适合复杂条件搜索?

文章目录 ElasticSearch 简介倒排索引联合索引查询跳表合并策略Bitset 合并策略MySQL 最多使用一个条件涉及的索引来过滤,然后剩余的条件只能在遍历行过程中进行内存过滤。 上述这种处理复杂条件查询的方式因为只能通过一个索引进行过滤,所以需要进行大量的 I/O 操作来读取行…...

【数据结构】哈希表

目录 1、哈希表 1.1 哈希表的简介 1.2 降低哈希冲突率 1.3 解决哈希冲突 1.3.1 闭散列 1.3.2 开散列&#xff08;哈希桶&#xff09; 1、哈希表 1.1 哈希表的简介 假设我们目前有一组数据&#xff0c;我们要从这组数据中找到指定的 key 值&#xff0c;那么咱们目…...

物联网常用协议MQTT协议相关介绍

概述 MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级的消息传输协议&#xff0c;旨在在网络带宽有限的情况下&#xff0c;为物联网设备之间的通信提供可靠的、低延迟的消息传递服务。MQTT协议具有订阅/发布模式&#xff0c;支持多种传输协议&a…...

【C语言进阶】13. 假期测评②

day10 1. int类型字节数 求函数返回值&#xff0c;传入 -1 &#xff0c;则在64位机器上函数返回( ) int count 0; int x -1; while (x) {count;x x >> 1; } printf("%d", count);A: 1 B: 2 C: 32 D: 死循环&#xff0c;没结果 【答案解析】C xx&(x-1)这…...

【国产FPGA】国产FPGA搭建图像处理平台

最近收到了高云寄过来的FPGA板卡&#xff0c;下图&#xff1a;来源&#xff1a;https://wiki.sipeed.com/hardware/zh/tang/tang-primer-20k/primer-20k.htmlFPGA主要参数:FPGA型号参数GW2A-LV18PG256C8/I7逻辑单元(LUT4) 20736寄存器(FF) 15552分布式静态随机存储器S-SRAM(bit…...

你的应用太慢了,给我司带来了巨额损失,该怎么办

记得很久之前看过谷歌官方有这么样的声明&#xff1a;如果一个页面的加载时间从 1 秒增加到3 秒&#xff0c;那么用户跳出的概率将增加 32%。 但是早在 2012 年&#xff0c;亚马逊就计算出了&#xff0c;页面加载速度一旦下降一秒钟&#xff0c;每年就会损失 16 亿美元的销售额…...

第十四届蓝桥杯三月真题刷题训练——第 22 天

目录 第 1 题&#xff1a;受伤的皇后_dfs 题目描述 输入描述 输出描述 输入输出样例 运行限制 代码&#xff1a; 思路&#xff1a; 第 2 题&#xff1a;完全平方数 问题描述 输入格式 输出格式 样例输入 1 样例输出 1 样例输入 2 样例输出 2 评测用例规模与约…...

机器学习:朴素贝叶斯模型算法原理(含实战案例)

机器学习&#xff1a;朴素贝叶斯模型算法原理 作者&#xff1a;i阿极 作者简介&#xff1a;Python领域新星作者、多项比赛获奖者&#xff1a;博主个人首页 &#x1f60a;&#x1f60a;&#x1f60a;如果觉得文章不错或能帮助到你学习&#xff0c;可以点赞&#x1f44d;收藏&…...

Linux 多线程:理解线程

目录一、理解线程的思想二、Linux中的线程与进程1.Linux中的进程2.Linux中的线程三、线程的工作方式四、线程的独有数据与共享数据1.独有数据2.共享数据一、理解线程的思想 线程就是把一个进程分成多个执行部分&#xff0c;一个部分就是一个线程&#xff0c;比如可以让一个线程…...

Web前端学习:章四 -- JavaScript初级(四)-- BOM

138&#xff1a;Object数据格式简介 1、object对象 JS中独有 的一种数据格式 名字可以随便取&#xff0c;值一般就那几种数据格式 139&#xff1a;BOM - JS跳转页面 BOM Browser Object Model&#xff1a;浏览器对象模型 使用JavaScript控制浏览器交互 控制浏览器里面的内…...

Lesson9.网络基础1

网络协议初识 所谓的协议就是人们为了通信的一种约定 操作系统要进行协议管理,必然会先描述,再组织协议本质就是软件,软件是可以"分层"协议在设计的时候,就是被层状的划分的, 为什么要划分成为层状结构 场景复杂功能解耦(便于人们进行各种维护)OSI七层模型 局域网中…...

这几个SQL语法的坑,你踩过吗

本文已经收录到Github仓库&#xff0c;该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点&#xff0c;欢迎star~ Github地址&#xff1a;https://github.com/…...

算法基础——复杂度

前言 算法是解决问题的一系列操作的集合。著名的计算机科学家Niklaus Wirth曾提出&#xff1a;算法数据结构程序&#xff0c;由此可见算法在编程中的重要地位。本篇主要讨论算法性能好坏的标准之一——复杂度。 1 复杂度概述 1.1 什么是复杂度 本文所讨论的复杂度是指通过事先…...

基类与派生类对象的关系 派生类的构造函数

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C &#x1f525;座右铭&#xff1a;“不要等到什么都没有了&#xff0c;才下…...

【算法】生成分布式 ID 的雪花算法

ID 是数据的唯一、不变且不重复的标识&#xff0c;在查询数据库的数据时必须通过 ID 查询&#xff0c;在分布式环境下生成全局唯一的 ID 是一个重要问题。 雪花算法&#xff08;snowflake&#xff09;是一种生成分布式环境下全局唯一 ID 的算法&#xff0c;该算法由 Twitter 发…...

Linux系统编程 - 基础IO(IO操作)

目录 预备知识 复习C文件IO相关操作 printf相关函数 fprintf snprintf 读取文件 系统文件IO操作 open函数 umask()函数 open函数返回值 预备知识 1.你真的理解文件原理和操作了吗&#xff1f;不是语言问题&#xff0c;是系统问题2.是不是只有C/C有文件操作呢&#x…...

基于 Avue 的 CRUD 表格组件封装

在 components 文件夹中,创建一个新的 .vue 文件,例如:AvueCrudTable.vue。 透传父组件传递的属性和事件 : 1、利用v-bind=“ a t t r s " 支持所有 a v u e 的使用方法并在其基础上进行封装 2 、使用 v − o n = " attrs"支持所有 avue 的使用方法并在其基…...

树莓派学习笔记(十三)基于框架编写驱动代码

文章目录一、代码分析&#xff1a;二、源码一、代码分析&#xff1a; 在内核中由于代码文件多&#xff0c;避免函数名重复&#xff0c;使用static将函数的作用域限制在该文件内 内核的打印函数printk和printf类似 file_operations结构体使用符号“ . ”指定参数&#xff0c;省…...

vue事件修饰符之.prevent

.prevent 事件修饰符只是阻止默认事件&#xff0c;不会自动触发任何事件处理函数。因此&#xff0c;在使用 .prevent 事件修饰符时&#xff0c;需要自己编写相应的事件处理函数来处理事件。 例如&#xff0c;在上面的例子中&#xff0c;我们通过在表单上绑定 submit.prevent&q…...

近两年成功的网络营销案例及分析/厦门站长优化工具

牛客网 编程初学者入门训练 BC69 空心正方形图案 思路&#xff1a; 大体思路&#xff1a;我们需要引用一个while循环&#xff0c;两个for循环&#xff0c;以及用if,else语句进行判断输出。具体思路&#xff1a;由于题目中出现了关键字眼——多组输入&#xff0c;所以一般都是…...

长春疫情最新消息今天封城了/外贸谷歌优化

之前客户给了一个域名检测api接口&#xff0c;专门对接程序的&#xff0c;用于程序自动检测域名轮转&#xff0c;拦截域名自动下线用的最近买域名比较频繁&#xff0c;总是入坑&#xff0c;一不小心买回来的新域名就是已经被微信拦截的&#xff0c;估计是域名上一任主人没有善待…...

离石做网站/百度搜索关键词排名靠前

计算机二级包括很多项内容&#xff0c;像&#xff1a;Office&#xff0c;C语言&#xff0c;Access&#xff0c;VB语言等。我只考过Office&#xff0c;其他的就不太了解。我觉得Office难度还可以&#xff0c;没有必要报班&#xff0c;当然&#xff0c;如果你自制力差&#xff0c…...

如何用自己电脑做网站测试/it培训机构哪个好一点

期刊投稿指南期刊/投稿/论文/职场关注强 烈 建 议 大 家 星 标 我 们茫 茫 文 海 ☆ 不 离 不 弃试完这些英文论文写作辅助神器&#xff0c;你会发现新大陆der~来源&#xff1a;学术大爆炸鸣谢作者有时候做研究并不痛苦痛苦的是——写&#xff01;论&#xff01;文&#xff01;…...

网站功能测试内容/如何做好关键词的优化

修改hosts 先到https://www.ipaddress.com/上查询github.com和github.global.ssl.fastly.net最快的ip&#xff0c;然后在etc/hosts文件下新增&#xff1a; 140.82.113.3 github.com 151.101.185.194 github.global.ssl.fastly.net注意上面的151.101.185.194是我查询github.gl…...

wordpress商家插件/网站seo关键词优化

多个PDF文件合并成一个PDF文件&#xff0c;需要用到PDF合并功能&#xff0c;可以用奥凯丰 PDF转换大师中的合并功能。 【PDF转换大师】转为word_excel_ppt_txt_jpg等格式-奥凯丰okfonePDF转换大师是奥凯丰推出的一款可以把pdf文件格式转换成word&#xff0c;excel&#xff0c;…...