1.2数据编码 课件(共69张PPT) 2023—2024学年 粤教版(2019)高中信息技术必修1

资源下载
  1. 二一教育资源

1.2数据编码 课件(共69张PPT) 2023—2024学年 粤教版(2019)高中信息技术必修1

资源简介

(共69张PPT)
数据与编码
比特的概念
进位计数制及进位之间的转换
计算机内“数”的表示方法
计算机内字符的表示方法
数字(Digit)技术
数字技术:是采用有限个状态(目前主要是0和1两个数字)来表示、处理、存储和传输一切信息的技术。
数字化:全面采用数字技术实现信息系统。
数字化现状:
计算机:全部采用
通信和信息存储:大量采用
广播电视:数字电视和数字广播越来越近
采用二进制数字技术的原因
器件容易实现
每一位只有两个状态,电路实现容易
运算规则简单
加法:0+0=0 0+1=1 1+0=1 1+1=0(进位)
减法:0-0=0 0-1=1(借位)1-0=1 1-1=0
乘法:0*0=0 0*1=0 1*0=0 1*1=1
与逻辑(布尔)代数相吻合
有坚实的数学工具作为设计的基础
1、比特的概念
比特(binary digit ,bit)
在数字系统中是组成信息的最小单位;
数字技术的处理对象,二进制位,位;
比特只有两种状态:数字0或数字1;
计算机中的数、文字、符号、图像、声音;等,都表现为比特的不同组合;
一般用小写的字母“b”表示(bit)。
字节Byte
“比特”单位太小,计算机
并不单独对比特进行处理、存储或传输;
而是采用稍大一些的计量单位——字节(Byte)
1字节 = 8比特
b7 b6 b5 b4 b3 b2 b1 b0
最高位
最低位
1个字节,其中bi为一个比特
2、比特的运算
比特的表示
数字电路中,电位的高低、脉冲的有无——两个状态“0”或“1” 。
逻辑思维中,命题的真或假——数字“1”或“0”。
比特的运算
使用的数学工具——逻辑代数(布尔代数)
三种最基本的逻辑运算
逻辑加、逻辑乘、取反
逻辑加运算
逻辑加也称“或”运算,用符号“OR”、“∨”或“+”表示。运算规则如下:
0 0 1 1
∨0 ∨1 ∨0 ∨1
0 1 1 1
两个多位二进制数进行逻辑加运算时,按位独立进行,相邻位之间不发生关系。例如:
1 0 1 1 1 1 0 0
∨ 0 0 1 1 0 1 1 0
1 0 1 1 1 1 1 0
逻辑乘运算
逻辑乘也称“与”运算,用符号“AND”、“∧”或“·”表示。运算规则如下:
0 0 1 1
∧0 ∧1 ∧0 ∧1
0 0 0 1
两个多位二进制数进行逻辑乘运算时,按位独立进行,相邻位之间不发生关系。例如:
1 0 1 1 1 1 0 0
∨ 0 0 1 1 0 1 1 0
0 0 1 1 0 1 0 0
取反运算
取反:也称“非”运算,用符号“NOT”或“-”表示。运算规则如下:
0 → 1 1 → 0
3、比特的存储
存储(记忆)1个比特需要使用具有两种稳定状态的设备。比方:
现实生活中具有两种稳定态的物体举例:
开关——开、关
继电器——断开、吸合
灯泡——亮、暗
习惯上将两种状态之间转换的过程称为“开”或“关”。
稳态1
稳态2
非稳态但会趋于一种稳态
数字计算机中比特的存储装置
触发器
一种双稳态电路,用以记录一个比特;
特点:工作频率(开关速度)极高,但集成度较低
用途:成组构成CPU内部的少量的寄存器。
电容器
利用电容器的充放电状态表示1个比特;
特点:工作频率低于触发器,但集成度较高;
用途:计算机的大容量的内存。
磁盘
利用磁介质表面的磁化状态表示一个比特。
光盘
利用盘片表面上的微小凹坑表示一个比特。
注意:
寄存器
内存
磁盘
光盘
半导体存储器
易失性存储器,断电以后信息丢失。
非易失性存储器,可用来长期存储信息。
4、存储容量的表示
存储容量是存储器的重要指标,
存储容量的度量通常要比字节大得多,
使用2的幂次作为单位有助于存储器的设计。
经常使用的单位有:
“千字节”(KB),1KB = 210字节 = 1024B
“兆字节”(MB),1MB = 220字节 = 1024KB
“吉字节”(GB),1GB = 230字节 = 1024MB(千兆)
“太字节”(TB),1TB = 240字节 = 1024GB(兆兆)
小结
掌握数字化的概念
掌握比特的概念
掌握比特的运算规则
掌握比特的存储技术
掌握存储容量的表示
随堂练习
[填空]数字系统中进行信息处理的最小单位是________。
[填空]在计算机的存储器中存储比特时,是以________为基本单位。
[单选]bit的运算有三种,它不包括以下哪一个 。
A.取反 B.与 C.比较 D.逻辑加
比特
字节
C
[单选]以下关于计算机采用二进制的原因的说法中正确的是 。
二进制的灵活性优于十进制
二进制的运算性能优于十进制
二进制的电路实现易于十进制
二进制对人类来说比十进制更自然
[多选]bit的存储可采用以下 元件。
A.电阻 B.电容 C.电感 D.磁铁 E.电灯开关
F.触发器 G.二极管 H.充电电池 I.小水坑
BF
C
[计算]逻辑变量A、B、C。已知A=10010101
B=11010011,若C=A +B,则C= 。
[计算]逻辑变量A、B、C。已知A=00010101
B=11010011,若C=not(AB),则C= 。
[计算]逻辑变量A、B、C。已知A=00010101
B=not A,若C=11101010,问C=B? 。
11010111
11101110
不等
6.1.2 进位计数制
十进制数(Decimal)
十进制的基数是“10”,使用十个符号0、1、2、3、4、5、6、7、8、9,逢十进一。例如:
203.49=2×102+0×101+3×100+4×10-1+9×10-2
一般地说,一个十进制数 KnKn-1 ... K1K0. K-1K-2 ... K-m
所代表的实际数值是:
S=Kn×10n+Kn-1×10n-1+...+K1×101+K0 ×100
+K-1×10-1+K-2 ×10-2+…+K-m ×10-m














