0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

计算机基础知识之处理小数2

jf_78858299 来源:前端柒八九 作者:前端柒八九 2023-03-31 16:10 次阅读

正则表达式和EXCESS系统

尾数部分

「尾数部分」 使用 「正则表达式」 ,可以将表现形式多样的浮点数统一为一种表现形式。

例如,十进制数0.75就有很多表现形式。

图片

虽然他们表示的都是 「同一个数值」 ,但因为表现方法太多,计算机在处理时会比较麻烦。

因此,需要制定统一的规则:

❝十进制数的浮点数应该遵循:「小数点前面是0,小数点后面第一位不能是0」

也就是说,只能用 「尾数」 部分是0.75「指数」 部分是0的方法来表示。即0.75 × 100

❝在二进制数中,我们规定:「将小数点前面的值固定为1的正则表达式」

具体来讲,就是将二进制数表示的小数 「左移」「右移」逻辑移位)数次后, 「整数部分」 的第一位变成1, 「第二位之后都变成0」

❝而且, 「第一位的1在实际的数据中不保存」 ,因此省略该部分后就可以节省一个数据位,从而可以表示更多的数据范围。

我们,看一下1011.0011如何用单精度浮点数的正则表达式来表示 「尾数部分」

图片

指数部分

「指数部分」 中使用的是EXCESS系统,使用这种方式主要是 「为了表示负数时不使用符号位」

在某些情况下,在指数部分,需要通过 「负〇〇次幂」 的形式来表示负数。

「EXCESS系统」 表现是指,通过将指数部分表示范围的 「中间值」 设置0,使得负数不需要用符号来表示。

也就是说,当 「指数部分」 是8位单精度浮点数时,最大值11111111=2551/2,即01111111=127(小数部分舍弃)表示的是0

图片

我们再来一个例子说明。假设有这样一个游戏,用1~13(A~K)的扑克牌来表示负数。此时,我们把 「中间」7当做0。那么10表示+33表示-4

图片

单精度浮点数指数部分的EXCESS系统表现

实际运用

我们来一起看看如何用单精度浮点数来表示十进制数0.75

图片

  • 「符号位」 :因为0.75是正数,所以符号位是0

0.75转换成二进制正则表示为1.1×2-1,按照前面介绍的就很容易知道下面的各个数值。

  • 「指数部分」 :为-1,但是用EXCESS表示的话,就变成了01111110。换算为十进制为126。而EXCESS系统中,126代表-1
  • 「尾数部分」 :根据正则表达式的规则,小数点前面的第1位是1,因此 「尾数部分」 1000···实际上表示的是1.1000···

二进制数和十六进制数关系

在以 「位」 为单位表示数据时,使用二进制数很方便,但如果位数太多,看起来很麻烦。因此,在实际程序中,经常用 「十六进制数」 来替代 「二进制数」

在一些高级语言中,只需要在数值的开头加上0x就可以表示十六进制数。

❝二进制数的4位,正好相当于十六进制数的1位。

图片

由此可见,通过使用十六进制数,二进制数的位数能够 「缩短」 至原来的1/4

用十六进制数表示二进制 「小数」 时,小数点后的二进制数的4位也同样相当于十六进制数的1位。「不够4位时用0填补二进制的低位」

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二进制
    +关注

    关注

    2

    文章

    708

    浏览量

    41254
  • 计算机
    +关注

    关注

    19

    文章

    6652

    浏览量

    84565
  • 代码
    +关注

    关注

    30

    文章

    4556

    浏览量

    66807
收藏 人收藏

    评论

    相关推荐

    计算机基础知识

    世界上第一台数字式电子计算机是由美国宾夕法尼亚大学的物理学家约翰 莫克利(John Mauchly)和工程师普雷斯伯 埃克特(Presper Eckert)领导研制的取名为ENIAC
    发表于 03-08 15:50

    计算机组成原理基础知识

    计算机组成原理基础知识,前言参考:《王道计算机组成原理》学习笔记总目录+思维导图2019 王道考研 计算机组成原理第一章 计算机系统概述1.
    发表于 07-16 07:48

    计算机网络基础知识了解

    计算机网络技术复习一、 计算机网络基础知识了解:计算机网络(Internet)的发展 面向终端的计算机网络(单个
    发表于 07-26 06:27

    介绍一下计算机底层知识

    的更远,而计算机基础知识又是重中之重。下面,跟随我的脚步,为你介绍一下计算机底层知识。CPU还不了解 CPU 吗?现在就带你了解一下 CPU 是什么CPU 的全称是Central Pr
    发表于 07-26 06:21

    计算机是如何进行分类的

    计算机一级考试基础知识练习题(三)一、单选题1、第一台电子数字计算机的运算速度为每秒______。A:500000次B:50000次C:5000次D:500次答案: C2
    发表于 09-13 06:11

    计算机基础知识点汇总,不看肯定后悔

    计算机基础知识点汇总,不看肯定后悔
    发表于 11-15 06:03

    计算机基础知识

    前言《MSP430单片机应用基础与实践》(华中科技大学出版社)------第0章------计算机基础知识(本文章作备忘录使用)1.进制转换2.数值数据的表示3.计算机的码制
    发表于 11-29 06:03

    计算机简介

    1计算机基础知识1.计算机简介1.1计算机定义:按照一定逻辑处理数据的带存储的机器。微型,小型,大型等。2.2
    发表于 12-23 06:45

    计算机基础知识选择题

    计算机基础知识选择题 1.微型计算机是由( )、存储器、输入设备和输出设备等部件组成的。  A. 硬盘 B. 软盘 C. 键盘 D. 运算控制单元 2.一台微机型号
    发表于 03-03 08:32 89次下载

    计算机基础知识练习题

    计算机基础知识练习题(一)单选题:1.计算机的描述中,( )是错误的。A. 计算机是一种可供计算的机器  、B.
    发表于 03-03 08:33 70次下载

    计算机基础知识试题

    计算机基础知识试题 1、CPU的主要功能是进行(     )。
    发表于 10-25 10:59 7843次阅读

    计算机总线技术基础知识

    计算机总线技术基础知识 任何一个微处理器都要与一定数量的部件和外围设备连接,但如果将各部件和每一种外围设 备都分别用一
    发表于 05-22 08:52 779次阅读

    计算机基础知识介绍

    计算机基础知识计算机基础知识计算机基础知识
    发表于 12-03 16:13 0次下载

    计算机控制技术的基础知识点说明

    本文档的主要内容详细介绍的是计算机控制技术的基础知识点说明包括了:1 计算机控制系统的概念,2 计算机控制系统的组成,3 计算机控制系统的分
    发表于 04-27 08:00 5次下载
    <b class='flag-5'>计算机</b>控制技术的<b class='flag-5'>基础知识</b>点说明

    计算机基础知识之处理小数1

    有句话说, 「雪崩的时候,没有一片雪花是无辜的」 。在这段代码中,程序没错,计算机也没有发生故障,当然和所使用的语言也没有关系(选用其他的高级语言可能运算结果不同)。如果硬要找一个背锅的,那就是 「计算机处理
    的头像 发表于 03-31 16:10 979次阅读
    <b class='flag-5'>计算机</b><b class='flag-5'>基础知识</b><b class='flag-5'>之处理</b><b class='flag-5'>小数</b>1