10月15日作业解析
这次作业答的最好的是第一,四,六个问题,出现的错误都比较少。问题最大的是第三个问题,然后是第二,第五个问题。下面依次给出参考解析。
计算机有哪几大组成部分?各部分的作用?
出问题的地方集中在输入输出设备的作用上,很多同学写的都是输入数据,输出数据,应该是各种信息,包括声音文字图像等,数据的范围太窄。
运算器:
主要功能是对数据进行各种运算。这些运算除了常规的加、减、乘、除等基本的算术运算之外,还包括能进行“逻辑判断”的逻辑处理能力,即“与”、“或”、“非”这样的基本逻辑运算以及数据的比较、移位等操作。
存储器:
主要功能是存储程序和各种数据信息,并能在计算机运行过程中高速、自动地完成程序或数据的存取。
控制器:
整个计算机系统的控制中心,它指挥计算机各部分协调地工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。
输入设备:
把各种形式的信息,如数字、文字、图像等转换为数字形式的“编码”,即计算机能够识别的用1和0表示的二进制代码(实际上是电信号),并把它们“输入”(INPUT)到计算机内存储起来。
输出设备:
把计算机加工处理的结果(仍然是数字形式的编码)变换为人或其它设备所能接收和识别的信息形式如文字、数字、图形、声音、电压等。
寄存器和存储器(内存)有什么分别?
很多人都把寄存器和内存的特点写反了。
简单地说就是:
- 寄存器:1.存储容量小 2.读写速度快 3.断电后存储的数据会消失。
- 内存:1.存储容量大2.读写速度慢3.断电后存储的资料不会消失。
32位地址总线可以寻址多大的地址空间?
绝大多数人这个问题写的都有错,重点看一下,主要出错的地方在数字后面的单位上,有 232bit , 232byte , 4GB 等等。
32位地址总线,共有32位二进制数。其最小值是:0000…..0000(32个0),其最大值是:1111…..1111(32个1)。也就是表示的能力有
种可能。在计算机的概念里 1G=230 ,数学里 1G=109 。
也就是说32位地址总线用32位二进制数的表示能力是 4G ,那能寻址的存储空间呢?
现代CPU访问的基本单位是B,即字节1B=8b。1B需要一个地址,那么一根地址总线访存容量为2B,两根地址总线访存容量为4B,即00,01,10,11四个地址。那么32位地址总线可以寻址 4GB 或 232B 的存储空间。
延伸一下,1 Byte = 8 Bits,1 KB = 1024 Bytes,1 MB = 1024 KB,
1 GB = 1024 MB 。
控制器和运算器有什么区别及联系?你能在生活中找到类似例子吗?
大部分写的都比较好
运算器主要进行算术运算和逻辑运算,作用范围小,功能单一。控制器控制着整个CPU的工作,不仅控制运算器的工作还有其他功能。
类似于人的大脑和四肢的关系。
(一) 运算器
1、 算术逻辑运算单元ALU(Arithmetic and Logic Unit)
ALU主要完成对二进制数据的定点算术运算(加减乘除)、逻辑运算(与或非异或)以及移位操作。在某些CPU中还有专门用于处理移位操作的移位器。
通常ALU由两个输入端和一个输出端。整数单元有时也称为IEU(Integer Execution Unit)。我们通常所说的“CPU是XX位的”就是指ALU所能处理的数据的位数。
2、 浮点运算单元FPU(Floating Point Unit)
FPU主要负责浮点运算和高精度整数运算。有些FPU还具有向量运算的功能,另外一些则有专门的向量处理单元。
3、通用寄存器组
通用寄存器组是一组最快的存储器,用来保存参加运算的操作数和中间结果。
在通用寄存器的设计上,RISC与CISC有着很大的不同。CISC的寄存器通常很少,主要是受了当时硬件成本所限。比如x86指令集只有8个通用寄存器。所以,CISC的CPU执行是大多数时间是在访问存储器中的数据,而不是寄存器中的。这就拖慢了整个系统的速度。而RISC系统往往具有非常多的通用寄存器,并采用了重叠寄存器窗口和寄存器堆等技术使寄存器资源得到充分的利用。
对于x86指令集只支持8个通用寄存器的缺点,Intel和AMD的最新CPU都采用了一种叫做“寄存器重命名”的技术,这种技术使x86CPU的寄存器可以突破8个的限制,达到32个甚至更多。不过,相对于RISC来说,这种技术的寄存器操作要多出一个时钟周期,用来对寄存器进行重命名。
4、 专用寄存器
专用寄存器通常是一些状态寄存器,不能通过程序改变,由CPU自己控制,表明某种状态。
(二) 控制器
运算器只能完成运算,而控制器用于控制着整个CPU的工作。
1、 指令控制器
指令控制器是控制器中相当重要的部分,它要完成取指令、分析指令等操作,然后交给执行单元(ALU或FPU)来执行,同时还要形成下一条指令的地址。
2、 时序控制器
时序控制器的作用是为每条指令按时间顺序提供控制信号。时序控制器包括时钟发生器和倍频定义单元,其中时钟发生器由石英晶体振荡器发出非常稳定的脉冲信号,就是CPU的主频;而倍频定义单元则定义了CPU主频是存储器频率(总线频率)的几倍。
3、 总线控制器
总线控制器主要用于控制CPU的内外部总线,包括地址总线、数据总线、控制总线等等。
4、中断控制器
中断控制器用于控制各种各样的中断请求,并根据优先级的高低对中断请求进行排队,逐个交给CPU处理。
程序是如何执行的
这个问题比较复杂,要了解整个计算机的工作原理。简单地说就是:
1.把程序以二进制的形式存放在文件里。
2.将程序翻译成机器可读的形式。要经过预处理器,编译器,汇编器,链接器等的作用。
3.CPU的要到程序存储器中去取指令和数据根据取来的指令和数据完成相应的运算,完成运算后 又把运算结果存放到存储器中的某一个位置。(可以用其他的描述)
指令和程序的关系?指令都包括哪些类?
一个指令,也就是一个操作。 指令由操作码和操作数构成,分别表示何种操作和存储地址。程序是可以连续执行,并能够完成一定任务的一条条指令的集合。
指令包括算术运算指令,逻辑运算指令,数据传送指令,移位操作指令,跳转指令,程序控制指令,输入输出指令等等(写上几个就行)。