携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第26天,点击查看活动详情
冯诺依曼机的特点: 1)计算机硬件系统由运算器、存储器、控制器、输入设备、输出设备5大部件组成。 2)指令和数据以同等地位存储在存储器中,并可按地址寻址。 3)指令和数据均用二进制代码表示。 4)指令由操作码和地址码组成。操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。 5)指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定条件下可根据运算结果或根据设定的条件改变执行顺序。 6)早期的冯诺依曼机以运算器为中心,输入/输出设备通过运算器和存储器传送数据。
不同级别的语言: 机器语言: (二进制语言)计算机唯一可以直接识别和执行的语言。 汇编语言: 用英文单词或其缩写代替二进制的指令代码,易于人们记忆和理解。 高级语言: 为方便程序设计人员写出解决问题的处理方案和解题过程的程序。
计算机的工作过程: 1)把程序和数据装入主存储器。 2)将源程序转换成可执行文件。 3)从可执行文件的首地址开始逐条执行指令。
计算机的性能指标: 机器字长: 指计算机进行一次整数运算所能处理的二进制数据的位数。(通常与CPU的寄存器、加法器有关。 数据通路宽带:指数据总线一次所能并行传送信息的位数(指外部数据总线的宽度,与CPU内部的数据总线宽度有可能不同) 主存容量: 指主存储器所能存储信息的最大容量,通常以字节来衡量,也可用字数字长来表述存储容量。 运算速度 1)吞吐量:指系统在单位时间内处理请求的数量 2)响应时间:指从用户向计算机发送一个请求到系统对该请求做出响应并获得所需结果的等待时间。通常包括CPU时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储器访问、I/O操作、操作系统开销等时间) 主频和CPU时钟周期: 1)CPU时钟周期: 2)主频: CPI:执行一条程序所用的时钟周期数 CPU执行时间:指运行一个程序所花费的时间。 CPU执行时间 = CPU时钟周期数/主频=(指令条数CPI)/主频 MIPS、MFLOPS、GFLOPS、TFLOPS DRAM刷新方式 1)集中刷新 在一个刷新周期内,利用一段固定的时间,依次对存储器的所有行进行逐一再生,期间停止对存储器的读写操作,即死时间,访存“死区”。 优点:读写操作时不受刷新工作的影响,系统的存取速度较高。 缺点:在集中刷新期间(死区)不能访问存储器。 2)分散刷新 把对每行的刷新分散到各个工作周期中,一个存储器的系统工作周期分为两部分:前半部分用于正常读写或保持;后半部分用于刷新某一行。 优点:没有死区。 缺点:加长了系统的存取周期,降低了整机的速度。 3)异步刷新 将刷新周期除以行数,得到两次刷新操作之间的时间间隔t,每间隔时间t产生一次刷新请求。 前两种方法的结合,即可缩短”死时间“,又能充分利用最大刷新间隔2ms的特点。
程序访问的局部性原理 程序访问的局部性原理包括时间局部性和空间局部性。 时间局部性 指在最近的未来要用的信息很可能是现在正在使用的信息,(因为程序中存在循环) 空间局部性 是指在最近的未来要用到的信息,很可能与现在正在使用的信息在存储空间上是邻近的,因为指令通常是顺序存放,顺序执行的。 高速缓冲技术 利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从而大大提高程序的执行速度。