第n位的权
第n位的系数
二进制数(Binary)
二进制的基数是“2”,使用两个符号0和1,逢二进一:
(101.01)2=1×22+0×21+1×20+0×2-1+1×2-2
=(5.25)10
一般地说,一个二进制数
S=KnKn-1 ... K1K0 . K-1K-2 ... K-m
所代表的实际数值是:
S = Kn×2n + Kn-1×2n-1 + … + K1×21 + K0 ×20
+ K-1 ×2-1 + K-2 ×2-2+…+K-m ×2-m
二进制数的运算
对二进制数也可以进行算术运算
算术运算:
两个一位数的加法和减法的基本运算规则是:
加法 减法
0 0 1 1 0 0 1 1
+0 +1 +0 +1 -0 -1 -0 -1
0 1 1 10 0 1 1 0
(向高位进1) (向高位借1)
两个多位二进制数的加、减法可以从低位到高位按上述规则进行,但必须考虑进位和借位的处理
八进制数(Octonary)
八进制数使用0、1、2、3、4、5、6、7八个符号,逢八进一。
(365.2)8= 3×82+6×81+5×80 +2×8-1
= (245.25)10
十六进制数(Hexadecimal)
十六进制数使用十六个符号:
0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,
其中A、B、C、D、E、F分别代表十进制的10、11、12、13、14、15。
逢十六进一
(F5.4)16=15×161+5×160+4×16-1
= (245.25)10
为什么要有不同进制?
计算机中只使用二进制
现实中最常用的是十进制
八进制和十六进制是给程序员用的
二进制数太长,书写、阅读、记忆均不便;
32位二进制数用十六进制书写时,只需8位。
八进制和十六进制与二进制之间的转换直观、方便。
除二进制外,其他进制的数在输入进计算机之前全部被转换成二进制。
6. 1.3 数制之间的转换
十进制数与二进制数的转换
(1)二进制数 => 十进制数
位权相加法,计算按权展开式的和
例如:将 11101.1011B 转换为十进制数。
1×24+1×23+1×22+0×21+1×20
+1×2-1+0×2-2+1×2-3+1×2-4
=16+8+4+0+1+0.5+0+0.125+0.0625=29.6875
(2)十进制整数 => 二进制整数:除2取余
(3)十进制小数 => 二进制小数:乘2取整
例如:将 29.6875 转换为二进制数。
(1)先转换整数部分29
29
2
14
2
……1
7
2
……0
3
2
……1
1
2
……1
0
……1
.小数点
离小数点最近的一位
=11101B
(2)再转换小数部分0.6875
0.6875
× 2
1.3750
× 2
0.375 ……1
0.75 ……0
× 2
1.5
× 2
0.5 ……1
1.0
0.0 ……1
.小数点
离小数点最近的一位
=0.1011B
转换表
八进制数 二进制数 八进制数 二进制数
0 000 4 100
1 001 5 101
2 010 6 110
3 011 7 111
二进制数转换为八进制数举例: 001 101 001 110.110 100B → 1516.64Q
八进制数转换为二进制数举例:
2467.32Q → 010 100 110 111.011 010B
八进制数与二进制数的转换
十六进制数与二进制数的转换
转换表
十六进制数 二进制数 十六进制数 二进制数
0 0000 8 1000 1 0001 9 1001 2 0010 A 1010 3 0011 B 1011 4 0100 C 1100
5 0101 D 1101
6 0110 E 1110
7 0111 F 1111
二进制数转换为十六进制数举例:
0011 0100 1110.1100 1100B → 34E.CCH
十六进制数转换为二进制数举例:
35A2.CFH → 0011 0101 1010 0010.1100 1111B
十进制 二进制 十六进制 八进制
0 0000 0 0
1 0001 1 1
2 0010 2 2
3 0011 3 3
4 0100 4 4
5 0101 5 5
6 0110 6 6
7 0111 7 7
8 1000 8 10
9 1001 9 11
10 1010 A 12
11 1011 B 13
12 1100 C 14
13 1101 D 15
14 1110 E 16
15 1111 F 17
BCD整数
BCD整数(Binary Coded Decimal)称为“二进制编码的十进制整数”,使用4个二进位表示1个十进制数字。
例如:
(43)BCD = 0100 0011
(59601)BCD = 0101 1001 0110 0000 0001
小结
进制
二进制、十进制、八进制、十六进制
进制之间的转换
二-十转换(系数*权的总合)
十-二转换(除二取余、乘二取证)
二-八转换(1个8进制位对应3个二进制位)
二-十六转换(1个16进制位对应4个二进制位)
其他转换
BCD数
随堂练习
[单选](2000)10化成十六进制数是( )
A(7CD)16 B(7D0)16 C(7E0)16 D(7F0)16
[单选]下列数中最大的数是( )
A(10011001)2 B(227)8 C(98)16 D(152)10
下列数中最小的数为( )
A.(101001)2 B.(52)8
C.(101001)BCD D.(233)16
6. 1.4 二进制数
在计算机内的表示
计算机中的数值信息分类
整数和实数:它们都是用二进制表示的,但表示方法有很大差别。
整数的概念
整数不使用小数点,或者说小数点始终隐含在个位数的右面
整数的分类:
不带符号的整数(unsigned integer),一定是正整数
取值范围: 8位 0~255(28-1),
16位 0~65535(216-1),
32位 0~232-1
带符号的整数(signed integer),既可表示正整数,又可表示负整数。
无符号整数的表示
采用“自然码”表示:
取值范围由位数决定:
8位:
可表示0~255 (28-1)范围内的所有正整数
16位:
可表示0~65535(216-1)范围内的所有正整数
n位:
可表示 0~2n-1范围内的所有正整数。
十进制数 8位无符号整数 0 00000000
1 00000001
2 00000010
3 00000011
4 00000100
5 00000101
252 11111100
253 11111101
254 11111110
255 11111111
···
···
带符号整数的表示(1)
符号如何表示?
用最高位表示,“0”表示正号(+),“1”表示负号(-)
数值部分如何表示?
(1) 原码表示:
整数的绝对值以二进制自然码表示
(2) 补码表示:
正整数:绝对值以二进制自然码表示
负整数:绝对值使用补码表示
带符号数的表示方法:用1位表示符号,其余用来表示数值部分
···
符号位
数值部分
最低位
最高位
举例:
[+43]的8位原码为: 00101011
[- 43]的8位原码为: 10101011
负数的绝对值如何用补码表示?
先表示为自然码
将自然码的每一位取反码
在最低位加“1”
例1: [- 43]用8位补码表示
所以:
[- 43] 的8位补码为:11010101
例2: [- 64]用8位补码表示
所以:
[- 64] 的8位补码为:11000000
43 => 0101011
取反: 1010100
加1: 1010101
64 => 1000000
取反: 0111111
加1: 1000000
“各位取反,末尾加1”
原码和补码的特点
原码表示法
优点:与日常使用的十进制表示方法一致,简单直观
缺点:加法与减法运算规则不统一,增加了成本;
两个机器0:“00000000”、“10000000”,不方便运算
补码表示法
优点:加法与减法运算规则统一, 没有“-0”,可表示的数比原码多一个
缺点:不直观,人使用不方便
结论:带符号整数在计算机内不采用“原码”而采用“补码”的形式表示!
表数范围
原码可表示的整数范围
8位原码: - 27+1~27- 1(- 127~127)
16位原码: - 215+1~215- 1(- 32767~32767)
n 位原码: - 2n-1+1~2n-1- 1
补码可表示的整数范围
8位补码:- 27~27- 1 (- 128~127 )
n位补码:- 2n-1~2n-1- 1
- 128表示为 10000000
+127 表示为 01111111
小结:3种整数的比较
8位二进制码 表示无符号整数时的数值 表示带符号整数(原码)时的值 表示带符号整数(补码)时的值
0000 0000 0 0 0
0000 0001 1 1 1
…… …… …… ……
0111 1111 127 127 127
1000 0000 128 - 0 - 128
1000 0001 129 - 1 - 127
…… …… …… ……
1111 1111 255 - 127 - 1
计算机中整数有多种,同一个二进制代码表示不同类型的整数时,其含义(数值)可能不同
一个代码它到底代表哪种整数(或其它东西),是由指令决定的
随堂练习
[多选]25的八位原码表示正确的有 。
A.11001 B.00011001 C.10011001 D.11001000
[多选]以下关于原码和补码的描述中正确的是 。
A.补码的表数范围和原码一样
B.所有的负数补码都可以将原马各位取反,末尾加1获得
C.原码有两个机器0
D.用补码的加减法运算器设计简单
CD
B
随堂练习
[计算]56的8位补码是多少?
[计算]-57和-128的8位补码是多少?
[计算]已知x的原码是00101100,求[-x]的补码。
[计算]已知x的补码是10000001,求x的原码。
00111000
11001001,10000000
11010100
11111111
“各位取反,末尾加1”
实数(浮点数)的表示
实数:既有整数部分又有小数部分的数。
任何一个实数总可以表达成一个乘幂和一个纯小数之积,例如:
56.725=102×(0.56725)
-0.0034756=10-2×(-0.34756)
指数部分指出实数中小数点的位置,括号里是一个纯小数。
二进制数的情况完全类同,例如:
1001.011=2100×(0.1001011)
-0.0010101=2-10×(-0.10101)
浮点表示法:计算机内部表示实数的方法。
实数 = 尾数 * 2指数
实数N可表示为:
N = ±S × 2±P (0 < S < 1)
需要表示一个实数时,只需要表示出它的尾数部分和指数部分即可。其中:
尾数是一个纯小数
指数是一个整数,
注意:在这里,指数编码被称作阶码。
实数(浮点数)的表示
16位机器数能够表示的实数的范围:(溢出 离散)
011111 1111111111—— 011111 0111111111(原码)
最小值 最大值
–(1–2-9)× 225 -1 ———(1–2-9)× 225 -1
阶码符号位
尾数符号位
阶码值的编码
尾数值的编码
15 14 10 9 8 0
实数(浮点数)的表示
浮点数的长度可以是32位、64位或更长。一般说来,位数越多,可表示的数的范围越大(阶码),精度越高(尾数)
浮点数(实数)分类:
短浮点数、浮点数、长浮点数、高精度浮点数
6. 1.5 常用的信息编码
——字符(字母、数字和
常用标点符号等)编码
字符、字符集及其码表
文字的基本元素是字母和符号,统称为“字符” (character),它包括:字母、数字、符号等
字符集:一组特定字符的集合
不同的字符集包含的字符数目与内容不同,如:
中文字符集、西文字符集、日文字符集等
字符的编码:
字符集中每个字符都使用二进位(bit) 表示,称为该字符的编码
不同的字符其编码各不相同
字符集中所有字符的编码的一览表,称为该字符集的码表
西文字符的编码——ASCII码
西文是表音文字(拼音文字),它由拉丁字母、数字、标点符号以及一些特殊符号所组成
美国标准信息交换码(American Standard Code for Information Interchange, 简称ASCII码):
ASCII字符集包含96个可打印字符和32个控制字符
采用7个二进位进行编码
计算机中使用1个字节存储1个ASCII 字符
ASCII码的问题
7位代码空间太小
表1-6 ASCII码表
b3b2b1b0
位 b6 b5 b4位 [注:( )内为ASCII码的十进制数)]
000
(00~15) 001
(16~31) 010
(32~47) 011
(48~63) 100
(64~79) 101
(80~95) 110
(96~111) 111
(112~127)
0000 NUL DLE SP 0 @ P ` p
0001 SOH DC1 ! 1 A Q a q
0010 STX DC2 “ 2 B R b r
0011 ETX DC3 # 3 C S c s
0100 EOT DC4 $ 4 D T d t
0101 ENQ NAK % 5 E U e u
0110 ACK SYN & 6 F V f v
0111 BEL ETB ‘ 7 G W g w
1000 BS CAN ( 8 H X h x
1001 HT EM ) 9 I Y i y
1010 LF SUB * : J Z j z
1011 VT ESC + ; K [ k {
1100 EF FS , < L \ l |
1101 CR GS - = M ] m }
1110 S0 RS . > N ^ n ~
1111 S1 US / O _ o Del
随堂练习
在ASCII字符集中,“A”的编码是多少?
字符“B”和字符“b”的存储格式是否相同?
“空格”是否不编码?
“9”>和9的存储格式相同吗?
6. 1.6 汉字编码
输入码
机内码
字形码
汉字如何编码?
汉字系统必须包括以下功能模块:
汉字输入、汉字存储、汉字处理、汉字输出
先对应的汉字编码有:
输入码——用于汉字输入
机内码——用于存储、处理汉字
输出码——用于显示汉字,如宋体、楷体等字形码
1、汉字的输入码
英文字母的输入方式——键盘与字母对应,该方式不适合汉字。
因键盘按键数有限,汉字必须采用编码的方式输入
输入编码方法分类
数字编码——国际码、电报码
字形编码——五笔字形吗、表形码
字音编码——拼音码
形音结合编码——快速码、自然码
2、汉字的机内码
以GB2312-80为基础的机内码,所有基本图形和字符编码为16位(2字节)。
GB2312-80包含:
常用图形、符号682个
一级汉字:按拼音顺序排列,是最常用的汉字
二级汉字:按偏旁部首排列
所有图形字符排在一张94*94的信息交换编码表中——区位表
求汉字机内码的步骤为:区位码→国际码→机内码
一级汉字
(3755个)
二级汉字
(3008个)
(扩充使用)
字母、数字和各种符号
………………
1
94
2
3
位号
…… ……
1
9
16
55
56
87
94
区 号
(按汉语拼音排列)
(按偏旁部首排列)
一、区位码
根据汉字在表中的位置得到其区位码,如:
字符“啊”位于第16行1列,其区位码是16 01,
转换成二进制为:00010000 00000001B,
用十六进制表示为:1001H
拉丁字母、俄文、日文平假名与片假名、希腊字母、汉语拼音等共682个
共6763个汉字和682个符号,每个汉字或符号都有一个确定位置,该位置的区号和位号就是这个汉字的“区位码”
二、国际码
“啊”的国际码=1001H+2020H=3021H

1


第 2字节
00 7E A1 FE
00
81
A1
FE
GB2312
图形符号
汉字代码空间
(6763个汉字)
B0
F7
16位的代码空间共有216 =65536个码位
国际码=区位码+2020H
三、机内码
在国际码的基础上,将每个字节的最高位改为“1”
机内码=国际码+8080H
于是,“啊”的机内码=3021H+8080H=B0A1H
[例1] 已知“大”在区位表中的位置是第20区83位,求“大”在计算机中的存储格式。
Setp1 区位码:20 83→00010100 01010011B → 14 53H
Step2 国际码:1453H+2020H=3473H
Step3 机内码:3473H+8080H=B4F3H
B4F3H即字符“大”在计算机中的存储格式
3、汉字的输出码——字形码
字形码是汉字笔画构成的图形编码
通常用点阵图形来表示
常用的汉字字模的点阵有:16*16、24*24、32*32、48*48
高点阵显示汉字时,能显示汉字的笔锋。
[例2]一个汉字字库,存放8000个汉字,每个汉字的点阵为16*16。问该字库的存储容量是多大?
解:16*16/8*8000≈256KB
0 1 2 3 4 5 6 7 8 9 A B C D E F 编码
0 1 1 0300H
1 1 1 0300H
2 1 1 0300H
3 1 1 1 0304H
4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 FFFEH
5 1 1 0300H
6 1 1 0300H
7 1 1 0300H
8 1 1 0300H
9 1 1 1 0380H
A 1 1 1 0640H
B 1 1 1 0C20H
C 1 1 1 1 1830H
D 1 1 1 1018H
E 1 1 1 1 200EH
F 1 1 1 C004H
存放一个16*16的汉字点阵需要的存储容量:
2*16=32字节
2008-8-26
《大学信息技术教程(第二版)》
*
常用的汉字编码字符集
国家标准GB2312 √
汉字扩充规范 GBK
国家标准GB18030
台湾地区的标准汉字字符集CNS 11643 (BIG 5,俗称“大五码”)
日本工业标准汉字字符集JIS X 0208-90
韩国国家标准汉字字符集KSC 5601-87
小结
掌握ASCII码的编码规则
汉字编码
掌握输入码的作用,至少数量掌握一种输入码
掌握机内码的作用,熟练掌握区位码、国际码、机内码的转换
掌握输出码的作用,能够计算给定汉字字库的容量
好好学习,天天进步!
随堂练习
[填空]存放一个ASCII码字符,需要 字节,存放一个汉字字符需要 字节。ASCII码的最高位恒为 ,汉字机内码的最高位恒为 。
汉字在计算机内部是以 编码形式存放的。
A.表形码 B.区位码 C.内码 D.宋体码
[判断]全世界所有地区使用的汉字内码都是相同的。
1
2
0
1
C

随堂练习
一个字库,包含1000个汉字,采用GB2312字符集,每个汉字点阵为32*32。试计算该字库的存储容量有多少字节?

展开更多......

收起↑

资源预览