【计算机组成原理】【考试速通】第一章 计算机系统概述

本文面向考研和计算机组成原理考试,主要叙述考点。

计算机硬件

按照冯诺依曼结构,硬件分为五部分:输入输出(IO)、运算器、控制器和存储器。

一般指令执行的过程可以分为四个阶段:(1)取指令,即从主存中取出指令(2)指令译码,即将指令送入控制单元进行分析(3)执行指令,即执行译码得知的指令要进行的具体操作。这一过程需要访问MAR,MDR和ACC。(4)中断周期,这是用来响应中断的。(注,这里的指令周期分为四部分是广义上的。实际细化指令会有多种情况,例如五段MIPS。且指令的段数设计要考虑的问题十分复杂,不仅要结合计算机的体系结构,还要考虑各种性能问题,例如流水线)

【考点1】对应设备属于哪一类硬件

输入输出:键盘、鼠标、显示器等等外设都是IO设备。
存储器:包括主存和外存,以及CPU中的MAR和MDR。主存、MDR、MAR涉及到地址,存储单元中包含着操作数等信息,故属于存储器,在指令各阶段都很重要。
运算器:执行指令时的重要部件,负责各种加减乘除、逻辑运算等操作。因此涉及到的部件有通用寄存器组、暂存寄存器(或者是累加寄存器),乘商寄存器(MQ),操作数寄存器、变址寄存器、基址寄存器,状态字寄存器(PSW) 有PSW的原因是在数字运算时可能涉及到溢出、进位、借位等操作,故需要PSW判断。
控制器:负责执行指令,使计算机可以不断运行,即负责计算机对指令的调度,因此有PC、IR和CU(控制单元)。注意,PC是下一条执行指令的地址,IR存储的是具体的指令。

例题

在这里插入图片描述
【选D】,IR存储指令,而PC是指令的地址。

计算机软件

即硬件上的负责计算机正确且高效运行的软件。有OS、DBMS、分布式、标准库程序、服务性程序等

考点2:不同类型的语言

(1)机器语言,即01字符串,只有机器看得懂。且是机器唯一可以直接识别的语言。
(2)汇编语言,用一定的英文词汇代替了晦涩的字符串,更容易记忆。
(3)高级语言,即C、C++等。高级语言可以分为编译型语言和翻译型语言。

编译型语言
1.只须编译一次就可以把源代码编译成机器语言,后面的执行无须重新编译,直接使用之前的编译结果就可以;因此其执行的效率比较高;
2.编译性语言代表:C、C++;
3.程序执行效率比较高,但比较依赖编译器,因此跨平台性差一些; 解释型语言
1.源代码不能直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行;
2.程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次;
3.解释性语言代表:Python、JavaScript
4.运行效率一般相对比较低,但是部分解释性语言的解释器通过在运行时动态优化代码,甚至能使解释性语言的性能超过编译性语言;
5.依赖解释器,跨平台性好;

考点三 源程序到可执行文件的过程

由于计算机无法直接理解和执行高级语言程序,需要将高级语言程序转换为机器语言程序,通常把进行这种转换的软件系统称为翻译程序。翻译程序有以下三类:
1)汇编程序(汇编器)。将汇编语言程序翻译成机器语言程序。
2) 解释程序(解释器)。:将源程序中的语句按执行顺序逐条翻译成机器指令并立即执行。
3)编译程序 (编译器)。将高级语言程序翻译成汇编语言或机器语言程序。
而一个源程序到可执行文件的过程就需要上述的翻译程序。
在这里插入图片描述
预处理:将头文件加入程序文件。
编译:将高级语言转变为汇编语言
汇编:将汇编语言转变为机器语言
连接、重定位:连接是将函数库和目标文件合并为可执行文件。重定位即重新加载,即保证运行时程序地址的正确性。例如:在未重定位之前,有一个跳转指令为:

//程序起点在0行
jmp 100

但放入内存中,位置就可能不是100(100是相对于程序内的100这个位置,但在内存中很可能出现偏移)
因此重定位可能会改为:

//程序起点在内存中为900行
jmp 1000

例题

在这里插入图片描述
【选D】一边翻译一边执行的是翻译程序,将汇编转为机器语言的是汇编。对于编译,是高级语言到汇编。
在这里插入图片描述
【选C】A是汇编到机器语言,B是将函数库和目标文件打包。D是将一句高级语言转换为机器语言,并执行一句。均错误。C是将高级语言转换为机器语言或者汇编语言,故选C
在这里插入图片描述
【选A】不赘述。
总结:
在这里插入图片描述
指令的内容放到第四章详细叙述。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值