计算机系统组成与基本⼯作原理
计算机系统知识
关键词:计算机的组成、基本⼯作原理、体系结构、存储系统、计算机安全、可靠性与系统性能评测。
重点:
(1)计算机的组成:计算机的发展以及硬件、软件组成。
(2)计算机基本⼯作原理:数制,汉字编码和CPU结构⼯作流程
(3)计算机体系结构:体系结构的发展和分类、存储系统、指令系统、输⼊输出技术、流⽔线、总线、并⾏处理。
(4)计算机系统的可靠性、性能评估
1计算机系统组成与基本⼯作原理
1.1 计算机系统组成
计算机系统分为硬件和软件系统。计算机硬件是计算机系统中的物质基础,是摸得见看得着的。计算机软件是程序、数据、相关⽂档的集合,包括系统软件和应⽤软件。计算机系统的组成如下:
1.2计算机硬件系统
计算机硬件5⼤组成部分:运算器、控制器、存储器、输⼊设备和输出设备。
计算机硬件的电线结构包括:单总线结构、双总线结构和采⽤通道的⼤型系统结构。
单总线结构:使⽤⼀组系统总线将计算机的各个部件连接起来,各部件通过总线交换信息。
⼀般⽤在⼩型或者微型计算机。
优点:易于扩充新I/O设备,I/O设备的寄存器和主存储器可以统⼀编址使CPU访问I/O更加灵活。
缺点:限制了信息传送的吞吐率。
双总线结构:常见的就是在内存和CPU之间设置⼀组专有的⾼速存储总线。分为以CPU为中⼼的双总线和以存储器为中⼼的双总线。
以存储器为中⼼的双总线结构:
主存储器通过存储总线和CPU交换信息,同时可以通过系统总线与I/O设备交换信息。
优点:信息传输效率⾼。
缺点:增加硬件成本。
以cpu为中⼼的双总线结构:
优点:控制线路简单,对I/O的总线的要求低。
缺点:CPU效率低。降温了怎么发朋友圈
采⽤通道的⼤型系统结构:⼀台主机可以连接多个通道,⼀个通道可以连接⼀台或多台I/O设备,具有较⼤的扩展性。由通道控制I/O设备,减少了CPU的压⼒,提⾼了系统效率。
1.3  基本⼯作原理
(1)数制转换
10进制转换成其他的都是除以要转换成的那个数,也就是说转换成⼆进制的就除以2,转换成⼋进制的就除以8,转换成⼗六进制的就除以16,然后倒取余数。
不同的进位制数转化为⼗进制数:按权展开相加
⼗进制是权是10;⼆进制是权是2;⼗六进制是权是16;⼋进制是权是8;
例:110011(⼆进制数)=1*2^5+1*2^4+0*2^3+0*2^2+1*2^1+1*2^0=32+16+2+1=51
1507(⼋进制数)=1*8^3 + 5*8^2 + 0*8^1 + 7*8^0 = 839
2AF5(⼗六进制数)=2*16^3 + A*16^2+ F*16^1 + 5*16^0 = 10997
⼆进制换算⼋进制
将⼆进制数从右到左,三位⼀组,不够补0
例:⼆进制数10110111011换⼋进制数:
010 110 111 011
结果为:2673
⼆进制转换⼗六进制
⼆进制数转换为⼗六进制数的⽅法也类似,从右到左,四位⼀组,不够补0
如上题:
0101 1011 1011
结果为:5BB
(2)机器数与码制
各种数据在计算机中表⽰的形式称为机器数,其特点是采⽤⼆进制计数制,数的符号⽤0、1表⽰,⼩数点则隐含表⽰⽽不占位置。机器数对应的实际数值称为真值。
机器数有⽆符号数和带符号数之分。⽆符号数表⽰正数,在机器数中没有符号位。对于⽆符号数,若约定⼩数点的位置在机器数的最低位之后,则是纯整数;若约定⼩数点的位置在机器数的最⾼位之前,
则是纯⼩数。对于带符号数,机器数的最⾼位⼀晴地正负的符号位,其余位则表⽰数值。若约定⼩数点的位置在机器数的最低数值位之后,则是纯整数;若约定⼩数点的位置在机器数的最⾼数值位之前,则是纯⼩数位。
为了便于运算,带符号的机器右数可采⽤原码,反码和补码等不同的编码⽅法,机器数的这些编码⽅法称为码制。
1. 原码表⽰法
数值X的原码记为[X]原,最⾼位是符号位,0表⽰正号,1表⽰负号,其余位表⽰数值的绝对值。
2.反码表⽰法
数值X的原码记为[X]反,最⾼位是符号位,0表⽰正号,1表⽰负号,正数的反码和原码相同,负数的反码则是其绝对值按位求反。
3.补码表⽰法
数值X的原码记为[X]补,最⾼位是符号位,0表⽰正号,1表⽰负号,正数的补码与其原码和反码相同,负数的补码则等于其反码的末尾加1。
4.移码表⽰法
.移码表⽰法是在数X上增加⼀个偏移量来定义的,常⽤于表⽰浮点数中的阶码。如果机器字长为n,在偏移2的(n-1)次⽅的情况下,只要将将码的符号位取反便可获得相应的移码表⽰。
(3)汉字编码
区位码
  为了使每⼀个汉字有⼀个全国统⼀的代码,1980年,我国颁布了第⼀个汉字编码的国家准: GB2312-80《信息交换⽤汉字编码字符集》基本集,这个字符集是我国中⽂信息处理技术的发展基础,也是⽬前国内所有汉字系统的统⼀标准。
