例如:178.125

(1)先把浮点数分别把整数部分和小数部分转换成2进制

整数部分用除2取余的方法,求得:10110010

小数部分用乘2取整的方法,求得:001

合起来即是:10110010.001

(2)转换成二进制的浮点数,即把小数点移动到整数位只有1,即为:1.0110010001 * 2^111,111是二进制,由于左移了7位,所以是111

把浮点数转换二进制后,这里基本已经可以得出对应3部分的值了

(3)数符:由于浮点数是正数,故为0.(负数为1)

阶码 : 阶码的计算公式:阶数 + 偏移量, 阶码是需要作移码运算,在转换出来的二进制数里,阶数是111(十进制为7),对于单精度的浮点数,偏移值为01111111(127)[偏移量的计算是:2^(e-1)-1, e为阶码的位数,即为8,因此偏移值是127],即:111+01111111 = 10000110

尾数:小数点后面的数,即0110010001

小数点前面的1去哪里了?由于尾数部分是规格化表示的,最高位总是“1”,所以这是直接隐藏掉,同时也节省了1个位出来存储小数,提高精度

现代计算机中,一般都以IEEE 754标准存储浮点数

对于不同长度的浮点数,阶码与小数位分配的数量不一样

对于32位的单精度浮点数,数符分配是1位,阶码分配了8位,尾数分配了是23位。

对于64位的单精度浮点数,数符分配是1位,阶码分配了11位,尾数分配了是52位。

WHE STE.png

一、十进制小数转二进制小数

0.125

用乘2取整 顺序排列 的方法,求得:0.001

0.125 *2 = 0.25======取出整数部分0

0.25 * 2 = 0.5======取出整数部分0

0.5 * 2 = 1======取出整数部分1

二、二进制小数转十进制小数

0.001 = 1 * 2^(-3) = 0.125

0.1101 = 1 * 2^(-1) + 1 * 2^(-2) + 1 * 2^(-4) = 0.5 + 0.25 + 0.0625 = 0.8125

十进制小数转二进制,在计算机中如何存储?

比如178.125

(1)先把浮点数分别把整数部分和小数部分转换成2进制

178 / 2 = 89 ======余数0

89 / 2 = 44 ======余数1

44 / 2 = 22 ======余数0

22 / 2 = 11 ======余数0

11 / 2 = 5 ======余数1

5 / 2 = 2 ======余数1

2 / 2 = 1 ======余数0

1 / 2 = 0 ======余数1

整数部分用除2取余 逆序排列的方法,求得:10110010

小数部分用乘2取整的方法,求得:001

合起来即是:10110010.001

(2)转换成二进制的浮点数,即把小数点移动到整数位只有1,即为:1.0110010001 * 2^111,111是二进制,由于左移了7位,所以是111

把浮点数转换二进制后,这里基本已经可以得出对应3部分的值了

(3)数符:由于浮点数是正数,故为0.(负数为1)

阶码 : 阶码的计算公式:阶数 + 偏移量, 阶码是需要作移码运算,在转换出来的二进制数里,阶数是111(十进制为7),对于单精度的浮点数,偏移值为01111111(127)[偏移量的计算是:2^(e-1)-1, e为阶码的位数,即为8,因此偏移值是127],即:111+01111111 = 10000110

尾数:小数点后面的数,即0110010001

小数点前面的1去哪里了?由于尾数部分是规格化表示的,最高位总是“1”,所以这是直接隐藏掉,同时也节省了1个位出来存储小数,提高精度

所以在计算机中存储为 0 10000110 0110010001

如何根据结果反推?

10000110 - 01111111 = 111 (之前左移的现在右移7位)

尾数加1为1.0110010001 右移7位 10110010.001 = 10110010 + 0.001 = 178 + 0.125 = 178.25

补充:

如果是0.15625 转化二进制为0.00101,要右移3位为1.01,所以阶数-3

偏移量 = -3 + 127 = 124,二进制为0111 1100,

1.01尾数为01

所以二进制存储 0 01111100 01 后边还有21位0

#HIS44.png

