第 2 章 数据表示及逻辑基础
Overview 数制 数、码 编码与文本 多媒体数据 逻辑基础
概述 计算就需要数 计算机中的数的表示是一个基础性的问题 表示各种现实世界对象的 “ 数据 ” , So 数的表示也延伸到了数据的表示 不同应用需要的数据类型有不同 计算 表示实体对象 统一的数据表示方法 基本形态是二进制
2.2 数制 Number System “ 计数(或记数)体制 ” 多位数中每一位的构成方法以及实现从低位 到高位的进位规则,也叫做进制 数学家们研究数制的规则和规律 计算机科学中 将数制规则和规律通过电路实现 常用进制 二、十、八、十六
数制 常用进制 R 进制 R 个数码,数码从 0 到 R-1 数:每位数码和该位的权系数的乘积 权系数也叫做幂次或叫做权重( Power Weight ) 逢 R 进 1 计数规则 十进制 Decimal System 0 ~ 9 ,逢十进一
二进制 Binary System 位 ( 比特, bit )是计算机处理的最小单位 0 和 1 两个数码,被组合成各种序列以适应计算机的运算 和处理的数据类型 选择二进制的一个最简单也是最实际的理由是它容易被 物理器件实现 二进制起源于中国 —— 八卦 多项式表示一个二进制数: = 1×2 7 +0×2 6 +1×2 5 +0×2 4 +1×2 3 +1×2 2 +0×2 1 +1×2 0
八进制 and 十六进制 Octal System 八个数码: 0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 8 = 2 3 一位八进制对应于三位二进制 Hexadecimal System 16 个数码: 0 9 , A 、 B 、 C 、 D 、 E 、 F 字节( Byte , 8 个二进制位) = 两位十六进制 16 = 2 4 : 4 位二进制和 1 位十六进制对应
二进制的基本运算 二进制加法 = = = = 10Here Carry 二进制乘法 0 0 = 0 0 1 = 0 1 0 = 0 1 1 = 1
二进制和十进制转换 1 .二进制转换为十进制 被转换的二进制数按幂次展开,然后相加 = 1 2 -2 = = 2. 十进制转换为二进制 整数 小数
十进制整数转换为二进制数 =
十进制小数转换为二进制
二进制与八进制转换 二进制与八进制存在对应的幂次关系 Binary Octol =
二进制、十六进数转换 16=2 4 =0B See Table 2-1
2.4 计算机中的数 正负:符号位, 0 表示正数, 1 表示负数 真值 机器数 运算的数定义: 原码( Original Code ) 反码( One’s Complement ) 补码( Two’s Complement ) 不同的运算使用不同的码和不同的运算方法 设计运算器
原码 原码即上述的机器数 —— n 位二进制数,最高位被设置为符号位,其后 的 n-1 位表示真值。 原码的特点 简单 直观 用原码可以比较方便地进行乘法运算: 尾数相乘 符号位简单相加法就可以得到乘积
反码 反码的定义是:一个正数的反码就是它的 机器数,负数的反码其最高位(符号位) 为 1 ,其余各位按位求反 例如, 反码为 反码为 反码和原数相加:结果为所有位都是 1 对 1 互补 专业术语: One’s Complement
补码 补码的定义是:正数的补码等于它的原码, 负数的补码等于它的反码加 1 (最低位加 1 ,进位不改变符号位) 例如, 的补码为 的补码为 补码一个有意思的特性是:补码的补码将 还原为原码 专业术语:对 2 求补 (Two’s Complement) 补码用于减法运算
定点数和浮点数 数的表示 —— 两种格式:定点数和浮点数 计算机中保存数 二进制 固定长度 定点数: 16 位或 32 位 小数点固定在某一个位置 定点纯小数、定点纯整数 浮点数 —— 小数点位置是浮动的
定点数 定点纯小数格式 定点纯整数格式
浮点数 思想来源于科学计数法(指数) 容许的数值范围大,处理硬件复杂 浮点数分阶码和尾数 阶码:小数点位置 —— 带符号的整数 —— 类 似于数学中数的指数部分 尾数表示数的有效数值:纯整数或纯小数
2.5 编码和文本 数还有另外一种功用:码( Code ) 编码的目的是为了便于标记特定的对象 设计编码时需要按照一定的规则 ——“ 码 制( Code System ) ” 重要概念 位模式 常用编码: ASCII 、汉字编码、多媒体数据
位模式 用于计算的数:用二进制位的多位组合表示定 点数、浮点数 更多的数据类型,就需要有更多的二进制位的 组合规则 —— 位模式 bit pattern 用 0 和 1 组成的二进制位序列及其规则 是一种数据表示方法 要由计算机程序去理解它们 位模式要求: 用户、程序设计者按某种规则形成、存储和处理数据 位模式的二进制位序列长度取决于被编码对象的数量
文本和文档 文本( Text ) —— 编码来表示 文本中的每一个符号包括字母、标点,都以 一个唯一的二进制位序列表示 在计算机中,文本就是位模式的二进制数据 长串 基础的文本编码就是 ASCII American Standard Code for Information Interchange 基于 English 文本编码是计算机进行数据交换的基础
ASCII 码 ANSI 制定,后为 ISO 646 适用于英文,两种形式: 7 位码和 8 位码 7 位二进制 ASCII 码 单字节字符编码方案,基本的文本数据 8 位码是扩展 ASCII 码, See Appendix A
Unicode 编码 通用多文种字符集 表示几乎世界上所有书写语言的字符编码 标准 —— 统一码、单一码、万国码 可支持超过百万个字符的编码 Unicode 编码 国际标准 ISO ISO 采用的是 32 位模式 用于世界范围各种语言文字的文本形式的字 符集,也收集了汉字
汉字编码 汉字编码的目的是为了计算机能够处理、显示、 打印、交换汉字字符 国家汉字编码标准 GB 简化汉字 6763 个, 7445 个字符 港澳台地区使用繁体汉字 BIG5 码 1995 年的 GBK 扩展汉字编码标准 GB 的扩展 收录了 2.1 万多个汉字 GBK 支持 ISO 中的全部中、日、韩汉字 2001 年 GB18030——GBK 的升级 160 万码位,目前汉字约为 2.6 万个
2.6 多媒体数据 多媒体 文本, 图形、音频、视频等 多种数据表现形式,并使之在逻辑上建立联系 今天 计算机和网络都支持多媒体数据处理 相比文本 ……
图形和图像 图形( Graphics ) —— 几何线条、几何符 号等形式表示物体的轮廓 在数据表达上 图形和图像也被认为是同类 例如, Windows 的 “ 画笔 ” 程序,既可以画几何 图形,也可以对图形着色使之成为图像 ( Picture , Image ) 两种技术:位图和矢量图
位图技术 微软公司提出的 又称光栅图( Raster Graphics ) 使用像素( Pixel )阵列,每一个像素是一个点 ( Dot ),点数据的大小取决于分辨率 位模式有 1 、 4 、 8 、 16 、 24 及 32 位等 灰度图像 —— 每一个像素需要更多的二进制位 彩色图形、图像 ——RGB
矢量图技术 任何图像、图形 可以分解为曲线和直线的组合 直线和曲线度都可以使用数学公式表示 直线、曲线公式的组合作为图形数据存储起 来, 需要显示或者打印图形图像数据时 画图的公式被重新执行 并根据给定的大小画出(重现)图形图像 矢量图看上去更加平滑,不会产生纹波误差
音频 音频( Audio )包含了 声音( Voice )和 音乐( Music ) 计算机音频就是研究在计算机中表示和处 理声音与音乐数据,目前没有 “ 数字音频 标准 ”
视频 视频( Video )是图像的动态过程 一幅幅( Frame )图像数据连续播放,就 成为了动态图像 也是一种位模式数据 压缩处理后存储,播放时需要解压 MPEG 制定的一系列视频编码和压缩标准 音频 / 视频的 MPEG-1 到 MPEG-4 MPEG 是 ISO 指定的标准研究组织,它的最新 工作是 MPEG-21
2.7 逻辑运算和门电路 用数学的方法研究关于推理、证明等问题的学科 数理逻辑,也叫做符号逻辑 英国数学家布尔 —— 建立了布尔代数 ( 逻辑代数 )—— 计 算机重要的科学基础 逻辑关系可以被解释为因果关系 “ 因 ” 是条件 条件之间的关系用逻辑连接词进行组合 根据不同的条件得到 “ 结果 ” 逻辑运算对应的实现电路,叫做门电路 基本逻辑 ( 运算 ) 关系 与( AND ),或( OR ),非( NOT )
逻辑关系 与 只有决定结果的条件全 部满足,结果才成立, 这种逻辑关系叫做逻辑 与 表示 A AND B A ● B AB 把变量和逻辑关系的取 值列表,就得出了真值 表( True Table ) ABAB
逻辑或 决定结果的条件中只 要任何一个满足,结 果就成立。这种逻辑 关系叫做逻辑或 表示 A OR B A+B 表 2-3 逻辑或真值表 ABA+B
逻辑非 。最简单的描述 就是结果对条件 的 “ 否定 ” 表示 Not A 逻辑非的真值表 10 01A A
逻辑代数 通过代数学的方法研究逻辑关系,通过变换、 简化或组合等方法进行逻辑设计 逻辑表达式 A + A·B A + AB 逻辑函数 F = f ( A , B , C , … ) AB=A+B 反演定律 A+BC = (A+B)(A+C) 分配律 A+AB=A+B 吸收律
门电路 实现基本逻辑关系的电 路是逻辑电路中的单元 电路 ——Gate 基本的门电路有: 与门 或门 非门 异或门 门电路的基本特点
基本门电路 用基本门电路可以组合成多种复合门电路 ( a )与门 F=AB ( b )或门 F = A+B ( c )非门 F =
与非门ABF
ABF 或非门
异或门
2.8 逻辑设计基础 逻辑设计 —— 根据问题,由真值表得到逻辑表达式 根据逻辑定律进行必要的化简、变换,设计 出最优的逻辑表达式 用逻辑电路实现 逻辑分析 与设计相反 由电路得到功能
设计加法器 用逻辑电路实现加 法运算的电路叫做 加法器( Adder ) 设 A 、 B 分别为一位 二进制数 S 为 A 与 B 之和, C 为 A 加 B 产生的进位 加法的真值表 表达式 AB S C
半加器 / 全加器 半加器 只考虑加数和被加数之间的加法运算,并产生了 向高位的进位 —— 没有考虑可能来自低位的进位, 所以它并没有完成一位二进制的全部运算,半加 器的意思是它只完成了一半的加法运算 全加器 不但要考虑本位产生的进位,还要考虑来自 低位的进位
全加器全加器 输入输出 C i-1 AiAiAiAi BiBiBiBi SiSiSiSi CiCiCiCi
全加器电路
四位加法器电路逻辑示意图
存储单元电路 图 2-14 门电路组成存储单元原理示意图
集成电路 IC IC 按电路内门电路的数目来划分其规模 小规模 IC ( SSIC , Small Scale IC )大约有 10 个门 电路。 超过 100 个门电路 —— 中规模集成电路( MSIC , Middle Scale IC ) 大规模 IC ( LSIC , Large Scale IC )集成的门电路 要超过 1000 个以上 超大规模 IC ( VLSIC , Very Large Scale IC ) 超大规模集成电路的集成度已经超过了千万