第 3章 数字媒体及应用
学习目标与要求,( p74)
回顾,
计算机的一般定义;
我们要研究处理的对象,
数据的表示与应用
3.1 数值信息与数值计算
一, 二进制
1.二,八,十六及各种进制,
进制的 本质?
为什么要用二 (八,十六 )进制?
2.各种进制之间的转换
? (2,8,16,x)进制转换为 10进制
? 10进制转换为 (2,8,16,x)进制
? 2进制与 8进制与 16进制之间转换
做习题,p83( 1)
P83 第 1题
10011B=( )Q
=( )H
=( )D
111101.1101=( )Q
=( )H
=( )D
126.6=( )B
=( )Q
=( )H
2.二进制运算,
数值 运算,
加,减,乘,除 (举例 )
逻辑 运算,
与 (举例 )
或 (举例 )
非 (举例 ) 由 CPU的 ALU完成
Pentium处理器的结构
指令预取
指令译码
控制器
整 数
A LU
1
浮 点
点 运算器
指令 cache
数据 cache
R O M






整 数
A LU 2

线
















奔腾微处理器
ALU
3.计量单位
① bit —— Byte( 基本单位 )
② 容量 单位,B-KB-MB-GB-TB( 1024)
③ 传输速率 单位,
bps-Kbps-Mbps-Gbps-Tbps
( 1000)
④ 字 (word):另一个角度的描述
如何描述数值数据与非数值数据
二, 数值信息表示:(二进制)
原则,便于 实现, 便于 运算, 便于 传输
数值数据,整 数,实 数
1,整数 ( 定点 数 )
定点:小数点 (隐含 )位置 固定
① 不带符号 表示,(以 1B为例 )
00000000 到 11111111
范围, 0 到 2n-1( 为什么 )
下面讨论 ② 带符号 表示 ( 难 )
unsigned
关键,符号数字化 (最左边一位,0为 正 ; 1为 负 )
原码,
范围? -(2n-1-1) +(2n-1-1)
注意,0有两种形式表示( +0与 -0)
反码,正数:同原码,
负数的反码形式:符号位不变,其余求反加 1,
补码, 正数:同原码; 负数:取反加 1
注意,0唯一表示;负数方向多 1,形式为 10000000
范围, -(2n-1) +(2n-1-1)
补码的作用,减变加(连同符号位一起运算)
②带符号表示
原,反,补码各自的特点,功能及其关系
特殊的 BCD码
?这是一种 规定 ;
?用四位二进制 表示 一位十进制 ;
?例,( -43) =1 0100 0011
p29表 3-2,
真实的 Pentium数据表示
习题 p83 ( 2)
特殊的移码
1,P e n ti u m 处理器的 4 种整数类型
整数类型 数值范围 精度 格式
16 位整

- 3 2 7 6 8 ~ 3 2 7 6 7 二进制 16 位 16 个二进位,补码表示
短整数 - 2
31
~ 2
31
- 1 二进制 32 位 32 个二进位,补码表示
长整数 - 2
63
~ 2
63
- 1 二进制 64 位 64 个二进位,补码表示
BCD 整