所有的国标汉字与符号组成⼀个94×94的矩阵。在此⽅阵中,每⼀⾏称为⼀个"区",每⼀列称为⼀个"位",因此,这个⽅阵实际上组成了⼀个有94个区(区号分别为0 1到94)、每个区内有94个位(位号分别为01到94)的汉字字符集。⼀个汉字所在的区号和位号简单地组合在⼀起就构成了该汉字的"区位码"。在汉字的区位码中,⾼两位为区号,低两位为位号。
在区位码中,01-09区为682个特殊字符,16~87区为汉字区,包含6763个汉字。其中16-55区为⼀级汉字(3755个最常⽤的汉字,按拼⾳字母的次序排列),56-87区为⼆级汉
字(3008个汉字,按部⾸次序排列)。
·  需要注意的是:区位码通常都是⽤⼗进制表⽰的,例如
区位码通常都是⽤⼗进制表⽰的,例如“诚”字的区位码为1947,也就说它位于19区第47个字符。
国标码
国家标准代码,简称国标码,是中华⼈民共和国的中⽂常⽤汉字编码集。国家标准强制标准冠以“GB”。现时中华⼈民共和国官⽅强制使⽤GB 18030标准,但较旧的计算机仍然使⽤GB 2312。国标码
国标码 =区位码(16进制化--区码和位码分别进⾏16进制转化)+2020H。
机内码
计算机只识别由0、1组成的代码,ASCII码是英⽂信息处理的标准编码,汉字信息处理也必须有⼀个统⼀的标准编码。汉字交换码(国标码)主要⽤于汉字信息交换,我国国家标准局于1981年5⽉颁布了《信息交换⽤汉字编码字符集——基本集》,代号为GB2312-80,共对6763个汉字和682个图形字符进⾏了编码。
其编码原则为:汉字⽤两个字节表⽰,原则上,两个字节可以表⽰ 256×256=65536种不同的符号,作为汉字编码表⽰的基础是可⾏的。但考虑到汉字编码与其它国际通⽤编码,如ASCII西⽂字符编码的关系,我国国家标准局采⽤了加以修正的两字节汉字编码⽅案,只⽤了两个字节的低7位。这个⽅案可以容纳128×128=16384种不同的汉字,但为了与标准ASCII码兼容,每个字节中都不能再⽤32个控制功能码和码值为32的空格以及127的操作码。所以每个字节只能有94个编码。这样,双七位实际能够表⽰的字数
是:94×94=8836个。
机内码 = 国标码 + 8080H
机内码 = 区位码(16进制化--区码和位码分别进⾏16进制转化) + a0a0H
机内码 = 区位码(16进制化--区码和位码分别进⾏16进制转化) + a0a0H
相互转换
内码转换为区位码
区位码:区码=内码⾼字节-0xa0
位码=内码低字节-0xa0
例如:“国”内码为:0xb9,0xfa
16进制表⽰的区位码:0x19,0x5a
计算机硬件系统的组成其区位码(默认为10进制):2590
区位码转换为内码
内码:内码⾼字节=区码+0xa0
新还珠格格结局内码低字节=位码+0xa0
例如:“海”区位码为:2603
16进制表⽰的区位码:0x1a,0x03
    其内码(默认为16进制):0xba,0xa3
