《计算机组成原理》(第3版)课后习题答案

news2024/12/26 23:49:49

第1篇 概 论
1.什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要?
答:计算机系统:由计算机硬件和软件两部分组成,计算机系统具有接收和存储信息、按程序快速计算和判断并输出处理结果等功能;
计算机硬件:所谓“硬件”,是指计算机的实体部分,它由看得见摸得着的各种电子元器件,各类光、电、机设备的实物组成,如主机、外部设备等;
计算机软件:所谓“软件”,它看不见摸不着,由人们事先编制的具有各类特殊功能的程序组成,包括各种程序和文档,如系统软件,应用软件等;
计算机的硬件和计算机软件是相互依赖,相互限制的,没有重要和不重要之分。没有软件的计算机是没有灵魂的,只是一堆机器;没有硬件的计算机只是一个幻想,没有任何作用。
2.如何理解计算机系统的层次结构?
答:把计算机系统结构按功能划分为多个层次,有利于正确理解计算机系统的工作;同时也有利于明确软件、硬件和固件在计算机系统中的地位和作用;层次结构使得各个层次的分工更加明确,容易纠错和升级;有利于理解各种语言的实现及其性质;有利于探索新的虚拟机实现方法,设计新的计算机系统。
3.说明高级语言、汇编语言和机器语言的差别及其联系。
答:高级语言:高级语言是面向用户的,用高级语言编写的程序称做高级语言源程序,必须翻译成机器语言目标程序才能被计算机执行;
汇编语言:能反映指令功能的助记符表达的计算机语言称汇编语言,它出现在机器语言之前;
机器语言:是计算机唯一能接受和执行的语言。机器语言由二进制码组成,每一串二进制码称做一条指令;
其中只有高级语言是面向用户的,汇编语言和机器语言都是面向机器的。高级语言和汇编语言要经过编译器翻译成机器语言才能被计算机所识别。
4.如何理解计算机组成和计算机体系结构?
答:计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,即概念性的结构与功能特性。计算机系统的属性通常是指用机器语言编程的程序员(也包括汇编语言程序设计者)所看到的传统机器的属性,包括指令集、数据类型、存储器寻址技术、I/O机理等,大都属于抽象的属性。计算机组成是指如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的硬件细节。例如,指令系统体现了机器的属性,这是属于计算机结构的问题。但指令的实现,即如何取指令、分析指令、取操作数、运算、送结果等,这些都属于计算机组成问题。
5.冯·诺依曼计算机的特点是什么?
答:冯·诺依曼在研究EDVAC机时提出了“存储程序”的概念。以此概念为基础的各类计算机通称为冯•诺依曼计算机,除了存储程序这个最大的特点以外,它的其他主要特点是:
(1)计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成;
(2)指令和数据以同同等地位存放于存储器内,并可以按地址访问;
(3)指令和数据均用二进制表示;
(4)指令由操作码、地址码两大部分组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置;
(5)指令在存储器中顺序存放,通常自动顺序取出执行;
(6)机器以运算器为中心(原始冯•诺依曼机)。
6.画出计算机硬件组成框图,说明各部件的作用及计算机硬件的主要技术指标。
答:计算机硬件组成框图如图1-11所示。
在这里插入图片描述
图1-11 计算机硬件组成框图
图中各部件的功能如下:
运算器用来完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器内;
存储器用来存放数据和程序;
控制器用来控制、指挥程序和数据的输入、运行以及处理运算结果;
输入设备用来将人们熟悉的信息形式转换为机器能识别的信息形式,常见的有键盘、鼠标等;
输出设备可将机器运算结果转换为人们熟悉的信息形式,如打印机输出、显示器输出等。
7.解释概念:主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。
答:主机:是计算机硬件的主体部分,CPU与主存储器合起来又可称为主机;
CPU:中央处理器,是计算机硬件的核心部件,由运算器和控制器组成(早期的运算器和控制器不在同一芯片上,现在的CPU内除含有运算器和控制器外还集成了CACHE);
主存:计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取,由存储体、各种逻辑部件及控制电路组成;
存储单元:可存放一个机器字并具有特定存储地址的存储单位;
存储元件:存储一位二进制信息的物理元件,是存储器中最小的存储单位,又称存储基元或存储元,不能单独存取;
存储基元:存储基元即存储元件,是存储单元的分支,能寄存一位二进制代码“1”或“0”,又称存储元件,存储元;
存储元:同上;
存储字:一个存储单元所存二进制代码的逻辑单位;
存储字长:一个存储单元所存二进制代码的位数;
存储容量:存储器中可存二进制代码的总量;
机器字长:指CPU一次能处理的二进制数据的位数;
指令字长:一条指令的二进制代码位数。
8.解释英文代号:CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、L/O、MIPS、CPI、FLOPS。
答:CPU:Central Processing Unit,中央处理机(器),是计算机硬件的核心部件,主要由运算器和控制器组成。
PC:Program Counter,程序计数器,其功能是存放当前欲执行指令的地址,并可自动计数形成下一条指令地址。
IR:Instruction Register,指令寄存器,其功能是存放当前正在执行的指令。
CU:Control Unit,控制单元(部件),为控制器的核心部件,其功能是产生微操作命令序列。
ALU:Arithmetic Logic Unit,算术逻辑运算单元,为运算器的核心部件,其功能是进行算术、逻辑运算。
ACC:Accumulator,累加器,是运算器中既能存放运算前的操作数,又能存放运算结果的寄存器。
MQ:Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。
X:此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数;
MAR:Memory Address Register,存储器地址寄存器,在主存中用来存放欲访问的存储单元的地址。
MDR:Memory Data Register,存储器数据缓冲寄存器,在主存中用来存放从某单元读出、或要写入某存储单元的数据。
I/O:Input/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送。
MIPS:Million Instruction Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位。
CPI:Clock Cycle Per Instruction,表示执行某个程序的指令平均时钟周期数。
FLOPS:Floating-point Operations Per Second,每秒所执行的浮点运算次数。
9.画出主机框图,分别以存数指令“STA M”和加法指令“ADD M”(M均为主存地址)为例,在图中按序标出完成该指令(包括取指阶段)的信息流程。假设主存容量为256 M×32位,在指令字长、存储字长、机器字长相等的条件下,指出图中各寄存器的位数。
答:主机框图如图1-12所示:
在这里插入图片描述
图1-12 主机框图
(1)STA M指令:PC→MAR,MAR→MM,MM→MDR,MDR→IR,OP(IR)→CU,Ad(IR)→MAR,ACC→MDR,MAR→MM,WR;
(2)ADD M指令:PC→MAR,MAR→MM,MM→MDR,MDR→IR,OP(IR)→CU,Ad(IR)→MAR,RD,MM→MDR,MDR→X,ADD,ALU→ACC,ACC→MDR,WR;
假设主存容量256M×32位,在指令字长、存储字长、机器字长相等的条件下,ACC、X、IR、MDR寄存器均为32位,PC和MAR寄存器均为28位。
10.根据迭代公式在这里插入图片描述,设初态Y0=1,要求精度为ε,试编制求的解题程序(指令系统自定),并结合所编程序简述计算机的解题过程。
答:主要有以下步骤:
(1)取x到ACC;
(2)加1存于AC;
(3)除2存于MQ,又[MQ]→主存单元m;
(4)取x到ACC;
(5)将y1从m中取出,执行[m]→x,[ACC]÷[x]→MQ,得x/yn;
(6)[MQ]→ACC,执行yn+x/yn,即[ACC]+[x]→ACC;
(7)除2得结果于MQ,又[MQ]→ACC,[MQ]→m;
(8)[ACC]-[X]→ACC,然后判断[ACC]与ε的大小,若|[ACC]|≦ε则到(9),否则返回;
(9)打印[m];
(10)停机。
11.指令和数据都存于存储器中,计算机如何区分它们?
答:计算机区分指令和数据有以下2种方法:
(1)通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据;
(2)通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。
12.什么是指令?什么是程序?
答:指令:指令是机器完成某种操作的命令,典型的指令通常包括操作码和地址码两部分。操作码用来指出执行什么操作(如加、传送),地址码用来指出操作数在什么地方;
程序:程序是软件开发人员根据用户需求开发的,用程序设计语言描述的,适合计算机执行的指令(语句)序列。所以说程序是众多指令的集合。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2054121.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

