【南开软件】【计算机组成原理】学习笔记(一)概论

【1.1】计算机系统

(一)计算机软硬件概念

(1)硬件

计算机的实体部分,看得见摸得着,有各类光、电、机器的实物组成,如主机、外设等;

(2)软件

完全是一个逻辑概念;机器才不知道什么软件,机器只知道一串串的电流从它的硬件里哧溜溜的流过去了,并且那一串串的电流还时断时续,最后导致电流流过之后某个地方发生了变化;

        但对于人这边来讲,那个电流怎么断可以控制并且可以调试成实现目标功能,有必要为这组电流起一个名字;

        软件又分为

        系统软件

        应用软件

        前者为管理整个计算机的软件,可以理解为写在计算机硬件上的接口,之后的软件只要调用这个软件提供的接口就可以完成与硬件的交互;

        后者为特色,什么都能干得出来,只要合理调用系统暴露出来的接口;

(二)计算机解题过程

就是运行过程呗,如果让一个计算机一直跑一个while(true){}也算解题那也太可怜了;

        计算机实际上用以运行程序的部件称为微程序机器M0,指令依靠微指令系统;

        下发微指令的是实际机器M1,指令依靠机器语言;

        下发机器语言的是虚拟机器M2,指令依靠汇编语言;

        下发汇编语言指令的是虚拟机器M3,指令依靠高级语言;

        下发高级语言指令的是在座的各位,说实话要是不是这样我真不知道你打开这个东西是干什么;

        此外在M2(汇编语言)与M1(机器语言)之间还有操作系统横插一脚,来管理汇编语言对内存的调用(但是我到并没有发现这种事有什么实例可供分析)

【1.2】计算机的基本组成

(一)冯·诺伊曼计算机

信冯哥,得高分

这不是什么信仰不信仰的问题,这是现实不现实的问题:现在随便拿个手提电脑就有很大可能是冯·诺伊曼体系(不会真有人找出一个不是的来台杠吧)

的特点

(1)计算机由运算器、储存器、控制器、输入设备、输出设备五大部件组成

你说为什么用3即标题的形式而不是小序号——当然是很重要啊。很很很很很重要;

(2)指令和数据一同等的地位存放于储存器内,可以按址寻访

寻访是能寻访,就是出不了6星罢了;

(3)指令和数据均用二进制表示

都存一起了表示方式不一样哪能成;

(4)指令由操作码和地址码组成(外联外章)

(5)指令在存储器中按顺序存放,顺序执行

从这一点可以看出来冯·诺伊曼的计算机跟图灵机的设计简直一模一样——我当然不是指什么高大上的东西,我是说它们都在设计上在同一个时间只让一个运算工具运行;

(6)以运算器为中心,存储器和输入输出设备之间的数据传送经由运算器

这个到底要不要记啊,毕竟后面一会就提出这一点的改良;

(二)计算机硬件框架

(1)以存储器为中心,剩下的照冯·诺伊曼搬

(2)现代计算机硬件名词术语分布

现代计算机仍然保留冯·诺伊曼体系的五个主要部分

        运算器(ALU, Ariithmetic-Logical Unit,炫,拽英文实在是帅,本土化一点可以叫’算术逻辑单元‘)

        控制器(CU,Control Unit,突然发现英文好普通啊,高级感啪就没了)

        存储器(再分为主存辅存

        输入设备

        输出设备

        名词术语是这么分的:

        ALU与CU合体称CPU

        CPU主存合体称主机

        主机辅存输入输出设备合体称硬件

(三)计算机的使用步骤

(1)上机前的准备

        ① 洗手

        ② 数学建模

        ③ 设计算法

        ④ 洗好了吗

        ⑤ 看看自己还记不记得怎么写程序

(2)计算机的工作过程

        ① 存储器的基本组成

        存储体——一个长方体

        存储单元——没想到吧,那个长方体是由具有同样高不同长、宽的小长方体组成的

        存储字——存储单元里面的东西,一串二进制代码

        存储字长——长方体以及小长方体的高,以’二进制位‘位单位

??这样做的好处??

?begin

        程序按顺序保存在长方体里,运行时按顺序执行;

        指令、数据可以重复使用;

        指令、数据存储需要的电路完全相同(毕竟都是同一个东西)

?end

        MAR——存储器地址寄存器,位数反映存储单元的个数(长方体长宽截面的地图)

        MDR——存储器数据寄存器,位数反应存储字长(存储单元的一个空白实例)

??存储字长、指令字长、数据字长??

?begin

        三者相等

        随着计算机应用范围扩大,往往要求指令字长、数据字长是可变的,用字节个数表示其长度,三者必须是字节的整数倍,一个字节是8位二进制代码;

        存储字长(有时可能会戏称为机器字长)取指令与数据字长最大值或者更大

?end

        ② 运算器的基本组成

        ACC(accumulator)——累加器(外联外章)

                加法存储被加数、和

                减法存储被减数、差

                乘法存储乘积高位

                出发存储被除数、余数

        MQ(Multiplier-Quotient Register)——乘商寄存器

                加法不用

                减法不用

                乘法储存乘数、乘积低位

                除法存储

        X——某科学的寄存器

                加法存储加数

                减法存储减数

                乘法存储被乘数

                除法存储除数

        ALU——负责读数计算(直接连ACC与X)

??工作流程??

?begin

        指令格式:操作+操作数地址M

        加法、减法

                [M] -> X

                [ACC] +/- [X] -> ACC

        乘法

                [M] -> MQ

                [ACC] -> X

                0 -> ACC

                [X] × [MQ] -> ACC//MQ

        除法

                [M] -> X

                [ACC] ÷ [X] -> MQ,余数存在ACC中

?end

        ③ 控制器基本组成

        CU——分析指令,发出各种微操作指令,控制所有被控制对象

        PC(Program Counter)——存放当前执行指令的地址,自动加一(有图灵机纸带内味了)

        IR(Instruction Register)——存放当前与执行指令

【1.3】计算机硬件的主要技术指标

        ① 机器字长——之前是不是说过跟存储字长是一回事?实际上机器字长还指全部寄存器字长的最大值;

        ② 运算速度——有五种指标

                主频(CPU的时钟频率)、操作类型(乘除法可能比加减法慢)、主存速度(数据传输的速度)(先大致了解,外联外章)

                吉普森法(不要试图了解这个方法)

                MIPS(每秒执行百万条指令)

                CPI(执行一条指令所需的始终周期数)

                FLOPS(每秒浮点运算次数)(咱也不知道为啥要用浮点运算次数,是因为浮点运算难以实现吗,可能吧)

        ③ 存储容量——存放二进制信息的总位数

        看看内存(MAR×MDR,如果想要麻烦一点的话)!看看磁盘!

!!Gigabyte到底是多少!!

!begin

        姑且这样,1G = 2的30次方

!end

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值