




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章信息的表示与存储大学计算机基础第二章信息的表示与存储主要内容2.1二进制编码2.2数据转换及其运算
2.3数据在计算机中的表示方法
2.4数据压缩
思考:我们日常生活中接触的进制……
最常用的十进制
星期:七进制
小时:24进制,分钟:60进制,秒:60进制
月份:12进制1.二进制编码2.1二进制编码及运算理解0和1在计算机中采用二进制存储和表示信息。二进制数只有两个数码,0和1,低位向高位进位是逢二进一,借一当二。为什么计算机中采用二进制而不采用我们熟悉的十进制计数呢?因为计算机中大量的电子元器件一般都具有两种稳定状态,如电压的高与低、晶体管的导通与截止,开关的开与关等,这两种状态正好用来表示二进制数的两个数码0和1。采用二进制使信息数字化容易实现,并适合用二值逻辑元件进行表示和处理。另外,二进制数运算规律简单,可靠性高,易于物理实现,适合逻辑运算。
理解0和1二进制的优点:物理上容易实现,可靠性高,运算规律简单,适合逻辑运算。
1010
0
101二进制是计算机中采用的计数制。
只有0和1两个数字符号,基数是“2”,低位向高位进位规则是“逢二进一”。
二进制数中小数点向右移1位,数值就扩大2倍;小数点向左移1位,数值就缩小2倍。
减法:
0-0=0
0-1=1(有借位)
1-0=11-1=0
1011+110010111
1100-10110001
加法:0+0=0
0+1=1
1+0=11+1=0(有进位)2.二进制数的算术运算
在计算机内部,二进制加法是基本运算,而二进制的减法则是采用补码运算,将减法转换成加上一个负数来实现的;二进制乘、除法运算可以通过加、减和移位来实现。
例2.2例2.1
11+12232023/9/287逻辑与:0∧0=0
0∧1=0
1∧0=01∧1=13.二进制的逻辑运算逻辑或:0∨0=0
0∨1=1
1∨0=11∨1=1逻辑非0=11=0逻辑运算是指对某一给定条件,判断其是否成立的一种运算。运算结果不表示数值的大小,而是表示条件成立与否。2.2数制转换及其运算在讨论数的进位制之前,先介绍进位计数制的“基数”和“位权”的概念。因为无论采用哪种计数制表示数据,都涉及到“基数”和“位权”。
在日常生活中,人们除了使用十进制外,也经常使用其他进制,如六十进制、十二进制等。由于计算机中所有信息都是以二进制数的形式表示和存储的,因此需要了解二进制和其他进制之间的转换与运算。我们先来看一个例子:十进制数
678.34我们怎么能正确识别这个数呢?根据每个数字所在的位置,我们可以判断数的大小。678.3410210110010-110-26*1027*1018*1003*10-14*10-2位权任何一种进位计数制表示的数都可以写成按权展开的多项式之和1.数的进位计数制进位计数制定义:
进位计数制是一种数的表示方法,按进位的方法来计数。采用位权表示法;逢r进一。基数:每种进位计数制都有自己基本的符号,若某种进位计数制中使用了r个符号(0,1,2,…,r-1),r
称为该进位计数制的基数。位权:进位制中基数的某次幂值称为“位权”。r进制r进制数N可表示为:基数:rrn-1,rn-2,…,r0,r-1,r-2,…
r-m分别是某位的权数码:0,1,2,…,r-1Nr=an-1×rn-1+……+a1×r1+a0×r0+a-1×r-1+……+a-m×r-m或r进制数N可以表示为:按权展开的多项式之和即;该数各位的数码乘以所在位的权值的和。基数位权数码(1)十进制数基数:10102,101,100,10-1,10-2分别是数的百位、十位、个位、十分位、百分位的权数码:0,1,2,3,4,5,6,7,8,9(2)二进制数二进制数按“权”展开的形式为:基数:22n-1,2n-2,…,20,2-1,2-2…,
2-m分别是数某位的权数码:0,1用英文字母标识来标识进位制:字母“D”代表十进制,“B”代表二进制,字母“O”代表八进制,“H”代表十六进制。(3)八进制数和十六进制数二进制数书写位数多,难以记忆和识别,为了便于书写和记忆,常用八进制数或十六进制数作为二进制数的助记符形式。进制十进制二进制八进制十六进制基数102816数字符号0~90,10~70~9A(10)B(11)C(12)D(13)E(14)F(15)2023/9/2815十进制数非十进制数非十进制数十进制数二、八、十六进制之间的转换2.不同进位计数制间的转换2.不同进位计数制间的转换(1)r进制数(非十进制数)转化成十进制数
各种进位制转换为十进制的方法:分别写出二进制数、八进制数和十六进制数的按权展开式,计算所得的值,即为转换后的十进制数。
其中:ai为系数(数码)
r为基数
n为项数例2.5:(10101)2=
=1×24+0×23+1×22+0×21+1×20
=24+22+1=(21)10举例例2.6:(3506.2)8=
=3×83+5×82+0×81+6×80+2
×8-1=1536+320+6+0.25=(1862.25)10例2.7:(A3E.5)16==10×162+3×161+14×160+5×16-1
=2560+48+14+0.31=(2622.31)10举例由以上几个例子看出:由R进制转换到十进制。可以把小数点作为起点,分成向左右两边进行,即对于其整数部分和小数部分分别转换。即:
非十进制数十进制数(1011.1)2232221202-12023/9/2820
875余数为3(a0)
8
9余数为1(a1)
8
1余数为1(a2)
0结果为:(75)10=(113)8余数法:除基数取余数、由下而上排列。例:将十进制的75转换成八进制十进制整数非十进制整数2023/9/28212751
2371
2180
291
240
220
211
0又例:结果为:(75)10=(1001011)22023/9/2822进位法:用十进制小数乘基数,当积为0或达到所要求的精度时,将整数部分由上而下排列。示例:
0.625
╳2
1.250整数=1
╳2
0.50整数=0
╳2
1.0
整数=1小数值=0十进制小数非十进制小数结果为:(0.625)10=(0.101)2如果十进制的数即有整数也有小数,将其两部分合起即可。2023/9/28230210050202250122163221200110.23×2
0.46×2
0.92×2
1.84例:将(100.23)10化为二进制。0.84×2
1.68
若小数保留4位:结果为:(100.23)10=(1100100.001)23.二进制、八进制、十六进制数间的转换八进制对应二进制00001001201030114100510161107111每3位二进制对应一位八进制数十六进制对应二进制十六进制对应二进制0000081000100019100120010A101030011B101140100C110050101D110160110E111070111F1111每4位二进制对应一位十六进制数
整数部分从右向左三位并一位小数部分从左向右三位并一位二进制八进制二、八与十六进制之间的转换一位拆三位一位拆四位
整数部分从右向左四位并一位小数部分从左向右四位并一位二进制十六进制
例2.10将二进制数10110011.10101转换为八进制数。010
110
011.101
010(B)=263.52(O)26352(高位和低位各补1个0)例2.11将二进制数1011010101.101011转换为十六进制数。0010
1101
0101.1010
1100
(B)=2D5.AC(H)
2D5AC(高位和低位各补2个0)二进制转化成八(十六)进制
整数部分:小数点为基准从右向左按三(四)位进行分组小数部分:小数点为基准从左向右按三(四)位进行分组不足补零例2.12将八进制数(6415.64)8转换为二进制数。(6415.64)8
=(110
100
001
101.110
100)2
6415.64例2.13将十六进制数(6A1D.C4)16转换为二进制数。(6A1D.C4)16
=(0110
1010
0001
1101.1100
0100)26A1D.C4
八(十六)进制转换为二进制
将八进制数转换为二进制数:只需将1位八进制数转为3位二进制数;
将十六进制数转换为二进制数:只需将1位十六进制数转为4位二进制数.4.二-十进制数(BCD码)日常习惯使用十进制,为了让计算机能够识别、存储十进制数,向计算机输入数据时仍采用十进制。计算机先将十进制按位编码,每位十进制对应4位二进制表示,计算机自动将其转换为二进制数,这种编码称为BCD编码(又称8421码)。主要用途帮助计算机自动实现十进制向二进制相互转换。BCD码取10种状态表示十进制数码0~9.既具有二进制的形式,又具有十进制的特点,逢“十”进位。二--十进制数(BCD码)(75.4)D=(01110101.0100)BCD(10000101.0101)BCD=(85.5)D
BCD码与二进制之间的转换不能直接进行,应先转换为十进制后再转换为二进制。2.3数据在计算机中的表示方法主要内容
1.计算机中数据的存储单位2.带符号数的机器数表示3.数的原码、反码和补码表示
4.定点数与浮点数
2.带符号数的表示
数值数据是指通常所说的数或数据,它有正负和大小之分,有整数和小数之分。下面介绍带符号数的表示方法。但是在计算机中是不能存储负号的,只能存储0和1.因此,就提出一个想法,正、负也要用“0”和“1”来表示,将表示数的位数拿出来一位表示数的符号。一般指定最左边一位表示数的符号,用0代表正数,用1代表负数。原来八位存储一个数,现在就用七位存储数值了。问题:十进制数6用八位二进制表示为:00000110
十进制-6如何表示?-00000110可以吗?2.带符号数的表示
符号位“0”表示正、“1”表示负10000110
若一个数用8位二进制表示,+6和-6表示形式为:00000110+6-6通常称这种符号数字化的数为机器数。数的原码、反码和补码表示这种用0和1表示数的符号的数称为机器数,也称为数的原码。但是实际上计算机中不是用这种方法存储有符号数的。为什么呢?机器数在进行运算时,若将符号位和数值位同时参与运算,则会得出错误的结果。例2.12:X=+6[X]原码=00000110Y=-3[Y]原码=10000011X+Y=+6+(-3)=6-3=3原码相加:得到-9
00000110+1000001110001001……
(-9)因此,为了运算方便,计算机中引入了反码和补码的概念,将加减法运算统一转换为补码的加法运算。原码相减:得到-300000110-1000001110000011……-3数的原码、反码和补码表示0X1|X|0<=XX<=0+7:00000111+0:00000000
-7:10000111-0:10000000[X]原=数的原码、反码和补码表示表示数的范围:-127~127
1111111101111111整数X的原码表示是:整数的符号位用“0”表示正,“1”表示负,其数值部分是该数的绝对值的二进制表示。在原码表示中,0有两种表示方法。正数的原码、反码和补码形式完全相同,而负数则有不同的表示形式。(2)反码0X1|X|0<=XX<=0+7:00000111+0:00000000-7:11111000-0:11111111[X]反=负数的反码是对该数的原码除了符号位外各位取反。在反码表示中,0有两种表示方法。反码是求补码的中间过渡。补码表示中:0有唯一的表示形式,即[+0]=[-0]=00000000因此,可以用多出来的编码10000000来扩展补码的表示范围值为-128,最高位1即可看做符号位负数,又可表示为数值。表示数的范围:-128~127+7:00000111+0:000000000X1|X|+10<=XX<=0-7:11111001-0:00000000[X]补=负数的补码是在其反码的基础上末位加1。(3)补码例2.13:利用补码进行(+6)+(-6)运算。X=+6[X]原=00000110[X]补=00000110Y=-6[Y]原=10000110[Y]补=11111010
两数相加00000110…………+6的补码+11111010…………-6的补码
100000000…………0的补码例2.14:利用补码进行(+6)+(-3)运算。X=+6[X]原=00000110[X]补=00000110Y=-3[Y]原=10000011[Y]补=11111101
两数相加00000110…………+6的补码+11111101…………-3的补码
100000011…………+3的补码计算机中数据存储与时钟一样,是个模数系统。超过了它所能表示的最大值后,就又会恢复到初始状态。当运算结果超出其表示范围时,会产生“溢出”(得出不正确的结果)。两个8位二进制数相加11111111:25500000001:1100000000:0
数表示的范围受到字长的限制若表示一个整数:用8位,最大值为01111111,即27-1=127用16位,最大值为0111111111111111,即215-1=327673.无符号数的表示在无符号数据处理的过程中,如不需要设置符号位时,可用全部字长来表示数值大小。如8位无符号数的取值范围是0~255,
255=28-1同样位数的数据在机器中,采用无符号表示或有符号表示其取值范围是不同的。111111114.定点数与浮点数定点整数定点数分为定点整数和定点小数。(1)定点数表示小数点固定在机器数的最低位之后整数表示数据精确,数的范围有限。如机器字长16位,补码范围-32768-32767定点数是指规定小数点固定在某一位置上。浮点数是指小数点位置可以任意浮动。符号位4.定点数与浮点数S小数点
定点小数
(1)定点数表示小数点固定在符号位之后定点数表示方法使数的表示范围受到限制。当超出规定的范围时,就无法表示了。因此,就有另外一种表示数的方法,即浮点数。(2)浮点数表示尾数的位数决定数的精度阶码的位数决定数的范围
科学记数法表示:十进制数-1234.567可表示为:-1234.567
=-1.234567
103采用以2为底的科学记数法存储:
N=数符
尾数
2阶码
(其中:数符0为正,1为负,尾数和阶码都用二进制数表示)浮点数也称为实数,是指小数点位置不固定的数,它既有整数部分又有小数部分。利用浮点数可以扩大实数的表示范围。IEEE754标准(美国电气电子工程师协会IEEE,1985)将浮点数分成两类:单精度数用32位表示:数符1位,阶码8位,尾数23位双精度数用64位表示:数符1位,阶码11位,尾数52位为了处理负指数的情况,实际数据的指数存储时数值加上127(27-1)后进行存储。尾数只存储小数部分。单精度浮点数机内存储格式(占4个字节,32位)阶码数符尾数1位8位23位由于不同计算机所选的基值、尾数和阶码的长度不同,因此对浮点数表示有较大差别,这就不利于软件在不同计算机之间的移植。为此,1985年,美国电气电子工程师协会IEEE制定了IEEE754标准。2.4非数值数据的表示与存储主要内容1.字符编码2.汉字编码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水泥稳定土施工方案
- 二零二五年度保密技术合作保密费及保密期限协议
- 二零二五年度养老服务业劳动合同违约赔偿及服务质量标准合同
- 2025年度购房合同签订及后续房产增值服务协议
- 2025年法拍房屋拍卖议价及成交保障合同
- 二零二五年度大型光伏发电站项目设备安装合同
- 二零二五年度青少年辅导班退费条款及辅导效果承诺协议
- 二零二五年度智慧医疗合同-严格责任原则下的远程医疗服务协议
- Unit 2 In Beijing 单元基础知识复习(含答案)
- 2025年度离婚抚养协议书:子女抚养、教育支持与财产分割协议
- GB/T 3452.2-2007液压气动用O形橡胶密封圈第2部分:外观质量检验规范
- GB/T 30797-2014食品用洗涤剂试验方法总砷的测定
- GB/T 20057-2012滚动轴承圆柱滚子轴承平挡圈和套圈无挡边端倒角尺寸
- GB/T 19808-2005塑料管材和管件公称外径大于或等于90mm的聚乙烯电熔组件的拉伸剥离试验
- GB/T 10051.1-2010起重吊钩第1部分:力学性能、起重量、应力及材料
- 2022年人民交通出版社股份有限公司招聘笔试试题及答案解析
- 班组建设工作体系课件
- 第章交通调查与数据分析课件
- 穆斯林太巴热咳庆念词文
- 软硬结合板的设计制作与品质要求课件
- 中医院情志养生共64张课件
评论
0/150
提交评论