武汉流星汇聚:亚马逊迎来中国力量,中国卖家推动跨境电商繁荣

随着全球化进程的加速和跨境电商的蓬勃发展,中国卖家正以前所未有的速度和规模涌入亚马逊这一全球领先的电商平台。他们的入驻不仅为亚马逊平台注入了新的活力与多样性,更在全球范围内产生了深远的积极影响与变革。 中国作为世界工厂,拥有庞…

一段式端到端vs两段式端到端,到底哪个好

在智能汽车领域,端到端自动驾驶技术正迅速成为行业焦点,不同的玩家实现路径也有差别。目前主流的端到端智驾方案有两类:一段式和两段式,针对这两种方案优缺点的讨论,也从未停止过。 “两段式”端到端和“一段式”端到端…

遥感之地理农业分区

在前面的文章有介绍关于中国区域进行分区研究的思路: 中国生态地理区划更新和优化 全国一米全要素分类数据集如何得到的?原文赏析! 根据不同的研究角度对中国区域进行分区,其结果只是细节不一样,大部分还是差不多的&a…

基于Django框架的图书管理系统,前台采用Bootstrap框架UI,后台EasyUI框架UI

程序开发软件:Pycharm 数据库:mysql 采用技术: Django(一个MVT框架,类似Java的SSM框架) 人生苦短,我用Python,咱们今天就来分享一个用Python语言开发的基于Django框架的图书管理系统吧。项目前台和后台界…

