【考纲内容】
(一)数制与编码
进位计数制及其相互转换;真值和机器数;字符与字符串
(二)定点数的表示和运算
定点数的表示:无符号数的表示;有符号数的表示
定点数的运算:定点数的移位运算;源码定点数的加减运算;补码定点数的加减运算;定点数的乘/除运算;溢出概念和判别方法
(三)浮点数的表示和运算
浮点数的表示:IEEE754标准;浮点数的加减运算
(四)算术逻辑单元(ALU)
串行加法器和并行加法器;ALU的功能和结构
第二章 数据的表示和运算
2.1 数制与编码
2.1.1 进位计数制及其相互转换
为什么采用二进制?
1、二进制只有两种状态,使用有两个稳定状态的物理器件就可以表示二进制数的每一位。(正负电荷,高低电频)
2、二进制位1和0与逻辑值“真”和“假”对应,为计算机实现逻辑运算和程序中的逻辑判断提供便利条件。
3、二进制的编码和运算规则都很简单,通过逻辑门电路能方便地实现算术运算。
1.进位记数法
十进制、二进制、八进制、十六进制等。
每个位数所用到的不同数码的个数称为基数。(r进制的基数为r)
每个数码所表示的数值等于该码数本身乘以一个与它所在数位有关的常数,这个常数称为位权(位置确定权重)。
数的大小=所有基数*对应位权后求和
二进制(B):0,1
八进制:0-7
十进制(D):0-9
(0x)十六进制(H):0-9,A-F
2.不同进制数之间相互转换
(1)二进制转换八进制和十六进制
转八进制:以小数点为界,整数部分从小数点左边开始,每三位转成一个八进制数,高位不足补0;从小数点右边开始,每三位转成一个八进制数,低位不足补0。
转十六进制:以小数点为界,整数部分从小数点左边开始,每四位转成一个十六进制数,高位不足补0;从小数点右边开始,每四位转成一个十六进制数,低位不足补0。
八进制转二进制:每位改为三位二进制。
十六进制转二进制:每位改为四位二进制。
(2)十进制转任意进制数
整数部分:除基取余法;小数部分:乘基取整
2.1.2 真值和机器数
真值:带“+”或“-”符号的数,是机器数所代表的实际值。
机器数:把符号“数字化”的数称为机器数。计算机中采用数的符号和数值一起编码的方法来表示数据。常用的有原码、补码和反码表示法,他们都将数据的符号数字化,通常用“0”表示“正”,用“1”表示负。
2.1.3 BCD码
BCD(Binary-Coded Decimal,BCD),二进制编码的十进制数,通常采用4位二进制数来表示一位十进制数中的0-9这十个数码。但是四位二进制数可以组合出16种代码,因此必有6种状态为冗余状态。
常见的几种BCD码:
(1)8421码
四位b3,b2,b1,b0,权值分别为8,4,2,1。
若两个8421码相加之和小于等于(9)10,即(1001)2,则不需要修正,若相加之和大于等于(1010)2,则需要加6进行修正。
(2)余3码
在8421码的基础上加(0011)2形成的。是一种无权码。
(3)2421码
四位b3,b2,b1,b0,权值分别为2,4,2,1。
规定大于等于5的4位二进制数中最高位为1,小于5的最高位为0。如5→1011而不是0101。