字模
  汉字在显⽰的时候,是以点阵的形式显⽰出来的,常见到的有16*16点阵、24*24点阵、32*32点阵。⽐如说“啊”的16*16点阵字模如下,共256Bits,占⽤32 Bytes:
0x00,0x00,0xf7,0x7e,0x95,0x04,0x95,0x04,0x96,0x74,0x96,0x54,0x95,0x54,0x95,0x54,0x95,0x54,0xf5,0x54,0x97,0x74,0x04,0x04,0x04,0x04,0x05,0x04,0x04,0x14,0x04,0x08  字模显⽰的时候,以两个字节表⽰⼀⾏像素点,16⾏就构成了⼀个完整的字模。屏幕在显⽰的时候,1显⽰为亮⾊,0显⽰为背景⾊,这样就能把字体显⽰出来。
字库
  字库,就是所有汉字字模的集合。显然,在编排这些字模的时候需要⼀定的顺序(规则),⽽这个规则就是“机内码”。根据机内码的汉字布局,将对应的汉字字模进⾏整合,形成字库⽂件。在使⽤的时候,应⽤程序根据汉字的机内码,从字库中到对应的存储位置,取出字模,进⾏显⽰。机内码就是汉字在字库中的索引。
在区位码中,01-09区为682个特殊字符,16~87区为汉字区,有效汉字6768个。在制作字库的时候把特殊字符删除,只使⽤有效汉字区。也就是说我们从第16区的第1位开始进⾏字模收集,当第16区收集结束,紧接着收集第17区,直到第87区编排结束。总共收集6768个汉字,占⽤空间216576 Bytes。
(4)CPU
运算器和和内部寄存器
吴建豪资料内部寄存器,这三部分由CPU内部总线连接起来。如下所⽰:
分别是控制器
控制器、、运算器
CPU从逻辑上可以划分成3个模块,分别是
控制器:控制单元是整个CPU的指挥控制中⼼,由指令寄存器IR(Instruction Register)、指令译码器ID(Instruction Decoder)和操作控制器OC(Operation Controller)等,对协调整个电脑有序⼯作极为重要。它根据⽤户预先编好的程序,依次从存储器中取出各条指令,放在指令寄存器IR中,通过指令译码(分析)确定应该进⾏什么操作,然后通过操作控制器OC,按确定的时序,向相应的部件发出微操作控制信号。操作控制器OC中主要包括节拍脉冲发⽣器、控制矩阵、时钟脉冲发⽣器、复位电路和启停电路等控制逻辑。
运算器:是运算器的核⼼。可以执⾏算术运算(包括加减乘数等基本运算及其附加运算)和逻辑运算(包括移位、逻辑测试或两个值⽐较)。相对控制单元⽽⾔,运算器接受控制单元的命令⽽进⾏动作,即运算单元所进⾏的全部操作都是由控制单元发出的控制信号来指挥的,所以它是执⾏部件。
陆星材乔任梁遗照手臂内部寄存器:包括CPU⽚内缓存和寄存器组,是CPU中暂时存放数据的地⽅,⾥⾯保存着那些等待处理的数据,或已经处理过的数据,CPU访问寄存器所⽤的时间要⽐访问内存的时间短。采⽤寄存器,可以减少CPU访问内存的次数,从⽽提⾼了CPU的⼯作速度。但因为受到芯⽚⾯积和集成度所限,寄存器组的容量不可能很⼤。寄存器组可分为专⽤寄存器和通⽤寄存器。专⽤寄存器的作⽤是固定的,分别寄存相应的数据。⽽通⽤寄存器⽤途⼴泛并可由程序员规定其⽤途,通⽤寄存器的数⽬因微处理器⽽异。这个是我们以后要介绍这个重点,这⾥先提⼀下。
我们将上图细化⼀下,可以得出CPU的⼯作原理概括如下:
mov,add,jmp等符号码;操作数地址说明该指令需要的操作数所在的地⽅,是在内存⾥还是在CPU 、指令译码:指令寄存器中的指令经过译码,决定该指令应进⾏何种操作(就是指令⾥的操作码)、操作数在哪⾥(操作数的地址