Python酷库之旅-第三方库Pandas(088)

目录 一、用法精讲 371、pandas.Series.sparse.density属性 371-1、语法 371-2、参数 371-3、功能 371-4、返回值 371-5、说明 371-6、用法 371-6-1、数据准备 371-6-2、代码示例 371-6-3、结果输出 372、pandas.Series.sparse.fill_value属性 372-1、语法 372-2…

麒麟系统离线安装docker

随着CentOS全面停服,国产操作系统会慢慢代替centos系统,在后续的项目中,项目部署的环境都必将是国产操作系统,本文就国产操作系统下如何离线安装docker,做下笔记分享 一、材料准备 1、国产操作系统 麒麟10,arm64v8 2、…

爱心商城系统pf

TOC springboot424爱心商城系统pf 第1章 绪论 1.1 课题背景 二十一世纪互联网的出现,改变了几千年以来人们的生活,不仅仅是生活物资的丰富,还有精神层次的丰富。在互联网诞生之前,地域位置往往是人们思想上不可跨域的鸿沟&…

k8s上部署rancher

一、什么事rancher Rancher 是一个 Kubernetes 管理工具,让你能在任何地方和任何提供商上部署和运行集群。 Rancher 可以创建来自 Kubernetes 托管服务提供商的集群,创建节点并安装 Kubernetes,或者导入在任何地方运行的现有 Kubernetes 集…

不小心把回收站的照片删了怎么办?别急,这里有找回方法

在日常的数字生活中,照片无疑是我们记录生活点滴、珍藏美好回忆的重要载体。然而,在整理电脑文件时,一个不小心就可能将珍贵的照片误删,甚至从回收站(或称为垃圾箱、废纸篓)中彻底清空,让人懊悔…

