1、上次作业讲评画一个4位移位电路的完整逻辑图,该电路具有直送、循环左移1位、循环右移1位的功能,由控制信号 S0、 S1进行选择。,补充题一 根据状态条件C、Z、V、S写出表示以下数据比较结果状态条件的表达式: 1、无符号数大于 2、无符号数小于或等于 3、带符号数小于 4、带符号数大于或等于习题P86 1、2、3、5、10、11(给图)思考题P86(不用交) 4、6、7、8 、12(选),注意:1、邮件的主题上的学号与姓名章号,教学内容,教学大纲规定: 讲解单台计算机的完 整 硬件系统 的基本组成原理与内部运行机制T- 单台:非多机系统, 非多处理机结构 基本:不一定是最高性能,最合理的组成,
2、 而是最基础的必要的组成部分 完整:计算机整机全部的硬件功能部件,输入设备,输出设备,入出接口和总线,外存设备,主存储器,高速缓存,控 制 器,运 算 器,第四单元,第五单元,第三单元,第二单元,计算机硬件系统,运 算 器,计算机硬件系统,运算器部件是计算机中进行数据加工的部件,其主要功能包括:1. 执行数值数据的算术加减乘除等运算, 执行逻辑数据的与或非等逻辑运算, 由一个被称为 ALU 的线路完成。 2. 暂时存放参加运算的数据和中间结果, 由多个通用寄存器来承担。 3. 运算器通常也是数据传输的通路 。,控 制 器,运 算 器,计算机硬件系统,控制器是计算机中控制执行指令的部件:一. 正
3、确执行每条指令 1. 首先是取来一条指令, 2. 接着分析这条指令, 3. 再按指令格式和功能执行这条指令二. 保证指令按规定序列 自动 连续 地 执行。三. 对各种异常情况和请求及时响应和处理。说到底,控制器要向计算机各功能部件提供 每一时刻协同运行所需要的控制信号,外存设备,主存储器,高速缓存,控 制 器,运 算 器,计算机硬件系统,由高速缓冲存储器,主存储器,外存储器所组成的多级(层)存储器系统,是计算机中用于存储程序和数据的子系统。 这三级存储器所用的存储介质的工作原理和特性各不相同。将作为三个部分分别讲解。,输入设备是向计算机中送入程序和数据的有一定独立功能的设备,通过 接口 和 总
4、线与计算机主机连通,用于人机交互联系,如计算机键盘和鼠标等。,输入设备,外存设备,主存储器,高速缓存,控 制 器,运 算 器,计算机硬件系统,输入设备,输出设备,外存设备,主存储器,高速缓存,控 制 器,运 算 器,计算机硬件系统,输出设备是计算机中用于送出计算机内部信息的设备,例如打印机, 显示器等。,输入设备,输出设备,外存设备,主存储器,高速缓存,控 制 器,运 算 器,计算机硬件系统,这些部件和设备通过总线和接口连接在一起, 构成计算机整机系统 ,协同运行.,输入设备,输出设备,入出接口和总线,外存设备,主存储器,高速缓存,控 制 器,运 算 器,第四单元,第五单元,第三单元,第二单元
5、,计算机硬件系统,第二单元:第 3、4 章,一. 数据编码与表示(基本)二. 数据的算术运算(基本) 定点运算器的功能与组成(重点) 浮点运算与浮点运算器五. 检错纠错编码(难点),一. 数据编码与表示 1. 信息编码二要素2. 基二码应用实例:数据表示逻辑数据表示字符数据表示ASCII EBCDIC字符串 汉字检错纠错码 奇偶校验码 海明校验码 循环冗余校验码3. 进位记数法与数制转换定点小数 整数 浮点数二十进制数(BCD编码),1. 数字化编码二要素,数值 文字 符号 语音 图形 图像 等统称数据,在计算机内部,都必须用数字化编码的形式被 存储 加工 和 传送 数字化编码二要素: 1 .
6、少量简单的基本符号 2. 一定的组合规则 用以表示大量复杂多样的信息,2. 基二码(二进制码),只使用两个基本点符号:符号个数最少,物理上容易实现与二值逻辑的 真假 两个值对应简单用二进制码表示数值数据运算规则简单,基二码应用实例:数据表示,逻辑型数据字符型数据ASCII 码 EBCDIC 码字符串 汉字检错纠错码奇偶校验海明校验 循环冗余校验数值型数据定点小数 整数 浮点数 二十进制数(BCD码),逻辑型数据,逻辑型数据只有两个值:真 和 假,正好可以用二进制码的两个符号分别表示,例如 1 表示 真 则 0 表示 假不必使用另外的编码规则。对逻辑型数据可以执行逻辑的 与 或 非等基本逻辑运算
7、。其规则如下:,逻辑型数据基本运算规则,X Y X与Y X或Y X的非 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0,字符型数据的表示,字符作为人机联系的媒介,是最重要的数据类型之一,当前的西文字符集由 128 个符号组成,通常用 8 位二进制编码,即用一个字节来表示每一个符号,当前通用的两个标准字符集是:ASCII 码: 即 American Standard Code for Information InterchangeEBCDIC码:即 Extended Binary Coded Decimal Interchage Code ASCII码字符集具体编
8、码如下表所示:,P60,ASCII字符编码集,b6 b5 b4 000 001 010 011 100 101 110 111 b3 b2 b1 b0 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 K k 1100 FF FS , N n 1111 SI US / ? O _ o,P60,字符串的表示与存储,字符串是指连
9、续的一串字符,它们占据主存中连续的多个字节,每个字节存放一个字符,对一个主存字的多个字节,有按从低位到高位字节次序存放的,也有按从高位到低位字节次序存放的。表示字符串数据要给出串存放的主存起始地址和串的长度。例如:IF AB THEN READ(C)就可以有如下不同的存放方式: I F A A F I B T T B 假定每个字 H E N N E H 由 4 个字节 R E A D D A E R 组成 ( C ) ) C (,汉字的表示,通常用两个字节表示一个汉字为了与西文字符编码相区别(西文的ASCII码的最高一位编码值为0),表示一个汉字时,把两个字节的最高一位的编码值设定为1,则该编
10、码集的最多编码数量为128*128。这种编码方案与西文传送中的把ASCII码的最高一位用作奇偶校验位有矛盾。,汉字信息的数字化,国标码:国家标准信息交换用汉字编码。国标码采用双字节的编码方式,用两个7位二进制编码表示一个汉字。,国标码收入6763个汉字,682个西文字符、图符,构成9494的矩阵。(每一行为“区”,每一列为“位”:国标区位码),机内码,“啊”:区位码“1601” 国标码“3021H”,00110000 00100001,10110000 10100001,“啊”:机内码“B0A1H”,汉字信息的数字化,外码,输入程序,内码,字库,字符,显示输出打印输出,输入,输出,汉字输入码(
11、外码):将汉字通过键盘输入到计算机而采用的编码。拼音:全拼、双拼字型:五笔字型数字:区位码、电报码,汉字机内码:在汉字信息处理中为汉字的存储、运算与传输所编制的代码,内码与字符一一对应,汉字的输出(字库),72,128,288,各种汉字编码之间的关系,数字编码,字音编码,字形编码,内码,字形码,国标码,显示汉字,打印汉字,进位记数法与进制转换,进位记数法,N,=,i=m-1,D,i,*,i,r,-k,N 代表一个数值,r 是这个数制的基(Radix),i表示这些符号排列的位号,D,i,是位号为i的位上的一个符号,r,i,是位号为i的位上的一个 1 代表的值,i,r,D,i,*,是第i位的所代表
12、的实际值,表示m+k位的值求累加和,p49,十进制转二进制,整数部分除2取余 小数部分乘2取整,2,1 1,2,2,2,5,2,1,0,1,1,0,1,0.625 * 2,1,0.25 * 2,0,0.5 * 2,1,0.0,除尽为止 求得位数满足要求为止,低,高,高,低,从二进制数求其十进制的值,逐位码权累加求和,二到八或十六进制转换,二到八 从小数点向左右三位一分组(10 011 100 . 01)2 = ( 234 . 2 )8 010 二到十六 从小数点向左右四位一分组(1001 1100 . 01)2 = ( 9C . 4 )16 0100 说明:整数部分不足位数对转换无影响, 小数
13、部分不足位数要补零凑足, 否则出错。,二 十进制编码(BCD编码),用四位二进制表示一位十进制, 16个编码状态选用其中的10个编码有多种方案,例如: 8421码,余 3 码,循环码又可区分为:有权码:每位上的 1 代表确定的值无权码:无法确定每位上的 1 代表的值,0 0000 0011 0000 00001 0001 0100 0001 01112 0010 0101 0011 01103 0011 0110 0010 01014 0100 0111 0110 01005 0101 1000 1110 10116 0110 1001 1010 10107 0111 1010 1000 10
14、018 1000 1011 1100 10009 1001 1100 0100 1111,有权码 与 无权码,8421,余3码,循环码,84-2-1,P66-67,如何判定码权,0 00001 0111 4 +(-2)+(-1)2 0110 4 +(-2) 验证每个码的值3 0101 4 +(-1)4 0100 4 从一编码求码权5 1011 8 +(-2)+(-1)6 1010 -2 结论7 1001 -1 证明此编码系统为有权码8 1000 89 1111 8 + 4 +(-2)+(-1),如何判定码权,0 00001 0111 4 +(-2)+(-1)2 0110 4 +(-2) 验证每
15、个码的值3 0101 4 +(-1)4 0100 4 从一编码求码权5 1011 8 +(-2)+(-1)6 1010 -2 结论7 1001 -1 证明此编码系统为有权码8 1000 89 1111 8 + 4 +(-2)+(-1),如何判定码权,0 00001 0111 4 +(-2)+(-1)2 0110 4 +(-2) 验证每个码的值3 0101 4 +(-1)4 0100 4 从一编码求码权5 1011 8 +(-2)+(-1)6 1010 -2 结论7 1001 -1 证明此编码系统为有权码8 1000 89 1111 8 + 4 +(-2)+(-1),如何判定码权,0 0011
16、2+1 = 0 验证各码的值1 0100 1 从一编码求码权2 0101 13 0110 24 01115 1000 6 1001 结论 7 1010 证明此编码系统为无权码 8 1011 9 1100,数值数据在计算机内的格式,定点小数: N = N N N .N,s,-1,-n,-2,整 数 : N = N N N . N N,0,1,s,n,n-1,浮点数: N = M E E .E E M M .M,s,s,m-1,1,0,-1,-2,-n,符号位 阶码位 尾数数码位 总位数,短浮点数: 1 8 23 32,长浮点数: 1 11 52 64,临时浮点数: 1 15 64 80,IEEE
17、 标准: 阶码用移码,尾数用原码,基为 2,P63,定点小数表示: Ns N1 N2 Nn, X = X = X =,(纯小数)原码,反码,补码的定义,P68,定点小数表示: Ns N1 N2 Nn,原 码 定义: X 原 =实例:X1 = 0.10110 -0.10110 0.0000 X 原 = 010110 110110 00000 10000 结论:原码为符号位加数的绝对值,0正1负 原码零有两个编码,+0和 -0编码不同 原码难以用于加减运算,但乘除方便,X,1 - X,-1 X 0,0 X 1,定点小数表示: Ns N1 N2 Nn,模 2 补码 定义: X 补 =实例:X1 =
18、0.10110 -0.10110 0.0000 X 补 = 010110 101010 00000结论:补码最高一位是符号位,0正 1 负 补码表示为 2*符号位 + 数的真值 补码零只有一个编码,故能表示 -1 补码能很好地用于加减(乘除)运算,X,2 + X,-1 X 0 MOD 2,0 X 1,P69书中5,定点小数表示: Ns N1 N2 Nn,反 码定义: X 反 =实例:X1 = 0.10110 -0.10110 0.0000 X 反 = 010110 101001 00000 11111 结论:负数为符号位跟数每一位的反,0正 1 负 反码零有二个编码,分+0 和 -0 反码难以
19、用于加减运算,X,(2-2-n) + X,-1 X 0 MOD (2-2-n),0 X = k + r +1,检错纠错能力,若能发现并改正一位错, 也能发现两位错,则应增加一位校验位:设r=r+1,则 , r=r-1代入上式 2r-1 = k + r,P57,在k+ r位中,若能发现并改正一位错, 也能发现两位错,则: 2r-1 = k + r,检错纠错能力,P57表3-2,根据上式可列出下面校验与数据位数对应的关系表,海明码的实现,编码方案,已知k位,列号 6 5 3 0 4 2 1,未知r位,行号 4 3 2 1,如何填此表最上行(P4行)都填“1” Pi行 在Pi列填为“1”,其余填“0
20、” Di列 使I列的值为3、5、6,例如: 设 k =3, 查表则r =4,P58表3-3,对Pi进行编码(方案),行号 4 3 2 1,列号 6 5 3 0 4 2 1,已知k位,未知r位,则传送的码字即为 D3 D2 D1 P4 P3 P2 P1,总偶校,1次偶校,海明码的实现,译码方案,译码方案,传送的码字为 D3 D2 D1 P4 P3 P2 P1,行号 4 3 2 1,例如: 设 k =3, 查表则r =4,译码方案,传送的码字为 D3 D2 D1 P4 P3 P2 P1,结论:无错: S4 S3 S2 S1全为 0,即Pi与Di组合都与传送前匹配。一位错: S4 S3 S2 S1对
21、应的位错,取反纠正。校验位错可不理睬 二位错:S4 =0,S3 S2 S1 不全是0。(S4反映奇、偶错),知道2位错,D2D1要纠正否?,传送的码字为 D3 D2 D1 P4 P3 P2 P1,检错分析: 如果出错:S4=0或1区分2或1位错。(S4反映偶、奇位错) D2D1同时错,或D3错,S3S2S1=110。所以上表称 “出错模式表”,行号代表 S 的下标,出错模式表,P3P2同时错呢?,三位错或四位错不研究,行号 4 3 2 1,不知1位还是2位错能纠正?,P1 = D2 + D1P2 = D3 + D1P3 = D3 + D2,海明码的实现方案 例如: k =3, r =4,D3
22、D2 D1 P4 P3 P2 P1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1,P4 = P3 + P2 + P1 + D3 + D2 + D1,S1 = P1 + D2 + D1S2 = P2 + D3 + D1S3 = P3 + D3 + D2S4 = P4 + P3 + P2 + P1 + D3 + D2 + D1,编码方案,译码方案,对Pi进行编码方案,行号 4 3 2 1,列号 6 5 3 0 4 2 1,已知k位,未知r位,则传送的码字即为 D3 D2 D1 P4 P3 P2 P1,总偶校,1次偶校,课堂练习:对应8个数据位01010111的海明码字?如果传送过程中,最低数据位1错变为0,则译码后,S4S3S2S1=?S5=?,循环冗余码(CRC) Cyclical Redundancy Check,用于多位串行数据传送中的检错纠错处理,在 k 位数据位串行移位输出的过程中,用带有异或门控制的移位寄存器形成 r 个校验位的值,跟随在数据位之后传 送走。在接收端再对 k+r 位的码字进行合法与出错检查,若可能则自动改错。,循环冗余码的实现的数学原理,10111 1000000 10111 01110 00000 11100 10111 1011,