定点数的表示(计算机组成原理13)

    科技2024-01-17  94

    定点数的表示

    视频链接地址: https://www.bilibili.com/video/BV1BE411D7ii?from=search&seid=6420326887479343502

    计算机组成原理 系列文章目录

    定点数的表示前言1 无符号数2 有符号数2.1 原码2.2 反码2.3 补码2.4 移码 3 小结

    前言

    在本篇中,你将掌握

    原码、反码、补码、移码的定义和范围原码、反码、补码、移码的转换

    定点数:小数点的位置固定 ——常规技术 浮点数:小数点的位置不固定 ——科学计数法

    1 无符号数

    无符号数:整个机器字长的全部二进制位均为数值位,没有符号位,相当于数的绝对值。且通常只考虑无符号整数

    2 有符号数

    2.1 原码

    原码的表示,分成定点整数和定点小数:

    定点整数:符号位 + 数值部分(尾数),如 +5通常写为0,101(假设机器字长是4位)定点小数:符号位 + 数值部分(尾数),如 -0.5通常写为1,100(假设机器字长是4位)

    其表示范围如上图,对于机器字长为n+1位,原码整数可以表示的范围为: 0 至 2 0 + 2 1 + 2 2 + . . . + 2 n − 1 = 2 n − 1 ( 不 考 虑 符 号 位 ) 0至2^0+2^1+2^2+...+2^{n-1}=2^n-1 (不考虑符号位) 020+21+22+...+2n1=2n1 原码小数可以表示的范围为: 0 至 2 − 1 + 2 − 2 + . . . + 2 − ( n ) = 1 − 2 − n ( 不 考 虑 符 号 位 ) 0至2^{-1}+2^{-2}+...+2^{-(n)}=1-2^{-n} (不考虑符号位) 021+22+...+2(n)=12n 且真值0有 +0和-0的两种形式

    2.2 反码

    反码:   若符号位为0,则反码与原码相同   若符号位位为1,则数值位全部取反

    反码只是求补码的一个过程,其表示和范围如上图,不再阐述。

    2.3 补码

    补码:   正数的补码 = 原码   负数的补码 = 反码末位 + 1(要考虑进位)

    注意:补码的真值0只有一种表示形式了,且规定  定点整数1,0000000表示 − 2 7 -2^7 27,也因此定点整数的补码的范围为 − 2 n 至 2 n − 1 -2^n至2^n-1 2n2n1  定点小数1.0000000表示 − 1 -1 1,定点小数的补码的范围为 − 1 至 1 − 2 − n -1至1-2^{-n} 112n 而将补码转为原码的操作,对于正数 原码 = 补码,对于负数:尾数取反,末位+1

    2.4 移码

    移码:补码的基础上将符号位取反。注意:移码只能用于表示整数

    练习:

    3 小结

    本篇重点: (1)原码、反码、补码、移码的定义和范围 (2)原码、反码、补码、移码的转换 本篇较为重点,需要自行计算掌握。

    Processed: 0.014, SQL: 8