《数据的表示与运算.ppt》由会员分享,可在线阅读,更多相关《数据的表示与运算.ppt(28页珍藏版)》请在三一办公上搜索。
1、第二章 数据的表示与运算,数据的表示与运算,2.1 进位计数制及其转换2.2 数据在计算机中的表示2.3 计算机的运算,2.1 进位计数制及其转换,2.1.1 进位计数制2.1.2 不同数制间的转换,2.1.1 进位计数制,十进制R=10,可使用0,1,2,3,4,5,6,7,8,9二进制R=2,可使用0,1八进制R=8,可使用0,1,2,3,4,5,6,7十六进制R=16,可使用0,9,A,B,C,D,E,F,“逢R进一,借一当R”,基数的概念,2.1.1 进位计数制,位权值的概念,每个位置上的数据所表示的数值等于该数符乘以该位置上的位权值,例:666.66=,610261016100610
2、-1610-2,例:(101101.11)2=,12512412312202112012-112-2,32+0+8+4+0+1+0.5+0.25,(45.75)10,2.1.2 不同数制之间的转换,二、八、十六进制转换为十进制对任意一个二、八、十六进制数,均可按照前述r进制数的展开和式方便的转成相应的十进制数如:(1101.01)2=1X23+1X22+0X21+1X20+0X2-1+1X2-2,十进制数换为r进制数,(1)十进制整数转换为r进制规则:采用除以r取余数,直到商为零时结束。所得余数序列,先余为低位,后余为高位。(2)十进制小数转换为r进制规则:采用乘以r取整数,直到余数为0时结束
3、。所得整数序列,先整为高位,后整为低位。,十进制整数转为二进制整数,1101,例1:(13)10=()2,1 3,6,3,1,0,2,2,2,2,余数,1,0,1,1,二进制数低位,二进制数高位,十进制小数转成二进制小数,(0.6875)10=()2,0.6 8 7 5,2,3 7 5 0,1.,2,7 5 0,2,0.,5 0,1.,2,0,1.,整数,1,0,1,1,二进制数高位,二进制数低位,例2:,二进制与八进制、十六进制之间的相互转换,(1)二进制数转换成八进制数:以小数点为分界点,左右三位一节,不足三位以零补足三位。,例:(101101.01)2=(101,101.010)=(55
4、.2)8,(2)八进制数转换成二进制数:将每位八进制数码以三位二进制数表示。,例:(76.42)8=(111110.100010)2=(111110.10001)2,二进制与八进制、十六进制之间的相互转换,(3)二进制数转换成十六进制数:以小数点为分界点,左右每四位一节,不足四位以零补足四位。,(4)十六进制数转换成二进制数:将每位十六进制数码以四位二进制数表示。,2.2 数据在计算机中的表示,计算机中的数据:,数值型数据:128,(32.56)8;,非数值型数据:“学生”、“0730-8845139”。,数值数据的表示,1.计算机中数的有关概念,数的长度,1字节(byte)=8比特(bit)
5、,在计算机中,数的长度按比特(bit)来计算。但因存储容量常以“字节”为计量单位,所以数据长度也常以字节为单位计算。,数值数据的表示,小数点的表示方法,在计算机中表示数值型数据,其小数点的位置总是隐含的。,数的符号,一般用数的最高位(左边第一位)来表示数的正负号,并约定以“0”表示正,以“1”表示负。,数值数据的表示,数的定点表示:将计算机中的小数点的位置视为是固定不变的。,定点整数,格式:,定点小数,范围:-2n-1(2n-1)和 1(1 2-(n-1),2.定点数表示方法,格式:,数值数据的表示,3.浮点数的表示方法,格式:,阶码是指数部分的值,表示幂次,其基数通常取2。,X=+d 2+E
6、,例如:256.5 的浮点格式(32位)为:,所以(256.5)10=,(0.1000000001)229,阶码:7位,数符,尾数:23位,阶符,32位浮点数的范围是:,最大正数:(1223)2127,最小正数:212128 2129,最大负数:212128 2129,最小负数:(1223)2127,也即:2129|X|(1223)2127,(1)原码,原码就是用最高位表示数的正、负号,0表示正,1表示负,而数值部分用最高位以后的若干位来表示。,(2)反码,原码变反码的规则为:正数的反码与原码相同;负数的反码是将它的原码除符号位外逐位取反。,例:二进制数+1000110的原码表示为:01000
7、110,二进制数 1000110的原码表示为:11000110,数值数据的表示,4.带符号数的表示方法,数值数据的表示,(3)补码,补码的取码原则是:正数的补码和其原码相同;负数的补码是它的原码除符号位外逐位取反(即0变1,1变0),最后在末位加1。,例:二进制数+1000110的补码表示为:01000110,二进制数 1000110的补码表示为:10111010,二进制数 1000110的反码表示为:10111001,例:二进制数+1000110的反码表示为:01000110,原码、补码的几个例子,十进制 原 码 补 码,87-87 127-127 0-0,01010111,01010111
8、,11010111,10101001,01111111,01111111,11111111,10000001,00000000,00000000,10000000,00000000,采用补码来表示正、负整数时,+0 和 0 的取码是完全相同的,而原码对+0和 0 的取码是不相同的。,补码的加减法公式,X+Y 补=X 补+Y 补,X Y 补=X 补+Y 补,X 补 补=X 原,例题,例:设 X=44 Y=59 求X+Y=?XY=?,由,X 补=0101100,Y 补=00111011,-Y 补=11000101,-Y 原=10111011,故,X+Y 补=X 补+Y 补=01100111,得,X
9、+Y=+1100111=(+103)10,由,X Y 补=X 补+Y 补=11110001,X Y 原=XY 补求补=10001111,得,XY=-0001111=(-15)10,数值编码,十进制数与8421BCD编码表,2.2.2 字符数据的表示,(1)西文字符的ASCII编码,(2)汉字字符的编码,GB2312编码局部表,GB2312编码总体布局,汉字交换码,汉字的各种编码及其关系,汉字机内码,汉字输入码,汉字字形码,国标GB180302000,输入码、机内码、字形码之间的关系,2.3 计算机的运算,算术运算:加、减、乘、除逻辑运算:与、或、非数据比较:大于、小于、等于、不等于、大于等于、小于等于数据传送:输入、输出、赋值,2.3.1 二进制的算术运算,加法0+0=0 0+1=1 1+0=1 1+1=0(进位)减法0-0=0 1-0=1 1-1=0 0-1=1(借位)乘法0 x0=0 1x0=0 0 x1=0 1x1=1除法 与十进制类似,逻辑运算,逻辑“与”运算0 x1=0 1x0=0 0 x0=0 1x1=1 逻辑“或”运算0+0=0 0+1=1 1+0=1 1+1=1逻辑“非”运算Not 0=1 Not 1=0,