第2章_数制与编码教案.ppt
《第2章_数制与编码教案.ppt》由会员分享,可在线阅读,更多相关《第2章_数制与编码教案.ppt(41页珍藏版)》请在冰豆网上搜索。
,整数从右向左四位并一位小数从左向右四位并一位,2.2.3二进制数转换成八、十六进制数,2.2数制间的相互转换,整数从右向左三位并一位小数从左向右三位并一位,二进制,八进制,二进制,十六进制,1.注意补位!
2.并位方法(转换成十进制数)!
100110110111.01011(4667.2)8,10110110111.01011(5B7.5)16,例1求(100110110111.01011)2=(?
)8,4667.26,例2求(10110110111.01011)2=(?
)16,5B7.58,0,000,6,8,数制间的相互转换,0,数制间的相互转换,例3求(3F20.3)16=()23F20.30011111100100000.0011,11111100100000.0011,2.3.1算术运算二进制数与十进制数一样可以进行加、减、乘、除运算。
只不过进位或借位不同。
1.加法二进制数的加法规则是:
逢2进1。
0+0=0;1+0=0+1=1;1+1=10例1计算(101.01)B+(110.11)B=(?
)B解:
(101.01)B+(110.11)B(1100.00)B结果:
(101.01)B+(110.11)B=(1100.00)B,2.3二进制运算,1100.00,2.减法二进制数的减法规则是:
“借一当二”例2计算(1100)B-(110.11)B=(?
)B解:
(1100.00)B(110.11)B(101.01)B结果:
(1100)B-(110.11)B=(101.01)B3.乘法二进制数的乘法特别简单,因为每一步只包括乘以“1”或乘以“0”。
二进制乘法规则是:
00=010=01=011=14.除法二进制的除法也很简单,因为所求的商每位不是“1”就是“0”。
101.01,2.3二进制运算,例3计算(1110)B(1101)B=(?
)B(1101.101)B/(101)B=(?
)B解:
若按十进制数的乘法运算,则有算式:
被乘数(1110)B(14)D(10.101)B乘数(1101)B(13)D(101)B(1101.001)B1110101000011011101011110101乘积10110110(182)D1010实际上,二进制乘法从这个例子中可以看出可归结为加法和移位。
除法?
10110110,10.101,2.3二进制运算,2.3.2关系运算比较两个数据是否相同,若不相同,再区分大小。
包括四种:
“大于”、“小于”、“等于”、“不等于”2.3.3逻辑运算
(1)逻辑数据:
在逻辑上可以代表真与假、是与非、对与错、有与无这种具有逻辑性的量称为逻辑数据。
逻辑上用二进制的0和1代表这种逻辑数据。
(2)逻辑运算:
逻辑数据之间的运算称为逻辑运算。
在计算机中,逻辑数据的值用于判断某个事件成立与否,成立为真,反之为假。
用1代表真,0代表假。
2.3二进制运算,逻辑或运算(逻辑“加”法):
用符号“+”或“”来表示。
如:
逻辑变量A,B和C(可取1、0值)逻辑加法运算为:
A+B=C或AB=C逻辑或运算规则:
0+0=0,0+1=1,1+0=1,1+1=1,例1两个二进制数据按位进行“或”运算,解:
10110101+1111010111110101,2.3二进制运算,逻辑“与”运算(逻辑“乘”法):
用符号或“”或“”来表示如:
AB=CAB=CB=C或者AB=C逻辑乘法运算规则:
00=0,01=0,10=0,11=1,例2两个二进制数据按位进行“与”运算,101101011111010110110101,2.3二进制运算,逻辑非运算(逻辑“否定”运算):
用符号“”表示。
运算规则为:
=1非0等于1;=0非1等于0,2.3二进制运算,异或逻辑运算:
用符号“”表示。
运算规则为:
00=001=110=111=0即两个逻辑变量相异,输出才为1。
2.3二进制运算,无论是数字还是文字、图形、图象、声音、视频等,任何形式的数据进入计算机都必须进行0和1的二进制编码的转换。
为什么采用二进制编码?
1、物理上容易实现,可靠性强;2、运算简单,通用性强;3、计算机中二进制0、1数码与逻辑量“真”、“假”的0与1吻合,便于表示和进行逻辑运算。
2.4计算机中数据的表示方法,进入计算机的数据都要进行二进制编码的转换,同样,从计算机输出的数据要进行逆向的转换。
2.4.1数值型数据在计算机内的表示1、机器数:
将在机器内存放的正、负号数值化的数称为机器数,机器数对应的实际数值称为机器数的真值。
机器数的三个特点:
1)数的符号数值化:
数的最高位定义为符号位,1表示负,0表示正。
例:
假定8位例:
(-193)D=(-11000001)B16位真值数(-000000011000001)B其机器数为:
1000000011000001,0,符号位,2.4计算机中数据的表示方法,2)计算机中可表示整数和纯小数,因此小数点约定在一个固定的位置上,这样就不用占用1个数位。
3)机器数表示的范围受字长和数据类型的限制。
例如若表示一个整数,字长为8位,最大值(01111111)2即(127)D,若超出+127,就要溢出。
2.4计算机中数据的表示方法,1)定点数定点数:
小数点的位置是固定的,约定在某一固定位置上,所以称为定点数表示法。
定点小数:
小数点的位置在最高数值位的前面,符号位的后面。
定点小数是纯小数,即所表示的小数的绝对值均小于1。
2、数的定点和浮点表示,有效数值部分,小数点,2.4计算机中数据的表示方法,定点整数:
小数点的位置约定在最低数值位的后面。
注意:
小数点在存储单元中不占存储位。
定点整数分为有符号和无符号两种,对于有符号的整数,最高位就是符号位。
对于无符号数,所有的数字都是有效数值。
例用定点数表示整数(+123)10(-65)10解:
已知(123)10=(+1111011)2,(-65)10=(-1000001)2假定整数占16位,存放的形式分别为:
(123)10,(-65)10,如果是无符号数32833,2.4计算机中数据的表示方法,整数表示的数是精确的,但数的范围是很有限的。
根据存放数的位数,它们可以用8、16、32位等表示,当以补码形式表示时它们表示的范围如下:
8、16、32,2.4计算机中数据的表示方法,2)浮点数:
浮点表示来源于数学中的指数表示形式:
N=MRC。
例如:
十进制数(123)D可以写作0.123103,1.23102小数点的位置是可以变化的。
在计算机中,一个浮点数由两部分构成:
阶码C和尾数M。
底数R是事先约定的,在机器数中不出现。
阶码:
相当于指数,是一个带符号的整数,决定数的范围.尾数:
为了便于计算机中小数点的表示,规定尾数的绝对值为大于等于0.1并且小于1的小数(规格化)。
尾数表示数值的有效数字,决定数的精度。
2.4计算机中数据的表示方法,注意:
a、阶符、数符各占1位。
b、尾数的位数决定数的精度。
c、阶码是定点整数,其位数决定数的大小范围。
浮点数表示扩大了数的范围。
浮点数在计算机内的存储形式为:
任意二进制规格化浮点数的表示形式:
N=d2pd为尾数,前面的为数的符号。
P为阶码,其前面的为阶码的符号。
2.4计算机中数据的表示方法,例:
N=(-1101.010)B=(-0.110101)B*2(100)B设共占16位,尾数8位,阶码6位,2.4计算机中数据的表示方法,2.4.2原码、补码和反码,以机器数方式存放数据时数符位是用0表示正数,1表示负数。
机器数在计算时要考虑符号问题,若将符号位同时和数值参加运算则可能产生错误结果。
如:
-5+9结果应为4,但若按机器数方式并且符号位参加运算,则运算如下:
(下面举例介绍原码、反码、补码),10000101-5+00001001+910001110-14,2.4计算机中数据的表示方法,1、原码整数N的原码指:
其数的符号位0表示正,1表示负,其数值部分就是N的绝对值的二进制表示。
通常用N原表示N的原码。
例:
N=74D=(+1001010)BN原=01001010符号位数值又如:
N=-74D=(-1001010)BN原=11001010符号位数值最高位为符号位,后面的是数值。
在原码表示中,“0”有两种表示形式,即:
+0原=00000000-0原=10000000,注意:
+0原-0原,2.4计算机中数据的表示方法,2、反码对于正数,其反码与原码相同;对于负数,其数的符号位为1,其数值绝对值各位取反(除符号位外各位取反)。
通常用N反表示N的反码。
例:
N=(74)D=(+1001010)BN原=N反=01001010符号位数值又如:
N=-74D=(-1001010)BN原=11001010N反=10110101符号位原码各位取反在反码表示中,“0”有两种表示且+0反-0反+0反=00000000-0反=11111111,注意,2.4计算机中数据的表示方法,3、补码对于正数,其补码与原码相同;对于负数,其数的符号位为1,其数值绝对值各位取反(除符号位外各位取反)后最右一位加1。
通常用N补表示N的补码。
即反码加1。
例:
N=(74)D=(+1001010)BN原=N反=N补=01001010符号位数值例如:
(-127)D=(-1111111)B-127补=10000001例如:
-0D=(-0000000)B-0000000反=11111111-0000000补=00000000(进位舍掉)+0补=00000000由此可以看出+0补=-0补=00000000在补码中0只有一种表示。
2.4计算机中数据的表示方法,提醒:
一个用补码表示的二进制数,最高位为符号位。
当符号位为0时,表示这个数是正数,后面各位是该数的二进制值;但是当符号位为1时,后面各位不是该负数的二进制值,要把它们减1后各位取反(符号位不取)才得到它的真值。
例如:
X补=(11100001)2,但X(-1100001)2,而是X=(-0011111)2=(-31)10采用补码的优点:
当采用补码时,就可以把减法转换为加法,且可证明两数和的补码等于两数补码的和,即:
X+Y补=X补+Y补X+Y原=X+Y补补,2.4计算机中数据的表示方法,例:
在字长为8位的二进制数字系统中,当X=(64)D,Y=(10)D,求X-Y=?
解:
X=(64)D=(+1000000)BY=(10)D=(+0001010)BX-Y=X+(-Y)又X补=01000000-Y补=11110110010000006411110110-1010011011054自然丢失符号位符号位X(-Y)补00110110这是一个正数X(-Y)原X(-Y)补补00110110X-YX(-Y)(0110110)B(54)D在字长为8位的机器中,从最高位(符号位)的进位是自然丢失的。
注意,2.4计算机中数据的表示方法,机器数,0,1,0,0,1,1,0,1,+77,符号位,真值,机器数/真值,即:
+7701001101,小结,1,1,带符号的机器数,-77,原码,反码,补码,小结,定点小数:
定点整数:
定点数,符号位,隐含小数位(+0.5),符号位,隐含小数位(-3),小结,2.4.3字符型数据在计算机内的表示字符:
指所有不可以做算术运算的数据,包括:
1、西方字符(字母、数字符号、各种符号)2、中文字符由于计算机是以二进制的形式存储和处理数据的,因此字符也必须按特定的规则进行二进制编码才能进入到计算机。
字符编码的方法:
首先确定需要编码的字符总数,然后将每一个字符按顺序编号,编号值的大小无意义,仅作为识别与使用这些字符的依据。
字符的多少涉及编码的位数。
由于中西文形式不同,所以使用不同的编码。
2.4计算机中数据的表