- 10
18
+1 ~ 10
18
- 1 十进制 18 位 80 个二进位,其中最左面 l 个字节的最高位是符号
位,余 7 位无效;另外 72 位是 18 位 BCD 码,原码
表示
2,实数 (浮点数) 表示
实数的组成,
尾数 ( 定点小数 /纯小数 ) +阶码 ( 用移码 )
( 小数点浮动的 ) 举例
IEEE(美国电气与电子工程师协会 )制定标准:
IEEE754( 32bit)
尾 数 (b1b2b3…b 23)
符号位 s
8位 23位
阶码 E
三部分,数符,阶码 E,尾数
移码,E-127( 便于对阶)
尾数,定点小数原码表示。 默认, 1.xxx
见表,3-3 ( p81)( 简单介绍)
做习题 p83(4)
根据浮点数的 长度,
单 精度 32b;双 精度 64b
Pentium,单 32b,双 64b,扩充 80b
P4用到 128b; P81表 3-3是以 32b为例 (debug)
思考,
1.浮点数的长度越长:范围? 精度? 开销?
2.定点数与浮点数的区别?
3.同样长度的定点数与浮点数, 范围? 精度?
浮点数类型
对数值数据的应用?
h
回顾
? 数值与非数值数据在计算机的表示 (3个原则 )
? 数值
? 整数,不带符号数 ;带符号数 (原码,反码,补码 )
? 浮点数 (尾数 +阶码 ) IEEE754与 Pentium规定
? 例,(389.625)d=(110000101.101)b
=1.10000101101× 28
尾数,(10000101101) b =(42D) h;
阶码? 公式 8=e-127;e=8+127
阶码 =00001000+01111111=(10000111) b=(87)h
对数值数据的应用?
三,数值计算
1,数学建模 ——算法 ——编程 ——运行 ——结果,(举例 )
2,开发工具 ( 二次开发 ),
FORTRAN语言; C系列语言;
VB; V-For
MATLIB
专 业 计 算 软 件
( 水资源应用计算程序包 ;SAP5; PKPM)
可视化计算技术的应用
非数值数据?(文字符号、声音、图形 /像)
二进制!关键:如何全球统一编码?兼容旧码?
文本 按一定格式组织起来的、具有相关性的字符流。
字符,是文本的细胞,计算机中用二进制表示。
字符集与其编码,计算机信息处理的基础。
文本展现
(阅读器)
文本处理
(文本处理软件) 文本生成
其他媒

电子文

文本编辑
(编辑器) 格式化的电子 文本
网络
传输
计算机对文本的处理流程图
3.2 文本与文本处理
以下是一个没有安装 GBK和 GB18030系统的例子
缺字
一、编码字符集
字符 (character) 记录语言的符号,它适用于一种或多种书面语言。
编码字符集 (coded character set) 按某种规则编码的字符的有序集
合。每个编码字符集有两个最重要的属性,
字汇 (repertoire),编码字符集中有哪些字符
编码规则,如何确定每个字符的代码
码长, 字符代码的长度。它决定了代码空间的大小
定长 码,7位,8位,双字节,4字节
可变长 码:单-双- 4字节码
1、稳定的西文字符编码
? ASCII编码,P84
用 7b表示,存放 1B; 128(96+32)字符
‘ A’=41H;’a’=61H;’0’=30H
字母排序
? ISO2022标准,
用 8b表示;
ASCII+扩展部分( 128--255)
? 广泛使用,各地计算机公司支持
2、多变的汉字编码 (全球统一编码 )
⑴ GB2312—80 共 6763个汉字 +682其他字符
① 3部分组成,字母等符号 682个
一级汉字 (按照拼音排序 ) 3755个
二级汉字 (按照偏旁部首 ) 3008个
② 字符集是个二维平面 (94× 94)
计算机用 2个字节 表示为 区位码 ( 10进制)
例“大” (20)d (83)d 问题,通信?
③ ISO2022规定,国标交换码 =区位码 +32/(20)h
例, 大, 的交换码,(34 73)h 问题,与 ASCII?
④ 方法之一,机内码 =交换码 +80h,大,,(B4 F3)h
GB2312字符集及其码位分布
字母、数字和各种符号
字母、数字和各种符号
字母、数字和各种符号
字母、数字和各种符号
字母、数字和各种符号
一级汉字
一级汉字
一级汉字
一级汉字
( 3755 个)
个)
( 37 55 个)
二级汉字
二级汉字
( 3008 个)
个)
(扩充使用)
① ② ③
①②
③¨¨¨
¨¨¨¨
¨¨
① ② ③
①②
位号
位码
位号
位码
位号

















16
1
6
1
6
55
5
5
56
5
6
94
87
94
9
4
9
4
9
4
GB2312 字符集及区位码

