• 软考笔记(3)——浮点数


    1.讲解

    在这里插入图片描述
    在这里插入图片描述

    1.1 浮点数

    浮点数:类似科学计数法那种就是浮点数。做运算时,小数点位置可以变化(反正都表示这个数)。

    1.2 如何对阶

    何为对阶?
    0.1112×10⁴,那它的阶码就是4
    0.9821×10⁶,它的阶码是6
    0.1112×10⁴+0.9821×10⁶如何计算?
    首先把阶码对好。那么是10⁴去对10⁶还是反过来?
    首先浮点表示法中尾数是纯小数,是小于1的
    10⁶去对10⁴时,
    0.9821×10⁶=98.21×10⁴,98被舍弃,就变成了0.21×10⁴
    损失了多少?原先是982100,现在是2100,损失980000,悲不悲惨?壮不壮烈?
    但要是小阶对大阶,0.1112×10⁴=0.0011×10⁶,损失多少?原来1112,现在1100,也就12,相比大阶对小阶损失980000,谁好谁劣一目了然。
    因此对阶都是小阶对大阶,损失低位数。

    1.3规范化浮点数范围

    浮点数的范围由阶码决定,精度由尾数决定。
    在这里插入图片描述
    解释一下这个最大正数和最小负数
    n位移码可表示的最大值2ⁿ⁻¹-1
    n位补码浮点数的最小值是-1,最大值是1-2⁻﹙ⁿ⁻¹﹚

    2.写题

    1

    在这里插入图片描述
    首先,写题我是反对死记公式的(因为我自己记不住)。所以这题我一步步推理。
    求尾数和阶码。

    阶码容易求,直接求它的最大值就行。负数乘以最大阶码获得最小的负数,正数乘以最大阶码获得最大的正数。
    阶符一位,求阶码最大值,阶符当然就是正了。
    阶码值6位,那么阶码值最大值为1 1 1 1 1 1也就是2⁶-1=63
    所以阶码为2⁶³

    求尾数,数符1位,那么最小值负数为-1,补码的浮点数的最小值都是-1。
    尾数最大值,尾数数符1位为正,尾数8位,所以尾数最大值为1-2⁻⁸

    因此该浮点数所能表示的数值范围是B

    2

    在这里插入图片描述
    (3)
    B记一下
    C错了,因为规格化是指将尾数的绝对值限定在[+0.5,1)。这里有的人说左闭右开有的人说左闭右闭。个人赞同前者。

    (4)
    选D

    3

    在这里插入图片描述
    阶码变大,数的范围变大。尾数位数变少,精度下降。选A

    4

    在这里插入图片描述
    小数点是隐含存在的,不需要占用存储位。选B

    5

    在这里插入图片描述
    n位,其实就是每一位都有2种选择,0或1。所以补码和移码n位可表示2ⁿ个不同的有符号定点小数。
    而原码和反码就只能表示2ⁿ-1个数,因为它们有两个编码都表示0。

    这里提一嘴,小数里的个数千万别用最大值减最小值加一。给你举个例子。-1到0.5有多少个数字。
    0.5-(-1)+1=2.5,那不是扯吗,本来小数就表示不了个数。2.5个人吗?再者小数的精度没完没了,可以说-1到0.5有无数个数字,没有标准,从何算起。

    因此最大值减最小值加一这个只适用于整数。

    可别憨憨地就用这个表的定点小数范围去算了。
    在这里插入图片描述

    6

    在这里插入图片描述
    闭眼选B

    7

    在这里插入图片描述
    闭眼选D,原理我上面讲了。

    8

    在这里插入图片描述
    阶码以补码表示,补码的补码等于原码。10001的补码等于11111,也就是-15
    所以阶码为2⁻¹⁵
    尾数,符号位表示为正,数值位有是尾数数值位的最后一位为1,所以是2⁻¹⁰
    所以选B

  • 相关阅读:
    哥德巴赫猜想
    JavaSE——final关键字与常量
    windows查看登陆的IP
    如何使用java实现第三方支付
    计算机组成原理 | 输入输出系统
    Command 实用小工具
    2022年全球市场光储充一体化总体规模、主要企业、主要地区、产品和应用细分研究报告
    如何判断域名的潜力和价值?
    C. Palindromifier
    无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
  • 原文地址:https://blog.csdn.net/heipao17/article/details/127076360