'); } '); } 数据信息的表示 | Journey to paradise

数据信息的表示


数据信息的表示        数据表示是指在计算机中能被硬件直接识别和处理的数据类型,而能被硬件直接识别和处理是指在计算机系统的指令集中包含对这些类型的数据进行操作的指令,在计算机系统中我们要用硬件来实现这些运算,在这个运算过程中将介绍数据的表示以及如何用硬件对数据进行运算。

无符号数和有符号数


无符号数

无符号数没有符号部分,没有负数,寄存器的位数反映无符号数数值的表示范围,eg寄存器位数为8,则无符号数的表示范围为八个0到八个1即0~2^8-1

有符号数

有符号数包括符号和数值两部分,保存在存储器或寄存器中,最高位为符号位,0表示正数,1表示负,在计算机中没有专门的硬件用于表示小数点,计算机中,定点小数的小数点默认在符号位后面,定点整数的小数点默认在最低位后面

机器数和真值

机器数和真值

将符号数值化的表示方法为原码表示

原码表示方法


原码即带符号的绝对值表示,正数的原码是它本身,0可以是正的也可以是负的,故0的原码有两种形式。为了方便理解,下面在原码的表示中,用逗号隔开符号位和数值,小数则标出小数点,但是在实际硬件中是没有逗号和小数点的存储的。原码是保存在计算机中的数,求某一个真值的原码表示形式必须知道机器数的数值长度是多少且该长度包含了一个符号位


其实简单来说

定点小数x的表现形式为0.***),定点整数的表现形式为***(位数不限),所有数都可以用定点小数和定点整数相组合得到。

原码的运算较麻烦,符号位不参加运算(符号位会受数值进位的的影响,故符号位不参与运算),加法运算器要“同号求和,异号求差”,减法运算器要“同号求差,异号求和”,求差的时候还要比较两数的大小,用大数减去小数,再确定符号位。很麻烦,那么我们能不能将减法可以变成加法,只做加法呢?我们需要找到一个与负数等价的正数将减法运算转变成加法运算,这就引出了补码。

补码表示法

补的概念



**一个负数加上“模”即得该负数的补数,一个正数和一个负数互为补数时它们的绝对值之和即为模数。正数的补数为它本身

补码的定义




n位2进制整数数的模为2^(n+1),2进制定点小数的模为2

补码的便捷求法

反码法

将10000变成11111+1来运算就不会产生借位,方便运算。

扫描法

当x小于0时,符号位为1,对其真值数据位从右到左顺序扫描,右起一个1及其右边的0保持不变,其余各位求反。
正零和负零的补码相同,0的补码只有一种形式。

反码的表示法

定义

将原码符号位不变,数值位各位取反




Eg

由上图可看出,补码的大小顺序和对应真值的大小顺序并不一定相同,如对于二进制代码01111111和10000000,无符号数对应的真值分别为127、128显然127小于128 大小顺序正确可以直接比较,而补码对应的真值为127、-128,127并不小于-128,大小顺序并不和对应真值大小顺序相同,不能根据补码直接比较真值的大小。因此需要对补码进行修正,使其大小顺序和对应真值的大小顺序相同,由此引出移码。

移码表示法

移码的定义



移码没有小数形式,都是整数,可以直接比较大小,因此移码通常用来表示浮点数的阶码。最小真值-2^n的移码为全0给出不同真值,分别求对应的移码和补码,可得出 移码和补码的符号位相反,数值位相同
0的移码只有一种形式

数的定点表示和浮点表示

数的定点表示

计算机中没有硬件来表示小数点,小数点的位置由设计计算机体系结构人员决定,一般小数 小数点的位置默认为符号位后面数值位前面,称为定点小数,该机器称为小数定点机;整数 小数点的位置默认为数值部分后面,称为定点整数,该机器称为整数定点机

数的浮点表示

   当计算机需要表示一个位数十分大的数,而该数的高位大多均是零,那么就需要很大的存储单元,而该数可能只会用到一次,就会造成存储容量的浪费。因此我们引入浮点数表示,提高存储容量的利用率。

在计算机中只需保存尾数、阶数、基数即可保存一个浮点数。

浮点数的表示形式



浮点数的表示范围

上溢:阶码大于最大阶码 ————————————————— 发生上溢,计算机系统按计算出错处理 下溢:阶码小于最小阶码 ————————————————— 发生下溢,计算机系统按机器零处理

浮点数的规格化表示


所谓规格化处理就是使得尾数真值最高有效位为1,也就是尾数的绝对值应大于或等于(0.1)(2进制),(0.5)(十进制)



IEEE754标准


IEE754标准中阶码用移码表示,而移码的偏移量由阶码的位数及浮点数的精度决定,eg:8位阶码单精度浮点数对应移码的偏移量为127。具体标准可自行查询,这里不做过多说明。

文章作者: 涂爽
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 涂爽 !
评论
 上一篇
配置文件反射加载类和执行函数 配置文件反射加载类和执行函数
配置文件反射加载类和执行函数 利用反射技术和读配置文件的方式实现动态加载类和执行函数 不改变主程序的代码,通过修改配置文件来控制程序的执行,使程序的执行更加灵活。其中prope
2021-05-27
下一篇 
计算机系统概述 计算机系统概述
计算机系统概述 新的学期开始啦,今天简要介绍一下计算机系统的层次结构及其性能指标 计算机系统 计算机系统的层次结构 冯.诺依曼体
  目录
Copyright © 2020 涂爽
  站点总字数: 145.4k 字 本站总访问量 人次, 访客数 人.
载入运行时间... 鄂ICP备20005056