1.0 课程导学
计算机组成原理在计算机课程体系中有承上启下的作用:
计算机组成原理主要介绍了运算器、控制器、存储器结构、工作原理、设计方法及互连构成整机的相关技术。
1.1 冯诺依曼结构原理及层次分析
- 冯诺依曼体系工作原理
- 计算机的层次结构
冯诺依曼 :计算机之父,他提出的计算机设计方案至今依然是设计者遵循的方案。(yyds!)
一 、冯诺依曼体系工作原理(两大部分构成):
存储程序:(重点包括存储系统的构建与快速访问)
将程序存放在计算机的存储器中, 只有将解决问题的程序放入主存之后才能供CPU访问;
程序控制:(重点包括指令系统、控制器设计等)
将存放在主存中的程序,按照指令的地址访存并取出该指令,经过译码之后产生指令在执行过程中所需要的所有控制信号,完成该指令的功能;
存储系统和控制器的设计是本课程的重难点。
冯诺依曼计算机的组成(硬件 + 软件)
(1)硬件系统:
主机: CPU (运算器 + 控制器) + 内存
外设: 输入设备 + 输出设备 + 外存储器
总线: 地址线 + 数据线 + 控制线
1. 硬件系统 - 运算器
运算包括: 算术运算 + 逻辑运算
基本结构包括:ALU(算术逻辑运算单元) + 寄存器 + 连接通路
2. 硬件系统 - 控制器
功能:能产生指令执行过程中所需要的所有控制信号,控制相关功能部件执行相应操作;
控制信号的形式: 电平信号、脉冲信号
产生信号的依据:依据不同的指令、不同的状态、不同的时序…
控制信号的产生方式:微程序、 硬布线
3. 硬件系统 - 存储器
主要包含地址总线、数据总线、存储体等基本结构。
功能:存储原程序,原数据、运算中间结果
工作方式: 读 / 写
工作原理:按照地址访问, 读 / 写相关数据
访问存储器的容量与对应地址线之间的关系:
$1K -> 10 (2^{10})$
$1M -> 20 (2^{20})$
$1G -> 30 (2^{30})$
4. 硬件系统 - 输入输出设备
输入设备:向计算机输入数据(键盘 + 鼠标 + 网卡 + 扫描仪等)
输出设备:输出处理结果(显示器 + 声卡 + 网卡 + 打印机等)
部分设备可能既是输入设备又是输出设备。
(2)软件系统
软件是程序和数据的结合(二进制表示的信息)
软件的核心: 算法 !(算法蒟蒻狂喜!)
软件的分类:
系统软件: 如操作系统、 网络系统、 编译系统等
支持软件: 如开发工具、 界面工具等
应用软件: 如社交软件、游戏等
硬件与软件之间的关系:相互依存、 逻辑等效性、协同发展
二、 计算机的层次结构:
1) 不同层次的区别
1 .不同用户处在不同层次:
当学C语言的时候我们在高级语言层;
而现在学习计算机组成原理的时候, 我们在指令集架构层 和 微代码层;
2 .不同层次的属性都不同, 越底层越难;(害怕)
3 .不同层次使用的工具不同;
4 .不同层次的代码效率不同, 越底层效率越高;
2)一些概念
透明性概念:
本来存在的事物或者属性,从某个角度去看, 却好像不存在;
例如硬件的特性对高级语言使用者而言就像是透明的;
系统观:
当硬件结构发生变化时可能对软件产生影响;
不同类型的软件会对硬件有不同的要求;
编程的CPU相关性,编程应查阅对应CPU的编程手册;
软硬件的分界线:(看图示的蓝色分界线)
指令集架构层为分界线,分界线之上为软件, 之下为硬件;
分界线是软硬件的接口,正是基于这个接口, 我们才可以利用指令去操作计算机硬件;
指令格式和指令设计同硬件相关联;
蜘蛛侠之神
哈哈哈哈,zyy好久没见!❥
好棒,等一个408超级合集
hygen看这些知识点觉得熟悉吗😄
计组和操作系统上学期才学过hh,还有点印象
好棒,等一个408合集
哈哈感觉可以试着做一下
我今天也刚上 第一节 计组 课。 😉
大二就开了吗,好早好羡慕啊