计算机组成原理作业汇总尹辉.docx
- 文档编号:6750615
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:58
- 大小:836.88KB
计算机组成原理作业汇总尹辉.docx
《计算机组成原理作业汇总尹辉.docx》由会员分享,可在线阅读,更多相关《计算机组成原理作业汇总尹辉.docx(58页珍藏版)》请在冰豆网上搜索。
计算机组成原理作业汇总尹辉
第一章
1.7
解释下列概念:
主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。
解:
主机:
是计算机硬件的主体部分,由CPU和主存储器MM合成为主机。
CPU:
中央处理器,是计算机硬件的核心部件,由运算器和控制器组成;(早期的运算器和控制器不在同一芯片上,现在的CPU内除含有运算器和控制器外还集成了CACHE)。
主存:
计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。
存储单元:
可存放一个机器字并具有特定存储地址的存储单位。
存储元件:
存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。
存储字:
一个存储单元所存二进制代码的逻辑单位。
存储字长:
一个存储单元所存储的二进制代码的总位数。
存储容量:
存储器中可存二进制代码的总量;(通常主、辅存容量分开描述)。
机器字长:
指CPU一次能处理的二进制数据的位数,通常与CPU的寄存器位数有关。
指令字长:
机器指令中二进制代码的总位数。
1.8
解释下列英文缩写的中文含义:
CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS
解:
全面的回答应分英文全称、中文名、功能三部分。
CPU:
CentralProcessingUnit,中央处理机(器),是计算机硬件的核心部件,主要由运算器和控制器组成。
PC:
ProgramCounter,程序计数器,其功能是存放当前欲执行指令的地址,并可自动计数形成下一条指令地址。
IR:
InstructionRegister,指令寄存器,其功能是存放当前正在执行的指令。
CU:
ControlUnit,控制单元(部件),为控制器的核心部件,其功能是产生微操作命令序列。
ALU:
ArithmeticLogicUnit,算术逻辑运算单元,为运算器的核心部件,其功能是进行算术、逻辑运算。
ACC:
Accumulator,累加器,是运算器中既能存放运算前的操作数,又能存放运算结果的寄存器。
MQ:
Multiplier-QuotientRegister,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。
X:
此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数;
MAR:
MemoryAddressRegister,存储器地址寄存器,在主存中用来存放欲访问的存储单元的地址。
MDR:
MemoryDataRegister,存储器数据缓冲寄存器,在主存中用来存放从某单元读出、或要写入某存储单元的数据。
I/O:
Input/Outputequipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送。
MIPS:
MillionInstructionPerSecond,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位。
1.9
画出主机框图,分别以存数指令“STA M”和加法指令“ADD M”(M均为主存地址)为例,在图中按序标出完成该指令(包括取指令阶段)的信息流程(如→①)。
假设主存容量为256M*32位,在指令字长、存储字长、机器字长相等的条件下,指出图中各寄存器的位数。
解:
主机框图如P13图1.11所示。
(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位。
1.11
指令和数据都存于存储器中,计算机如何区分它们?
解:
计算机硬件主要通过不同的时间段来区分指令和数据,即:
取指周期(或取指微程序)取出的既为指令,执行周期(或相应微程序)取出的既为数据。
另外也可通过地址来源区分,从PC指出的存储单元取出的是指令,由指令地址码部分提供操作数地址。
第六章
6.4设机器数字长为8位(含1位符号位在内),写出对应下列各真值的原码、补码和反码。
-13/64,29/128,100,-87
解:
真值与不同机器码对应关系如下:
真值
-13/64
29/128
100
-87
二进制
-0.001101
0.0011101
1100100
-1010111
原码
1.0011010
0.0011101
01100100
11010111
补码
1.1100110
0.0011101
01100100
10101001
反码
1.1100101
0.0011101
01100100
10101000
6.5
已知[x]补,求[x]原和x。
[x1]补=1.1100;[x2]补=1.1001;[x3]补=0.1110; [x4]补=1.0000;
[x5]补=1,0101;[x6]补=1,1100;[x7]补=0,0111;[x8]补=1,0000;
解:
[x]补与[x]原、x的对应关系如下:
[x]补
1.1100
1.1001
0.1110
1.0000
1,0101
1,1100
0,0111
1,0000
[x]原
1.0100
1.0111
0.1110
无
1,1011
1,0100
0,0111
无
x
-0.0100
-0.0111
0.1110
-1
-1011
-100
0,0111
-10000
6.9
当十六进制数9B和FF分别表示为原码、补码、反码、移码和无符号数时,所对应的十进制数各为多少(设机器数采用一位符号位)?
解:
真值和机器数的对应关系如下:
9BH
原码
补码
反码
移码
无符号数
对应十进制数
-27
-101
-100
+27
155
FFH
原码
补码
反码
移码
无符号数
对应十进制数
-128
-1
-0
+128
256
6.11
已知机器数字长为4位(含1位符号位),写出整数定点机和小数定点机中原码、补码和反码的全部形式,并注明其对应的十进制真值。
整数定点机
小数定点机
原码
补码
反码
真值
原码
补码
反码
真值
0,000
0,000
0,000
+0
0.000
0.000
0.000
+0
0,001
0,001
0,001
1
0.001
0.001
0.001
0.125
0,010
0,010
0,010
2
0.010
0.010
0.010
0.250
0,011
0,011
0,011
3
0.011
0.011
0.011
0.375
0,100
0,100
0,100
4
0.100
0.100
0.100
0.500
0,101
0,101
0,101
5
0.101
0.101
0.101
0.625
0,110
0,110
0,110
6
0.110
0.110
0.110
0.750
0,111
0,111
0,111
7
0.111
0.111
0.111
0.875
1,000
0,000
1,111
-0
1.000
0.000
1.111
-0
1,001
1,111
1,110
-1
1.001
1.111
1.110
-0.125
1,010
1,110
1,101
-2
1.010
1.110
1.101
-0.250
1,011
1,101
1,100
-3
1.011
1.101
1.100
-0.375
1,100
1,100
1,011
-4
1.100
1.100
1.011
-0.500
1,101
1,011
1,010
-5
1.101
1.011
1.010
-0.625
1,110
1,010
1,001
-6
1.110
1.010
1.001
-0.750
1,111
1,001
1,000
-7
1.111
1.001
1.000
-0.875
无
1,000
无
-8
无
1.000
无
-1
6.12
设浮点数格式为:
阶码5位(含1位阶符),尾数11位(含1位数符)。
写出51/128、-27/1024、7.375、-86.5所对应的机器数。
要求如下:
(1)阶码和尾数均为原码。
(2)阶码和尾数均为补码。
(3)阶码为移码,尾数为补码。
解:
据题意画出该浮点数的格式:
阶符1位
阶码4位
数符1位
尾数10位
将十进制数转换为二进制:
x1=51/128=0.0110011B=2-1*0.110011B
x2=-27/1024=-0.0000011011B=2-5*(-0.11011B)
x3=7.375=111.011B=23*0.111011B
x4=-86.5=-1010110.1B=27*(-0.10101101B)
则以上各数的浮点规格化数为:
(1)[x1]浮=1,0001;0.1100110000
[x2]浮=1,0101;1.1101100000
[x3]浮=0,0011;0.1110110000
[x4]浮=0,0111;1.1010110100
(2)[x1]浮=1,1111;0.1100110000
[x2]浮=1,1011;1.0010100000
[x3]浮=0,0011;0.1110110000
[x4]浮=0,0111;1.0101001100
(3)[x1]浮=0,1111;0.1100110000
[x2]浮=0,1011;1.0010100000
[x3]浮=1,0011;0.1110110000
[x4]浮=1,0111;1.0101001100
6.17
设机器数字长为8位(包括一位符号位),对下列各机器数进行算术左移一位、两位,算术右移一位、两位,讨论结果是否正确。
[x1]原=0.0011010;[y1]补=0.1010100;[z1]反=1.0101111;
[x2]原=1.1101000;[y2]补=1.1101000;[z2]反=1.1101000;
[x3]原=1.0011001;[y3]补=1.0011001;[z3]反=1.0011001。
解:
算术左移一位:
[x1]原=0.0110100;正确
[x2]原=1.1010000;溢出(丢1)出错
[x3]原=1.0110010;正确
[y1]补=0.0101000;溢出(丢1)出错
[y2]补=1.1010000;正确
[y3]补=1.0110010;溢出(丢0)出错
[z1]反=1.1011111;溢出(丢0)出错
[z2]反=1.1010001;正确
[z3]反=1.0110011;溢出(丢0)出错
算术左移两位:
[x1]原=0.1101000;正确
[x2]原=1.0100000;溢出(丢11)出错
[x3]原=1.1100100;正确
[y1]补=0.1010000;溢出(丢10)出错
[y2]补=1.0100000;正确
[y3]补=1.1100100;溢出(丢00)出错
[z1]反=1.0111111;溢出(丢01)出错
[z2]反=1.0100011;正确
[z3]反=1.1100111;溢出(丢00)出错
算术右移一位:
[x1]原=0.0001101;正确
[x2]原=1.0110100;正确
[x3]原=1.0001100
(1);丢1,产生误差
[y1]补=0.0101010;正确
[y2]补=1.1110100;正确
[y3]补=1.1001100
(1);丢1,产生误差
[z1]反=1.1010111;正确
[z2]反=1.1110100(0);丢0,产生误差
[z3]反=1.1001100;正确
算术右移两位:
[x1]原=0.0000110(10);产生误差
[x2]原=1.0011010;正确
[x3]原=1.0000110(01);产生误差
[y1]补=0.0010101;正确
[y2]补=1.1111010;正确
[y3]补=1.1100110(01);产生误差
[z1]反=1.1101011;正确
[z2]反=1.1111010(00);产生误差
[z3]反=1.1100110(01);产生误差
6.19
设机器数字长为8位(含1位符号位),用补码运算规则计算下列各题。
(1)A=9/64,B=-13/32,求A+B。
(2)A=19/32,B=-17/128,求A-B。
(3)A=-3/16,B=9/32,求A+B。
(4)A=-87,B=53,求A-B。
(5)A=115,B=-24,求A+B。
解:
(1)A=9/64=0.0010010B,B=-13/32=-0.0110100B
[A]补=0.0010010,[B]补=1.1001100
[A+B]补=0.0010010+1.1001100=1.1011110——无溢出
A+B=-0.0100010B=-17/64
(2)A=19/32=0.1001100B,B=-17/128=-0.0010001B
[A]补=0.1001100,[B]补=1.1101111,[-B]补=0.0010001
[A-B]补=0.1001100+0.0010001=0.1011101——无溢出
A-B=0.1011101B=93/128B
(3)A=-3/16=-0.0011000B,B=9/32=0.0100100B
[A]补=1.1101000,[B]补=0.0100100
[A+B]补=1.1101000+0.0100100=0.0001100——无溢出
A+B=0.0001100B=3/32
(4)A=-87=-1010111B,B=53=110101B
[A]补=10101001,[B]补=00110101,[-B]补=11001011
[A-B]补=10101001+11001011=01110100——溢出
(5)A=115=1110011B,B=-24=-11000B
[A]补=01110011,[B]补=1,1101000
[A+B]补=01110011+11101000=01011011——无溢出
A+B=1011011B=91
6.20
用原码一位乘、两位乘和补码一位乘(Booth算法)、两位乘计算x·y。
(1)x=0.110111,y=-0.101110;
(2)x=-0.010111,y=-0.010101;
(3)x=19,y=35;
(4)x=0.11011,y=-0.11101。
解:
先将数据转换成所需的机器数,然后计算,最后结果转换成真值。
(1)[x]原=0.110111,[y]原=1.101110,x*=0.110111,y*=0.101110
原码一位乘:
部分积
乘数y*
说明
0.000000
+0.000000
101110
部分积初值为0,乘数为0加0
0.000000
0.000000
+0.110111
010111
右移一位
乘数为1,加上x*
0.110111
0.011011
+0.110111
101011
右移一位
乘数为1,加上x*
1.010010
0.101001
+0.110111
010101
右移一位
乘数为1,加上x*
1.100000
0.110000
+0.000000
001010
右移一位
乘数为0,加上0
0.110000
0.011000
+0.110111
000101
右移一位
乘数为1,加上x*
1.001111
0.100111
100010
右移一位
即x*×y*=0.100111100010,z0=x0y0=01=1,
[x×y]原=1.100111100010,x·y=-0.100111100010
原码两位乘:
[-x*]补=1.001001,2x*=1.101110
部分积
乘数y*
Cj
说明
000.000000
+001.101110
00101110
0
部分积初值为0,Cj=0
根据yn-1ynCj=100,加2x*,保持Cj=0
001.101110
0
000.011011
+111.001001
10001011
10001011
0
右移2位
根据yn-1ynCj=110,加[-x*]补,置Cj=1
111.100100
111.111001
+111.001001
00100010
1
右移2位
根据yn-1ynCj=101,加[-x*]补,置Cj=1
111.000010
111.110000
+000.110111
10001000
1
右移2位
根据yn-1ynCj=001,加x*,保持Cj=0
000.100111
100010
即x*×y*=0.100111100010,z0=x0y0=01=1,
[x×y]原=1.100111100010,x·y=-0.100111100010
补码一位乘:
[x]补=0.110111,[-x]补=1.001001,[y]补=1.010010
部分积
乘数
Yn+1
说明
00.000000
00.000000
+11.001001
1010010
0101001
0
0
Ynyn+1=00,部分积右移1位
Ynyn+1=10,部分积加[-x]补
11.001001
右移1位
11.100100
+00.110111
1010100
1
Ynyn+1=01,部分积加[x]补
00.011011
右移1位
00.001101
00.000110
+11.001001
1101010
1110101
0
0
Ynyn+1=00,部分积右移1位
Ynyn+1=10,部分积加[-x]补
11.001111
右移1位
11.100111
+00.110111
1111010
1
Ynyn+1=01,部分积加[x]补
00.011110
00.001111
+11.001001
0111101
0
右移1位
Ynyn+1=10,部分积加[-x]补
11.011000
011110
即[x×y]补=1.011000011110,x·y=-0.100111100010
结果同补码一位乘,x·y=-0.10011110001000
6.26
按机器补码浮点运算步骤,计算[x±y]补.
(1)x=2-011×0.101100,y=2-010×(-0.011100);
(2)x=2-011×(-0.100010),y=2-010×(-0.011111);
(3)x=2101×(-0.100101),y=2100×(-0.001111)。
解:
先将x、y转换成机器数形式:
(1)x=2-011×0.101100,y=2-010×(-0.011100)
[x]补=1,101;0.101100,[y]补=1,110;1.100100
[Ex]补=1,101,[y]补=1,110,[Mx]补=0.101100,[My]补=1.100100
1)对阶:
[E]补=[Ex]补+[-Ey]补=11,101+00,010=11,111<0,
应Ex向Ey对齐,则:
[Ex]补+1=11,101+00,001=11,110=[Ey]补
[x]补=1,110;0.010110
2)尾数运算:
[Mx]补+[My]补=0.010110+11.100100=11.111010
[Mx]补+[-My]补=0.010110+00.011100=00.110010
3)结果规格化:
[x+y]补=11,110;11.111010=11,011;11.010000(尾数左规3次,阶码减3)
[x-y]补=11,110;00.110010,已是规格化数。
4)舍入:
无
5)溢出:
无
则:
x+y=2-101×(-0.110000)
x-y=2-010×0.110010
(2)x=2-011×(-0.100010),y=2-010×(-0.011111)
[x]补=1,101;1.011110,[y]补=1,110;1.100001
1)对阶:
过程同
(1)的1),则
[x]补=1,110;1.101111
2)尾数运算:
[Mx]补+[My]补=11.101111+11.100001=11.010000
[Mx]补+[-My]补=11.101111+00.011111=00.001110
3)结果规格化:
[x+y]补=11,110;11.010000,已是规格化数
[x-y]补=11,110;00.001110=11,100;00.111000(尾数左规2次,阶码减2)
4)舍入:
无
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 作业 汇总
![提示](https://static.bdocx.com/images/bang_tan.gif)