美文网首页
第2章 信息的表示和处理

第2章 信息的表示和处理

作者: Xavier_NZX | 来源:发表于2019-01-05 11:43 被阅读0次

2.1 信息存储

2.1.1 十六进制表示法

一位十六进制数可以表示4位二进制数。

2.1.2 字数据大小

64位机器地址(指针)都为64位。
1个字节8位;1个字2个字节。

2.1.3 寻址和字节顺序

小端法:最低有效字节在前面,即与我们书写数字的方式相反。Intel x86都用小端模式。
大端法:最高有效字节在后面,与我们书写数字的方式相同。

2.1.4 位级运算和逻辑运算的差别

位级运算返回值与参数相关,逻辑运算只返回0(false)和1(true),所有非零数在逻辑运算中都认为是true。

2.1.5 移位运算

算数左移等价于逻辑左移。
算数右移补符号位,逻辑右移补0。
几乎所有编译器都对有符号数使用算数右移。

2.2 整数表示

2.2.1 整型数据类型

有无符号(有符号无表示,无符号unsigned)
长短(short 2字节,int 4字节,long 4或8字节)在C语言中可以随意组合。

2.2.2 无符号数的编码

B2U_w(\vec x)=\sum^{w-1}_{i=0}x_i2^i
没有符号位,每一位都为值。

2.2.3 补码编码

B2T_w(\vec x)=-x_{w-1}2^{w-1}+\sum^{w-2}_{i=0}x_i2^i
除了第一位为符号位,其余都为值。

2.2.4 反码编码

B2O_w(\vec x)=-x_{w-1}(2^{w-1}-1)+\sum^{w-2}_{i=0}x_i2^i
与补码的差别是正负数范围不同,反码正负数对称,补码正数比负数少1。
反码有-0(10000000),在补码中为-128

2.2.5 原码编码

B2S_w(\vec x)=-1^{x_{w-1}}\cdot\sum^{w-2}_{i=0}x_i2^i
负数与正数除了符号位没差别。

2.2.6 编码转换

正数都相同。
负数:原码只改符号位;反码符号位为1,其余位为正数按位取反;补码为反码+1。

2.2.7 有符号数和无符号数转换

对于w位的转换,正数不变,负数+2^w,反向转换则正数不变,负数-2^w

2.2.8 扩展

无符号数0扩展,有符号数符号扩展。

2.2.9 截断

截就完事了。截完后使用对应的公式得出值(无符号数,有符号数的补码表示)

2.3 整数运算

2.3.1 无符号数加法

加就完事了,竖式懂不懂?
加完判断下溢出:
加完后的值比x,y中任意值小则为溢出。

2.3.2 补码加法

加就完事了,竖式懂不懂?
加完判断下溢出:
x+y>=2^{w-1}正溢出
x+y<-2^{w-1}负溢出

2.3.3 补码的非

最小值不变,其余值按位取反+1。最小值其实也是取反+1。

2.3.4 无符号乘法

乘就完事,乘完截断。

2.3.5 补码乘法

截断后使用对应的公式获得值。
从位级表示来看,补码运算和无符号数运算没有差别,但同样的位级表示,在补码中表示不同的值。

2.3.6 乘以常数

将常数拆成2的幂运算,然后使用移位代替乘法。如x\cdot1414=2^4-2^1(x<<4)-(x<<1)

2.3.7 除以2的幂

无符号数右移,补码加上偏置后右移。偏置为2^{k-1}-1

2.4 浮点数

IEEE浮点标准:V=(-1)^s{\times}M{\times}2^E
32位:1位符号,8位exp,23位frac
64位:1位符号,11位exp,52位frac

1.规格化数

exp既不全为0也不全为1。
E=e-2^{k-1}+1
M=1+f
f和M都是小数,差别是f以0开头,M以1开头。
+1的操作使规格化数无法表示0。

2.非规格化数

E=1-2^{k-1}+1
为0000时飞规格化数的权重与阶码为0001时的规格化数的权重都为\frac{1}{64},使最小的规格化数和非规格化数平稳过度。
M=f

相关文章

  • 信息的表示和处理

    比特及位级运算 现代计算机存储和处理信息以二进制信号表示,一个二进制数称为位。大多数的计算机使用8位,或者字节,作...

  • 信息的表示和处理

    主要研究三种数字表示1、无符号编码2、补码编码3、浮点数编码 一些基本概念 整数表示相对小的数值范围,但是一个精确...

  • 信息的表示和处理

    在阅读《深入理解计算机系统》的过程之中,有一些知识点是我觉得有必要记录下来的,在这里进行一定的总结。 文本数据比二...

  • 信息的表示和处理

    信息的存储 字数据大小 计算机中,字长指的是指针数据标称大小,虚拟地址以字来进行编码的,所以字长w位的机器,可以表...

  • 信息的表示和处理

    现代计算机存储和处理的信息以二值信号表示。这些微不足道的二进制数字,或者称为位 (bit), 形成了数字革命的基础...

  • 第2章 信息的表示和处理

    2.16 2.17 2.18 A : 736 B : -88 C : 40 D : 48 E : 120 F : ...

  • 第2章 信息的表示和处理

     无符号(unsigned)编号基于传统的二进制表示法,表示大于或等于零的数字。  补码(two‘s-comple...

  • 第2章 信息的表示和处理

    2.1 信息存储 2.1.1 十六进制表示法 一位十六进制数可以表示4位二进制数。 2.1.2 字数据大小 64位...

  • 深入理解计算机系统 | 第02章 信息的表示与处理

    第02章:信息的表示与处理 0、二进制与计算机信息 现代计算机存储和处理信息,是以二进制信号来表示的。这些二进制数...

  • 信息的表示和处理(1):信息存储

    无符号编码:基于传统的二进制表示法,表示大于或等于0的数字 补码:有符号整数的常见方式(可正可负) 浮点数:表示实...

网友评论

      本文标题:第2章 信息的表示和处理

      本文链接:https://www.haomeiwen.com/subject/hjmzlqtx.html