位号,83
区号,20
首字节
尾字节
7E
A1
FE
81
FE
A1
GB23 12 汉字
代码空间
(6763 个汉字 )
G B 2312
图形符号
B0
F7
00
00
双字节代码空间中 GB2312
汉字 内码 的码位 分布
⑵ GBK汉字内码
① 问题的提出,GB2312--80的不足
② 我国 1995年发布《汉字内码扩展规范,
③ 共收入 21003 个汉字和 883图形符号
④ 双字节编码,第 1字节的最高位必为, 1”,
第 2字节不一定是, 1” ;
⑤ 简体和繁体在同一字符集中;包含了 CJK汉字
⑥ 与 GB2312-80保持向下兼容;
GBK的应用,P86
GBK字符集及其码位分布
首字节
尾字节
0x7E
0xA1
0xFE
0x81
0xFE
GB 2312 汉字
G B 2312
图形符号
0x B0
0xA 0
0xA A
GBK/ 2
G BK/ 2
GBK/ 1
G BK/ 1
GBK/ 5
G BK/ 5
0x F7
0x 40
GB K/4
G BK/4
GB K/3
G BK/3
CJK 汉字
增补汉字
⑶ UCS/Unicode字符集与编码
① 问题的提出:全世界 6800种语言文字,,
② ISO制定,ISO/IEC10646标准
通用 多 8位 编码字符集,
Universal Multiple-Octet Coded Character Set
③ 工业标准 Unicode(统一码 /联合码 )
④ 历程,UCS--4 码长 4B,编码空间大,浪费
UCS--2 码长 2B,含各国常用文字 (如 CJK)
如何保持与 ASCII兼容?采用 UTF--8可变长码,P88
UCS/Unicode提供统一编码方案 ;采用 UTF--8实现
U C S /U n ic od e 编码 U T F -8 编码
范围 转换前的代码 转换后的代码
00 0 0 ~ 0 07F
h ex
00 0 00 0 00
0x x xx x xx
0x x xx x xx
00 8 0 ~ 0 7F F
h ex
00 0 00 x xx
xx y yy y yy
1 10 x xx x x 1 0 yy y yyy
08 0 0 ~ F F F F
h ex
xx x xy y yy
yy zz zz z z
1 1 10 x xx x 10 y yy y yy
10 zz zz z z
UCS-2编码到 UTF-8编码的转换规则(部分)
UTF:UCS Transformation Form-8
问题,
UCS/Unicode与 GB2312,GBK不兼容
GB18030-2000的编码
?采用 单 字节,双 字节和 四 字节三种方式对字
符编码。
?单 字节部分使用 0x00至 0x80码位。
?双 字节 表示一个字符,其 首 字节码位从 0x81至
0xFE,尾 字节码位分别是 0x40至 0x7E和
0x80至 0xFE。
?四 字节 部分采用 GB 11383未采用的 0x30到
0x39作为对双字节编码扩充的后缀,这样扩
充的四字节编码,其范围为 0x81308130到
0xFE39FE39。
表 2.1 G B 18030 - 2000 码位范围的分配
字节数 码位空间 码位数
单字节 0x 00~ 0x 80 129
第 1 字节 第 2 字节
双字节
0x 81 - 0x FE 0x 40 - 0x 7 E,0x 80 - 0x FE
23 940
第 1 字节 第 2 字节 第 3 字节 第 4 字节
四字节
0x 81 - 0x FE 0x 30 - 0x 39 0x 81 - 0x FE 0x 30 - 0x 39
1 587 600
GB18030 双字节 汉字的代码空间




第二字节
GB18030 四字节 汉字的代码空间




GBK和 GB18030的应用
条件,
输入
显示与打印
处理:排序、检索、分词 …,,
举例,
扩充的汉字, 朱 鎔 基,冃 冄 円 冇 冊 冋 冎 冏 冐
冑 冓 冔 冘 冚 冝 冞
繁 體 字:南京大 學計 算 機係,今天天 氣 很好。
汉字编码小结 1
汉字是记录汉语(国语,华语)的文字,属于表意文字,
它用符号直接表达词或词素。
汉字的 特点,
数量大(我国汉字自 古至今累计已超过 7万字,国家语委颁布
的, 现代汉语通用字表, 包含 7000汉字)
多个国家和地区使用:港台地区,日、韩、朝、新、马等
字形复杂,同音字多,异体字多。
我国汉字编码的国家 标准,
GB2312-80( 6763个常用简体汉字和 682个非汉字字符 )
GBK-95 ( 20902个 CJK汉字和 ······符号)
GB18030-2000
汉字编码 小结 2
00 FF
00
FF 27484汉字
GB2312-80
GB18030-2000
GBK
CJK汉字字汇
兼 容
兼容
UCS/Unicode
ISO 646
ISO 2022
兼 容
兼容
映射
00 FF
00
FF
20902汉

00 FF
00
FF
6763汉