第2章数据表示.pptx
《第2章数据表示.pptx》由会员分享,可在线阅读,更多相关《第2章数据表示.pptx(63页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:第2章数据表示2链栈用单链表表示32.1 数值表示数值表示2.2 二进制数的运算基础二进制数的运算基础2.3 计算机中的编码计算机中的编码4计算机中的信息,都是用计算机中的信息,都是用二进制数二进制数代码表示,但这些代码表示,但这些二进制代码有多种表现形式,如二进制代码有多种表现形式,如数值、字符、声音、数值、字符、声音、图像与图形数据图像与图形数据等。等。5p 数制数制,也称为,也称为“计数制计数制”,是用一组固定的符号和统,是用一组固定的符号和统一的规则来表示数值的方法一的规则来表示数值的方法。p 任何任何一个数制都包含两个基本要素:一个数制都包含两个基本要素:基数和位权基数和
2、位权。 p 十进制十进制p 二进制二进制p 八进制八进制p 十六进制十六进制6p 数数:用用0、1、2、3、4、5、6、7、8、9这十个符号来描述这十个符号来描述。p 基数基数:10。p 计数规则计数规则:逢逢十进一,处于不同位置上的数码位权不同。从小数十进一,处于不同位置上的数码位权不同。从小数点向两侧数,整数部分第点向两侧数,整数部分第n位的数码位权是位的数码位权是10n-1,小数部分第小数部分第m位的数位的数码位权是码位权是10-m。7p 数数:用用0、1这这两两个个符号来描述符号来描述。p 基数基数:2。p 计数规则计数规则:逢逢二二进进一,处于不同位置上的数码位权不同。从小数一,处于
3、不同位置上的数码位权不同。从小数点向两侧数,整数部分第点向两侧数,整数部分第n位的数码位权位的数码位权是是2n-1,小数部分第小数部分第m位的数位的数码位权码位权是是2-m。8p 数数:用用0、1、2、3、4、5、6、7这这八八个个符号来描述符号来描述。p 基数基数:8。p 计数规则计数规则:逢逢八八进进一,处于不同位置上的数码位权不同。从小数一,处于不同位置上的数码位权不同。从小数点向两侧数,整数部分第点向两侧数,整数部分第n位的数码位权位的数码位权是是8n-1,小数部分第小数部分第m位的数位的数码位权码位权是是8-m。9p 数数:用用0、1、2、3、4、5、6、7、8、9、A、B、C、D、
4、E、F这十这十六个符号来描述。六个符号来描述。p 基数基数:16。p 计数规则计数规则:逢十逢十六六进进一,处于不同位置上的数码位权不同。从小一,处于不同位置上的数码位权不同。从小数点向两侧数,整数部分第数点向两侧数,整数部分第n位的数码位权是位的数码位权是16n-1,小数部分第小数部分第m位的位的数码位权是数码位权是16-m。10(1)二进制数转换为十进制数)二进制数转换为十进制数二进制数转换为十进制数采用权相加法,即用位权表示法展二进制数转换为十进制数采用权相加法,即用位权表示法展开,而后进行相加。开,而后进行相加。11(2)十十进制数转换为二进制数进制数转换为二进制数整数部分:整数部分:
5、除基数(除基数(2)取余法,直到商为)取余法,直到商为0,然后将,然后将余数倒排余数倒排得到的二进制数。得到的二进制数。小数部分:小数部分:乘基数(乘基数(2)取整法,直到乘积的小数部分为)取整法,直到乘积的小数部分为0,或,或小数点后的位数达到了所需的精度,然后将积的小数点后的位数达到了所需的精度,然后将积的整数部分顺排整数部分顺排得到的二进制数。得到的二进制数。12(2)十十进制数转换为二进制数进制数转换为二进制数【例【例2.2】 将十进制数将十进制数98.625转换成二进制数。转换成二进制数。十进制数十进制数984920224121余数余数6312222210001低位低位高位高位整数部
6、分整数部分0十进制数十进制数0.625积的整数部分积的整数部分小数部分小数部分21.250120.500.25211.0低位低位高位高位所以,所以,(98.625)10 = (1100010.101)2 。13p 二进制数与八进制、十六进制数相互转换二进制数与八进制、十六进制数相互转换因为因为23=8,24=16,所以八进制数的,所以八进制数的0-7八个数字可以用八个数字可以用三位二进制数表示,十六进制数的三位二进制数表示,十六进制数的0-15十六个数字可十六个数字可以用四位二进制数表示。以用四位二进制数表示。14(1)二二进制数转换为八进制数进制数转换为八进制数以小数点为基准:以小数点为基准
7、:整数部分:整数部分:从右向左,每从右向左,每3位为一组,最左边不足位为一组,最左边不足3位时,左边位时,左边加加0补足补足3位。位。小数部分:小数部分:从左向右,每从左向右,每3位为一组,最右边不足位为一组,最右边不足3位时,右边位时,右边加加0补足补足3位。位。 将将以上每组中的以上每组中的3位二进制数用位二进制数用1位八进制数位八进制数表示,依序排表示,依序排序即可得到对应的八进制数。序即可得到对应的八进制数。15(1)二二进制数转换为八进制数进制数转换为八进制数【例【例2.32.3】将二进制数】将二进制数1111011101.10111111011101.1011转换为八进制数。转换为
8、八进制数。 1111011101.1011=001 111 011 101.101 100 1111011101.1011=001 111 011 101.101 100 = 1 7 3 5 . 5 4 = 1 7 3 5 . 5 4所以,所以,(1111011101.1011)(1111011101.1011)2 2=(1735.54)=(1735.54)8 8 。16(2)二二进制数转换为十六进制数进制数转换为十六进制数以小数点为基准:以小数点为基准:整数部分整数部分:从右向左,每从右向左,每4位为一组,最左边不足位为一组,最左边不足4位时,左边位时,左边加加0补足补足4位。位。小数部分小
9、数部分:从左向右,每从左向右,每4位为一组,最右边不足位为一组,最右边不足4位时,右边位时,右边加加0补足补足4位。位。将以上每组中的将以上每组中的4位位进进二制二制数用数用1位十六进制数位十六进制数表示,依序排序表示,依序排序即可得到对应的十六进制数即可得到对应的十六进制数。17(2)二二进制数转换为十六进制数进制数转换为十六进制数【例【例2.4】将二进制数转换为十六进制数。】将二进制数转换为十六进制数。1000 1011 1100.1110 1010 = 5 8 B C . E A所以,所以,2=(58BC.EA)16 。18(3)八八进制数转换为二进制数进制数转换为二进制数将每位八进制数
10、用将每位八进制数用3位二进制数替换,然后依序排列即可。位二进制数替换,然后依序排列即可。【例【例2.5】将八进制数】将八进制数623.54转换为二进制数。转换为二进制数。 173.54= 1 7 3 . 5 4 =001 111 011. 101 100所以,所以,(173.54)8=(1111011.1011)2 。19(4)十六十六进制数转换为二进制数进制数转换为二进制数将每位十六进制数用将每位十六进制数用4位二进制数替换,然后依序排列即可。位二进制数替换,然后依序排列即可。【例【例2.6】将十六进制数】将十六进制数7A9D.BC转换为二进制数转换为二进制数。 7A9D.BC = 7 A
11、9 D . B C =0111 1010 1001 1101. 1011 1100所以,所以,(7A9D.BC)162 。提示:提示:整数部分最前面的整数部分最前面的0和小数部分最后面的和小数部分最后面的0均可以省略。均可以省略。20计算机中的二进制数基本运算有两类计算机中的二进制数基本运算有两类: 算术运算算术运算(Arithmetic Operation):加加、减、乘、除等、减、乘、除等四则运算四则运算。 逻辑运算逻辑运算(Logic Operation):包括包括逻辑与(逻辑乘)、逻辑或逻辑与(逻辑乘)、逻辑或(逻辑加)、逻辑非及逻辑异或等运算,它们都是按位进行运(逻辑加)、逻辑非及逻
12、辑异或等运算,它们都是按位进行运算的,也称逻辑操作。算的,也称逻辑操作。21二进制数的四则运算加、减、乘、除运算依据二进制数的特点二进制数的四则运算加、减、乘、除运算依据二进制数的特点: 只有只有两个数字两个数字0、1; 由由低位到高位低位到高位“逢二进一逢二进一”。 加法:逢二进一加法:逢二进一。 减法:借一当二。减法:借一当二。22加法:逢二进一。加法:逢二进一。0+0=0,0+1=1,1+0=1,1+1=10【例例2.7】 计算二进制数的加法:计算二进制数的加法:1101+1011。1 1 0 1+ 1 0 1 1 1 1 0 0 023减法:向高位借一当二。减法:向高位借一当二。1-1
13、=0,1-0=1,0-0=0,0-1=1【例【例2.8】 计算二进制数的减法:计算二进制数的减法:1101-1011。1 1 0 1- 1 0 1 1 0 0 1 0241 0 0 11 0 0 10 0 0 01 0 0 1 01 0 1 1 0 1 0251 0 0 1 1 01 1 00 0 0 1 1 01 1 0 1 1 1 1 1 0 1 0 商商余数余数26从上述例从上述例2.9和例和例2.10看出看出:p 二进制数二进制数乘法的结果可以通过逐次左移后的被乘数(或乘法的结果可以通过逐次左移后的被乘数(或0)相加而获得。即,乘法可以由相加而获得。即,乘法可以由“加法加法”和和“移位
14、移位”两种操两种操作实现作实现。p 除法除法可以由可以由“减法减法”和和“移位移位”两种操作实现两种操作实现。p 在在计算机中,就是利用这一原理实现二进制数乘法和除法,计算机中,就是利用这一原理实现二进制数乘法和除法,即在运算器中只需进行即在运算器中只需进行加、减法及左、右移位加、减法及左、右移位操作便可实操作便可实现四则运算。现四则运算。27p 逻辑是指条件与结论之间的关系,因此逻辑运算是指对因逻辑是指条件与结论之间的关系,因此逻辑运算是指对因果关系进行分析的一种运算果关系进行分析的一种运算。p 逻辑运算逻辑运算的结果并不表示数值大小,而是表示一种逻辑概的结果并不表示数值大小,而是表示一种逻
15、辑概念,念,若成立用真或若成立用真或1表示;若不成立用假或表示;若不成立用假或0表示表示。p 常用的逻辑运算有常用的逻辑运算有“或或”运算(逻辑加)、运算(逻辑加)、“与与”运算运算(逻辑乘)、(逻辑乘)、“非非”运算(逻辑非)及运算(逻辑非)及“异或异或”运算(逻运算(逻辑异或)等。辑异或)等。28p “与与”运算运算29p “与与”运算运算逻辑逻辑“与与”的功能的功能:仅当逻辑变量:仅当逻辑变量x与与y的值均为的值均为1时,运算结时,运算结果果f为为1,即两个逻辑变量的取值都为,即两个逻辑变量的取值都为“真真”时,结果才为时,结果才为“真真”;两;两个逻辑变量中只要有一个为个逻辑变量中只要
16、有一个为“0”,逻辑,逻辑“与与”的的运算结果为运算结果为0(逻辑(逻辑“假假”)。)。30p “与与”运算运算X= 1 0 0 0 1 1 1 1 BF= 0 0 0 0 0 1 1 0 B31p “或或”运算运算32p “或或”运算运算逻辑逻辑“或或”的功能:的功能:当逻辑变量当逻辑变量x或或y中至少有一个为中至少有一个为1时,运时,运算结果算结果f为为1,即只要有一个条件为,即只要有一个条件为“真真”或两个为或两个为“真真”,结果就为结果就为“真真”。仅当两个逻辑变量均为。仅当两个逻辑变量均为0时,运算结果才为时,运算结果才为0。33p “或或”运算运算 X= 1 0 0 0 0 1 1
17、 1 BF= 1 1 0 1 0 1 1 1 B34p “非非”运算运算 若条件与结果相反,当条件满足时结果不成立,条件不满足时若条件与结果相反,当条件满足时结果不成立,条件不满足时结果成立,那么结果与条件之间的关系成为结果成立,那么结果与条件之间的关系成为“非非”。 “非非”(NOT)运算的规则如下)运算的规则如下:= 10= 01式中,式中,“-”是是“非非”运算符号。运算符号。 设设x和和y为逻辑变量,为逻辑变量,f表示逻辑运算结果,则逻辑表示逻辑运算结果,则逻辑“非非”的的运算表示为:运算表示为:f = xf =y35p “非非”运算运算 逻辑逻辑“非非”的功能:当逻辑变量为的功能:当
18、逻辑变量为1时,其运算结果为时,其运算结果为0;而当;而当逻辑变量为逻辑变量为0时,其运算结果为时,其运算结果为1。【例【例2.13】 设设X=0FH,求求XF = X = 0 0 0 0 1 1 1 1 BF = = 1 1 1 1 0 0 0 0 B X所以,所以, = F0HX36p “异或异或”运算运算 如果决定一件事有两个条件,当只有一个条件满足时就可行,如果决定一件事有两个条件,当只有一个条件满足时就可行,两个条件都满足或两个条件都不满足时不可行,那么结果与各两个条件都满足或两个条件都不满足时不可行,那么结果与各条件的关系成为条件的关系成为“异或异或”。 “异或异或”(EOR: E
19、xclusive OR)运算的规则如下:)运算的规则如下: 0 0 = 0 1 0 = 1 0 1 = 11 1 = 0 式式中,中,“ ”是是“异或异或”运算符号运算符号。 设设x和和y为逻辑变量,为逻辑变量,f表示逻辑运算结果,则逻辑表示逻辑运算结果,则逻辑“异或异或”的运的运算表示算表示为为: f=x y37p “异或异或”运算运算 逻辑逻辑“异或异或”的功能:的功能:两个逻辑变量两个逻辑变量x和和y的取值相同,运的取值相同,运算结果则为算结果则为0;x与与y的取值不同(一个为的取值不同(一个为1,另一个为,另一个为0)时,)时,运算结果为运算结果为1。这个功能可简记为。这个功能可简记为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 表示
限制150内