小数点如何用计算机二进制表示,计算机二进制小数点表示法相关推荐

  1. C++语言篇 第一章 二进制及计算机基础

    前言 进入新世纪以来,新科技.新技术日新月异,层出不穷:人工智能.机器人.无人驾驶.虚拟现实,量子信息.生物技术.大数据.3D打印.石墨烯.纳米材料.数字货币.区块链.物联网.互联网+.工业4.0-- ...

  2. 二进制在线计算机,计算机进制转换计算

    <计算机进制转换计算>由会员分享,可在线阅读,更多相关<计算机进制转换计算(8页珍藏版)>请在人人文库网上搜索. 1.各种进制转换一.进制的概念在计算机语言中常用的进制有二进制 ...

  3. 计算机中十进制转二进制逻辑原理,.计算机中为什么要采用二进制?及二进制的基本运算规则,还有.二进制数据与十进制、八进制、十六进制数据之间的转换方法?...

    满意答案 sqq212527 2013.04.11 采纳率:46%    等级:12 已帮助:10556人 编辑本段简介 20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,其运算模式正是 ...

  4. 计算机 二进制 中国,二进制与计算机

    二进制与计算机事物的多少或者顺序,我们可以用一种称为"数"的符号来表示.事物的数量是无穷的,我们却不可能创造无数个符号.为了解决这个难题,人们创造了进位制(又叫做位值制),这样就可 ...

  5. 计算机与十进制 教案,二进制与十进制间的转换教案

    十进制与二进制间的转换 [教学目的与要求] 1.熟悉数制的概念:2.掌握位权表示法: 3.熟练掌握各数制之间的转换方法. [课时安排] 1课时. [教学重点与难点] 1.难点:位权表示法 十进制转化为 ...

  6. 计算机基础- -计算机为什么要使用二进制

    计算机基础- -计算机为什么要使用二进制 文章目录 计算机基础- -计算机为什么要使用二进制 一.为什么用二进制表示 二.什么是二进制数 三.移位运算和乘除的关系 四.便于计算机处理的补数 五.算数右 ...

  7. 科学计算机二进制算法,计算机是怎么理解二进制的?

    计算机是怎么理解二进制的? 计算机的发明最初纯粹是为了计算数字, 让一个机器能够通过输入不同的数字, 进行加减乘除等. 首先要约定好机器能处理的数是什么样的, 即输入是什么样的, 才能去制造计算机. ...

  8. bash 将二进制转换为十进制_6、计算机进制之二进制、十进制、十六进制之间的转换...

    1.计算机的数制介绍 数制:计数的方法,指用一组固定的符号和统一的规则来表示数值的方法 数位:指数字符号在一个数中所处的位置 基数:指在某种进位计数制中,数位上所能使用的数字符号的个数 位权:指在某种 ...

  9. 计算机二进制怎么转化成十六进制数是,6、计算机进制之二进制、十进制、十六进制之间的转换...

    1.计算机的数制介绍 数制:计数的方法,指用一组固定的符号和统一的规则来表示数值的方法 数位:指数字符号在一个数中所处的位置 基数:指在某种进位计数制中,数位上所能使用的数字符号的个数 位权:指在某种 ...

  10. 计算机由简单的二进制阴阳,二进制之美,大道至简,二生万物!

    我国是一个文明古国,虽然计算机发展技术是由西方国家发展起来的,但并不影响我国上下五千年的文明史,说二进制是有西方国家发明的,我觉得这倒是不完全正确,我国最早中医中都有阴与阳的概念,同样计算机领域中的二 ...

最新文章

  1. 海思Hi3559A平台移植 opencv4.0.0
  2. java arraylist的初始化和数组的相互转化
  3. mysql导入数据库某张表_MSSQLServer2005 导出导入数据库中某张表的数据
  4. php二维数组 xml,xml 怎样通过php解析到二维数组里面
  5. 生产者消费者之阻塞队列版本
  6. C/C++编译器教程之如何安装vs,看了的人应该都会装,只要不手残
  7. WEBSOCKET协议判断 握手及反馈
  8. DotNetCore中异步编程的实用演练
  9. 对Kernel panic-not syncing:No init found...init=option to kernel错误总结!
  10. 洛谷P4135 作诗 --分块基础
  11. Android studio 如何快速收起代码?
  12. 常用数据手册(Datasheet)下载网站
  13. V20变频器手自动切换(就地远程切换)的具体方法示例
  14. jquery短信验证码倒计时
  15. 刘邦六大用人之道,很值得管理人员学习
  16. python-pptx替换ppt模板的文本
  17. strapi终于装好了,网速太慢了,处理了一下代理,新建了一个.zshrc文件,加入了pon和poff两个函数
  18. 机房动环监控系统方案组成及应用
  19. 互斥锁(mutex)的使用
  20. 现代控制理论6——能控、能观及其对偶原理、线性变换、结构分解

热门文章

  1. 【C语言初学】编写程序求e的值
  2. 基于Rasa框架搭建中文机器人对话系统
  3. 《啊哈算法》第四章 万能的搜索
  4. 怎么查看qq登陆记录
  5. 测试面试挫败_清晰度,初级工程师,要求和挫败感
  6. VMware虚拟机扩容——Ubuntu的/dev/sda1分区挂在根目录(“/“)下用LVM(逻辑卷管理)模式扩容无效
  7. 决策树(Decision Tree)算法 python简单实现
  8. MATLAB读二进制文件
  9. HCI - ImageJ软件的简介
  10. android离线语音开发,Android应用开发之Android 云之声离线语音合成