其他分享
首页 > 其他分享> > csapp 信息的表示和处理

csapp 信息的表示和处理

作者:互联网

信息的表示和处理

信息的存储

在这里插入图片描述

无符号数 +正数有符号数(负数)
左移向左移动,末尾补0向左移动,末尾补0
右移向右移动,高位补0向右移动,高位补1

数值的表示

正数的补码=原码 =反码【正数的补码最高位权重为0*(-2w)=0】
[+5]原/反/补=【0101】(此处0是符号位表示正数)
负数的补码=反码(=原码每位取反)+1
[-5]=【1011】(此处1是符号位表示负数)
[-5]=【1010】(此处1是符号位表示负数)
[-5]=【1101】(把+5的符号位变反)
在这里插入图片描述

有符号数和正数都是高位扩充0
负数高位扩充1

无符号数截断k位,相当于原数mod2k,去掉后面k位即可
有符号数截断k位,相当于原数mod2k,去掉后面k位,得到的数进行有符号的表示

有符号数转无符号数时,不需变换二进制,只需要原来的有符号数的二进制表示的数的最高位权重变为2w,相当于有符号为负数,整个数值加上2w
无符号数转有符号数时,符号位为1的数,整个数值减去2w

整数的运算

1.无符号数相加的溢出

在这里插入图片描述

example:
在这里插入图片描述

2.有符号数相加的溢出

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

3.减法

y-(x) = y+(-x)

无符号数的减法,利用溢出求相反数

在这里插入图片描述

有符号数的减法

在这里插入图片描述

乘法(可用向左移位和加减法代替)

在这里插入图片描述

浮点数的表示

1.规格化数

在这里插入图片描述

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

2.非规格化数

E=0 ===》s为0表示+0,s为1表示负0

3.无穷大的数

E=255,尾数为0 ====》s为0表示正无穷大,s为1表示负无穷小
E=255,尾数不为0 ===》不是一个数

4、int类型转float类型

在这里插入图片描述

舍入方法

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

向零舍入:直接舍弃小数部分

标签:表示,csapp,2w,符号,处理,补码,信息,负数,正数
来源: https://blog.csdn.net/qq_35641067/article/details/121980028