01.计算机组成原理 概述

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 计算机硬件唯一识别的数据  0/1,用高电平和低电平来区分01   问题: 数字、文字、图像如何用二进制表示? CPU如何对二进制进行加减乘除 如何存储这些二进制数据? 如何从内存中取出想要的数据? CPU如何识别和执行我们的程序?   计算机组成原理   1.计算机的发展   计算机系统=硬件+软件 硬件:物理基础,计算机性能的天花板 软件: 性能 系统软件(OS、DBMS、标准程序库、网络软件、预言处理程序、汇编程序)和应用软件     硬件的发展历程:      发展阶段    逻辑元件 代表作  速度  内存  外存   编程语言   特点                           备注 Gen1:电子管时代  电子管   ENIAC    慢                机器语言   体积大、耗电高、计算速度慢     计算机纸带上有虫子:bug Gen2:            晶体管                                         比电子管体积小                 出现操作系统FORTRAN Gen3:中小规模集成电路                   半导体存储器 Gen4:大规模集成电路                     半导体存储器                                          微处理器 PC 微型计算机     摩尔定律:     集成电路上可容纳的晶体管数目大约每18月增加一倍,换言之,处理器的性能每两年翻一倍。   软件的发展:     机器语言     汇编语言     高级语言       发展趋势:微型化 网络化 高性能  多用途 智能化 超高速   2.计算机硬件的基本组成   冯诺依曼结构:     EDVAC       以运算器为核心      五大部件:输入设备、输出设备、 存储器、运算器、控制器     指令和数据以同等地位存储于存储器,可按地址寻访     指令和数据都是二进制来存储的     指令由操作码和地址码组成   操作码:+-*/  地址码:数据所在的地址     存储程序    现代计算机结构:     以存储器为核心     CPU = 运算器+控制器  四大部件:主机(CPU+主存)+I/O (辅助存储+IO)       3.主存储器的基本组成       主存储器=存储体+MAR+MDR     菜鸟驿站=货架+店员+柜台           二者一一对应。           存储单元:每个存储单元存放一串二进制代码。 MAR=4位,则存储单元的个数=24次方     存储字:存储单元中二进制代码的组合。     存储字长:存储单元中二进制代码的位数。   MDR=16位,则存储字长 word=16bit     存储元:每个存储元可存1个bit     B:Byte  b:bit  1B=8bit    100M的宽带:是100Mbps的宽带。下载器是B为下载单位,所以下载速度大概是100Mb/8=12MB        4.运算器的基本组成     用于实现算术运算、逻辑运算的部件           ACC:累加器  存储操作数和结果     MQ:乘商计算器  存储操作数和结果     X:通用计算器     ALU:算术逻辑单元,核心部件。实现算术运算和逻辑运算。       5.控制器:     CU:控制单元,分析指令,给出控制信号。Control Unit     IR:指令寄存器,存放当前执行的指令。Instruction Register     PC:程序计数器,存放下一条指令的地址,自动+1的功能 Program Counter           完成一条指令:取指令,分析指令,执行指令。取指阶段,执行阶段。 6.计算机工作过程:     前提:      1.高级语言 经过编译 装入主存。     2.指令:操作码+地址码           开始执行:     初:(PC)=0,指向第一条指令的存储地址。     #1:(PC)->MAR,导致(MAR)=0     #3:M(MAR)->MDR,导致(MDR)=000001 000000101     #4: 通过数据总线,(MDR)-> IR,导致(IR)= 000001 000000101     #5:指令的操作码送到CU,CU得知后是取数的指令,然后去取数放入MDR     MDR再放入ACC,完成后PC=+1      其他步骤类似。
上一篇:性能工具之 FlameGraph 火焰图


下一篇:计算机工作过程典型分析