如何关闭宝塔Linux面板的公网SSL证书?

前言 在安装宝塔Linux面板时,有时会不小心开启了公网SSL证书,导致需要通过HTTPS才能访问面板,如果你希望恢复到HTTP访问,可以通过图形界面和命令行两种方式来关闭SSL证书。本文将详细介绍这两种方法,并帮助你顺利完成…

2-70 基于matlab的三维装载约束下的货物循环取货路径优化模型建立

基于matlab的三维装载约束下的货物循环取货路径优化模型建立。包含文档说明。以配送中心为原点,分派多辆同一规格的货车到n个供应商处取货,最后回到配送中心。要求充分考虑货物车厢中的三维装载位置,确保每个零部件均能成功装载,尽…

AUTOSAR实战干货:NVM模块Block属性配置全解析

AUTOSAR实战干货:NVM模块Block属性配置全解析 前言 本文思维大纲如下: 继小T之前所写到的AUTOSAR NVM模块详细文章《AUTOSAR技术干货:CP NVM介绍与实战经验分享》, 小T今天将基于NVM模块中每个Block的重要属性配置一次性讲解清楚…

第132天:内网安全-横向移动Exchange服务有账户CVE漏洞无账户口令爆破

域控环境0day.org 通过网盘分享的文件:131-0day.org内网域环境镜像文件 链接: https://pan.baidu.com/s/1rf_gHVJSNG8PEsiSr7DFSw?pwdr5jc 提取码: r5jc 给win7设置一张nat网卡,其他各个主机都设置为vm2 案例一: 域横向移动-内网服务-Exchan…

turtle库 多圈文字旋转 代码开源

对文字旋转进行了升级 声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 效果:(视频要转GIF懒得弄了就截个图) 代码实现: # -*- coding: utf-8 -*- """ Creat…

基于SpringBoot的智慧校园管理系统

系统背景 在当今信息化高速发展的时代背景下,智慧校园管理系统作为教育信息化建设的重要组成部分,正逐步成为提升学校管理水平、优化教育资源配置、促进教育教学创新的关键力量。随着物联网、大数据、云计算、人工智能等先进技术的不断融合与应用&#x…

YoloV8改进策略:下采样与上采样改进|

摘要 河流冰语义分割是一项关键任务,它可以为我们提供河流监测、灾害预测和交通管理所需的信息。以往的工作主要集中在提高准确性上,但对于实际应用而言,效率也同样重要。在本文中,我们提出了一种实时且准确的河流冰语义分割网络…

如何避免电脑监控软件(避开电脑监控软件的秘诀)

电脑监控软件被广泛应用在家庭、学校和企业环境中,以实现对计算机使用情况的监督和管理。 然而,对于希望保护个人隐私或避免被不必要监控的人来说,了解如何避开这些监控软件显得尤为重要。 本文将详细介绍如何避免被电脑监控软件跟踪的方法&…

HID类的报表描述符中的USAGE MAX,USAGE MIN使用注意

发现问题由来 准备自己做一个自定义键盘,先小测试一下经典键盘的26字母,设置了从A到H。在实际传输给电脑数据中,把传送数据第一个按钮是0x04,以为输出A,谁知道居然输出D . 下面一段简单的HID报表描述符共对电脑发送4个…

《深入浅出多模态》(八)多模态经典模型:MiniGPT4

🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系的学习资料,配有全面而有深度的专栏内容,包括不限于 前沿论文解读、…

CATIA CAA 二次开发 -- 获取当前会话编辑的CATIPLMComponent

1、先获取当前激活的编辑器 CATFrmEditor* pEditor CATFrmEditor::GetCurrentEditor();if (pEditor nullptr)return S_FALSE; 关于方法【GetCurrentEditor】的解释如下图所示。 2、通过【CATPLMComponentInterfacesServices】去获取当前编辑器的根。 CATPLMComponentInterf…