第二章 数据的表示和运算
进位计数制
基数:每个数码位所用到的不同符号的个数,(十进制就有0-9个不同符号),r
进制的基数就是r
r进制示例
二进制:101.1 = 1×2^(-1) + 1×2^(0) + 0×2^(1) + 1×2^(2) =5.5 相加是逢二进一
八进制:5.4 = 4×8^(-1)+ 5×8^(0)= 5.5 相加是逢八进一
十进制: 5.5 = 5 ×10^(-1)+5×10^(0) = 5.5 相加是逢十进一
十六进制:5.8=8×16^(-1)+5×16^(0) = 5.5 相加是逢十六进一
整数部分 除基取余法
十进制75 -->二进制 1001011
小数部分 乘基取整法 0.75 --> 0.11
---------------------------------- BCD码------------------------------------
8421码的映射关系:如果运算后得到的数字不在映射关系内,则需要+6(0110)进行修正。
十进制9+9用该方法表示
二进制相加后的到 1 0010 不在映射范围内,
则+(0110),得到 1 1000,即(0001 1000)转为10进制就是18
------------------------------------无符号整数的表示和运算------------------------------------------
无符号整数:
1.全部二进制位都是数值位,没有 符号位 ,第i位的位权是2^(i-1)
2. n bit无符号整数表示 范围0~2^(n-1),超出则溢出,意味着该计算机无法一次处理这么多
3. 可以表示最小的整数 全0,可以表示最大的数 全1
1.计算机硬件如何做无符号整数的加法:
从最低位开始, 按位相加, 并往更高位 进位
2.计算机硬件如何做无符号整数的减法:
被减数不变 ,“减数”全部按位取反,末位+1,减法变加法
从最低位开始,按位相加,并往更高位进位
例子:A-B ---> A+B的变形
--------------------------带符号整数在计算机中的应用------------------------------
带符号整数的表示:原码,补码,反码
原码表示:
原码—>补码:符号位不变,数值位取反,末位+1,(补码数值位不能解读位位权)
---------------------------------------------------------------------------------------
补码的加法运算:
-19的二进制原码为:1 0010011
----------------------------------------------------------------------------------------
补码的减法运算:A(补码)-B(补码) = A(补码)+ (-B)(补码)
-19的二进制原码为:1 0010011
19的二进制原码为: 0 0010011
个人总结理解:
补码的加法运算:遇见负数---> ,负数原码--->补码:***符号位不变,数值位取反,末位+1***,(补码数值位不能解读位位权)
补码的减法运算:A(补码)-B(补码) = A(补码)+ (-B)(补码)** (-B若为负数)则全部位按位取反,末位+1。 (-B若为正数)则不变。
移码:补码的基础上将符号位取反。注意:移码只能用于表示整数。0=10000000