当前位置:文档之家› 计算机组成原理实验报告_3_不恢复余数阵列除法器

计算机组成原理实验报告_3_不恢复余数阵列除法器

计算机组成原理实验报告_3_不恢复余数阵列除法器
计算机组成原理实验报告_3_不恢复余数阵列除法器

河北大学计算机组成原理实验报告

学院年级专业

学号姓名

实验日期实验地点指导老师

实验项目不恢复余数阵列除法器成绩

一、实验目的:

理解除法器的原理。

二、实验原理:

这次实验实现原码不恢复余数法的阵列除法器算法(余数左移除数固定),详细计算过程如下。

例题:X=0.10110,y=0.111,求[x/y]原。则[x]补=0.10110,[y*]补=0.111,[-y*]补=1.001

由于除数被除数都为正,因此最后结果为正,直接在最后的结果加上“+”,商为+0.110,但是由于除数在计算的过程中被逻辑左移了3次,所以要乘以2^-5进行恢复,故余数为0.000 010 000。

原码不恢复余数法原理说明:

①符号位单独处理,参加运算的是除数和被除数的绝对值的补码,除数的绝对值用y*表示;

②合法的除法运算中,被除数必须小于除数,因此第一次上商肯定是r6=0,否则溢出,停止运算;

③原码恢复余数法来源于手算的竖式除法。若余数为正,表示够减,商上1,左移一位,减去[y*]补,也就是加上[-y*]补;若余数为负,表示不够减,商上0,恢复余数(加上除数),变成减去除数之前的结果,继续左移一位,加上[-y*]补。

④原码不恢复余数法建立在原码恢复余数法的基础之上,假设当前的余数为R。当余数大于0时,下一步余数是先左移一位再减去除数,即下一步余数应该为R’=2R-y*;当余数小于0时先恢复余数,然后再左移一位再减去除数,假设当前余数为R,那么下一步余数应该为R’=2(R+y*)-y*=2R+y*。以上两个式子将恢复余数法的步骤定量化了,也就是说,要么左移一位加上y*,要么左移一位减去y*,这就是加减交替的含义。

⑤除数和被除数具有3位尾数的合法的除法,需要逻辑移位3次,上商3+1=4次。可以设置一个计数器count来控制循环次数,达到3次就停止。

⑥若最后一步为负,表示不够减,商上0,需要恢复余数,即加上除数,否则不需要。

接下来介绍原码不恢复余数阵列除法器

①可控加法/减法(CAS)单元

原理是利用一个可控加法/减法 CAS 单元所组成的流水阵

列来实现的它有四个输出端和四个输入端。当输入线P=0

时,CAS 作加法运算;当P=1 时,CAS 作减法运算。逻辑

结构图如图所示。不恢复余数阵列除法器的逻辑结构

图 CAS 单元的输入与输出的关系可用如下一组逻辑方程来

表示:

Si=Ai⊕(Bi⊕P)⊕C,Ci+1=(Ai+Ci)· (Bi⊕P)+AiCi

当P=0 时,就是一个全加器,如下式:Si=Ai⊕Bi⊕Ci ,Ci+1=AiBi+BiCi+AiCi 当P=1 时,则得求差公式:Si=Ai⊕非Bi ⊕Ci ,Ci+1=AiBi+BiCi+AiCi ,其中非Bi=Bi⊕1。在减法情况下,输入Ci 称为借位输入,而Ci+1 称为借位输出。

②不恢复余数的除法(加减交替法)

在不恢复余数的除法阵列中,每一行所执行的操作究竟是加法还是减法,取决于前一行输出的符号与被除数的符号是否一致。当出现不够减时,部分余数相对于被除数来说要改变符号。这时应该产生一个商位“0”,除数首先沿对角线右移,然后加到下一行的部分余数上。当部分余数不改变它的符号时,即产生商位“1”,下一行的操作应该是减法。

本实验就采用加减交替的方法设计这个阵列除法器。

被除数为x= X0.x6x5x4x3x2x1(这里需要右移,是双倍长);除数为y=Y0.y3y2y1。其中X0 和 Y0 是被除数和除数的符号位,在本次设计中X0 和 Y0 为零,商的符号位恒为零,商为q4.q3q2q1,余数为0.00r6r5r4r3。字长n+1=4

由图看出,该阵列除法器是用一个可控加法/减法(CAS)单元所组成的流水阵列来实现的。推广到一般情况,一个(n+1)位除(n +1)位的加减交替除法阵列由(n+1)2个CAS单元组成,其中两个操作数(被除数与除数) 都是正的。

(1)单元之间的互连是用n=3的阵列来表示的。这里被除数x是一个6位的小数(双倍长度值):x= X0.x6x5x4x3x2x1它是由顶部一行和最右边的对角线上的垂直输入线来提供的。

(2)除数y是一个3位的小数:y=0.y3y2y1它沿对角线方向进入这个阵列。这是因为,在除法中所需要的部分余数的左移,可以用下列等效的操作来代替:即让余数保持固定,而将除数沿对角线右移。

(3)商q是一个3位的小数:q=0.q1q2q3 它在阵列的左边产生。

(4)余数r是一个6位的小数:r=0.00r3r4r5r6 它在阵列的最下一行产生。

最上面一行所执行的初始操作经常是减法。因此最上面一行的控制线P固定置成“1”。减法是用2的补码运算来实现的,这时右端各CAS单元上的反馈线用作初始的进位输入。每一行最左边的单元的进位输出决定着商的数值。将当前的商反馈到下一行,我们就能确定下一行的操作。由于进位输出信号指示出当前的部分余数的符号,因此,它将决定下一行的操作将进行

加法还是减法。

对不恢复余数阵列除法器来说,在进行运算

时,沿着每一行都有进位(或借位)传播,同

时所有行在它们的进位链上都是串行连接。

而每个CAS单元的延迟时间为3T单元,因

此,对一个2n位除以n位的不恢复余数阵

列除法器来说,单元的数量为(n+1)2,考虑

最大情况下的信号延迟,其除法执行时间为

td=3(n+1)2T

三、实验步骤:

(1)打开Quartys II。

(2)将子板上的JTAG端口和PC机的并行口用下载电缆连接。打开实验台电源。(3)执行Tool→Programmer 命令,将adder8.sof下载到FPGA中。注意在执行Programmer中,应在program/configure下的方框中打钩,然后下载。

(4)在实验台上通过模式开关选择FPGA-CPU独立调试模式010。

四、实验现象及分析:

本实验实现4位除4位阵列除法器。

输入输出规则对应如下:

(1)输入被乘数A和乘数B,A和B分别是x= X0.x6x5x4x3x2x1和y=Y0.y3y2y1

(2)输出的结果是商为q4.q3q2q1,余数为0.00r6r5r4r3。

输入输出范例:

五、实验过程中遇到问题及解决方法:

问题一:阵列除法器采用的过程是什么

解决方法:余数固定除数右移。余数左移除数固定的算法适合除数和被乘数尾数为n的运算,余数固定除数右移的将例题稍作修改即可。

问题二:阵列除法器是如何做到减去除数,即加上[-y*]补的?

解决方法:变补的法则是:对[y*]补包括符号位“求反且最末位加1”即可得到[-y*]补。阵列除法器只能做加法,通过图中的“非Bi=Bi⊕1”实现求反,通过某一行最右侧的Ci (借位输入)为1实现最末位加1。

问题三:实验现象中第一行的运算结果中,余数是1011,是除法器在逗吗?

解决方法:阵列除法器并没有在逗你,采取余数固定除数右移是得到的余数是 1.111011,这表明不够减,解决方法是恢复余数,得到余数为0.000 010,或者再算两次,得到余数为0.000 000 01,此时商为0.110 01。而在硬件层面上不实现这个功能。如果允许余数为负数,结果就是对的。

问题四:直接将整个CAS连接起来可以吗?

解决方法:像

--不恢复余数阵列除法器(4位除4位阵列除法器)

library ieee;

use ieee.std_logic_1164.all;

entity composition_7_2_non_restoring_array_divider is

port( x:in std_logic_vector(6 downto 1); --这里编号顺序与课本不同

y: in std_logic_vector(3 downto 1);

q: out std_logic_vector(4 downto 1);

r:out std_logic_vector(6 downto 3));

end composition_7_2_non_restoring_array_divider;

architecture s_div of composition_7_2_non_restoring_array_divider is

component CAS is port(

A,B,Ci,P : IN STD_LOGIC;

--P,B :inout std_logic;

Pout,Bout,Si,CoPlus : OUT STD_LOGIC

);

end component;

signal p1out:std_logic_vector(1 to 16); --CAS的右上部分为加减法控制输出

signal b1out:std_logic_vector(1 to 16); --CAS的右下部分为输入的B的输出

signal s1:std_logic_vector(1 to 12); --CAS的竖线方向为余数输出

signal co1plus:std_logic_vector(1 to 16); --CAS的左下部分为进位输出

--signal gnd:std_logic := '0'; --'0'

begin

--cas11:左数第一个,第1行

cas11:CAS port map('0', '0', co1plus(2), '1',p1out(1),b1out(1), s1(1), co1plus(1)); --输出q4<=co1plus(1) cas12:CAS port map(x(6), y(3),co1plus(3),p1out(1),p1out(2),b1out(2),s1(2),co1plus(2));

cas13:CAS port map(x(5), y(2),co1plus(4),p1out(2),p1out(3),b1out(3),s1(3),co1plus(3));

cas14:CAS port map(x(4), y(1),p1out(4), p1out(3),p1out(4),b1out(4),s1(4),co1plus(4));

q(4)<=co1plus(1);

--s1(1)=0

cas21:CAS port map(s1(2), b1out(1),co1plus(6), co1plus(1),p1out(5),b1out(5),s1(5),co1plus(5)); --输出q3<=co1plus(5)

cas22:CAS port map(s1(3), b1out(2),co1plus(7), p1out(5),p1out(6),b1out(6),s1(6),co1plus(6));

cas23:CAS port map(s1(4), b1out(3),co1plus(8), p1out(6),p1out(7),b1out(7),s1(7),co1plus(7));

cas24:CAS port map(x(3), b1out(4),p1out(8), p1out(7),p1out(8),b1out(8),s1(8),co1plus(8));

q(3)<=co1plus(5);

cas31:CAS port map(s1(6), b1out(5),co1plus(10), co1plus(5),p1out(9),b1out(9),s1(9),co1plus(9)); --输出q2 cas32:CAS port map(s1(7), b1out(6),co1plus(11), p1out(9),p1out(10),b1out(10),s1(10),co1plus(10));

cas33:CAS port map(s1(8), b1out(7),co1plus(12), p1out(10),p1out(11),b1out(11),s1(11),co1plus(11));

cas34:CAS port map(x(2), b1out(8),p1out(12), p1out(11),p1out(12),b1out(12),s1(12),co1plus(12));

q(2)<=co1plus(9);

cas41:CAS port map(s1(10), b1out(9),co1plus(14), co1plus(9),p1out(13),b1out(13),r(6),co1plus(13)); --输出q1

cas42:CAS port map(s1(11), b1out(10),co1plus(15), p1out(13),p1out(14),b1out(14),r(5),co1plus(14));

cas43:CAS port map(s1(12), b1out(11),co1plus(16), p1out(14),p1out(15),b1out(15),r(4),co1plus(15));

cas44:CAS port map(x(1), b1out(12),p1out(16), p1out(15),p1out(16),b1out(16),r(3),co1plus(16));

q(1)<=co1plus(13);

end s_div;

--可控加法/减法(CAS)单元controllable_Addition_Unit

LIBRARY ieee;

USE ieee.std_logic_1164.all;

entity CAS is

port

(

A,B,Ci,P : IN STD_LOGIC;

--P,B :inout std_logic;

Pout,Bout,Si,CoPlus : OUT STD_LOGIC --输出按图中逆时针方向排列

);

end entity;

ARCHITECTURE rtl OF CAS IS

BEGIN

Si <= A xor (B xor P) xor Ci;

CoPlus <= (A or Ci) and (B xor P) and (A and Ci) ;

Pout<=P;

Bout<=B;

END rtl;

做不到按顺序同时地运算,希望有人能解决。

六、实验源码:(加注释)

library ieee;

use ieee.std_logic_1164.all;

entity composition_7_3_non_restoring_array_divider is

port( x:in std_logic_vector(6 downto 1); --这里编号顺序与课本不同

y: in std_logic_vector(3 downto 1);

q: out std_logic_vector(4 downto 1);

r:out std_logic_vector(6 downto 3));

end composition_7_3_non_restoring_array_divider;

architecture s_div of composition_7_3_non_restoring_array_divider is

component full_adder is

port

(

a,b,ci : in std_logic;

s,co : out std_logic

);

end component;

--signal p1out:std_logic_vector(1 to 16); --CAS的右上部分为加减法控制输出

--signal b1out:std_logic_vector(1 to 16); --CAS的右下部分为输入的B的输出

signal s1:std_logic_vector(1 to 12); --CAS的竖线方向为余数输出

signal co1plus:std_logic_vector(1 to 16); --CAS的左下部分为进位输出

--signal gnd:std_logic := '0'; --'0'

begin

--full_adder11:左数第一个,第1行

full_adder11:full_adder port map('0', ('0' xor'1'), co1plus(2) ,s1(1), co1plus(1)); --输出q4<=co1plus(1) full_adder12:full_adder port map(x(6), (y(3) xor'1'),co1plus(3),s1(2),co1plus(2));

full_adder13:full_adder port map(x(5), (y(2) xor'1'),co1plus(4),s1(3),co1plus(3));

full_adder14:full_adder port map(x(4), (y(1) xor'1'),'1',s1(4),co1plus(4));

q(4)<=co1plus(1);

--s1(1)=0

full_adder21:full_adder port map(s1(2), ('0' xor co1plus(1)),co1plus(6),s1(5),co1plus(5));

--输出q3<=co1plus(5)

full_adder22:full_adder port map(s1(3), (y(3) xor co1plus(1)),co1plus(7), s1(6),co1plus(6));

full_adder23:full_adder port map(s1(4), (y(2) xor co1plus(1)),co1plus(8), s1(7),co1plus(7));

full_adder24:full_adder port map(x(3), (y(1) xor co1plus(1)),co1plus(1), s1(8),co1plus(8));

q(3)<=co1plus(5);

full_adder31:full_adder port map(s1(6), ('0' xor co1plus(5)),co1plus(10), s1(9),co1plus(9)); --输出q2 full_adder32:full_adder port map(s1(7), (y(3) xor co1plus(5)),co1plus(11), s1(10),co1plus(10));

full_adder33:full_adder port map(s1(8), (y(2) xor co1plus(5)),co1plus(12), s1(11),co1plus(11));

full_adder34:full_adder port map(x(2), (y(1) xor co1plus(5)),co1plus(5), s1(12),co1plus(12));

q(2)<=co1plus(9);

full_adder41:full_adder port map(s1(10), ('0' xor co1plus(9)),co1plus(14), r(6),co1plus(13)); --输出q1 full_adder42:full_adder port map(s1(11), (y(3) xor co1plus(9)),co1plus(15), r(5),co1plus(14));

full_adder43:full_adder port map(s1(12), (y(2) xor co1plus(9)),co1plus(16), r(4),co1plus(15));

full_adder44:full_adder port map(x(1), (y(1) xor co1plus(9)),co1plus(9), r(3),co1plus(16));

q(1)<=co1plus(13);

end s_div;

--全加器FA

library ieee;

use ieee.std_logic_1164.all;

entity full_adder is

port

(

a,b,ci : in std_logic;

s,co : out std_logic

);

end entity;

architecture rtl of full_adder is

begin

s <= a xor b xor ci;

co <= (a and b) or (a and ci) or (b and ci);

end rtl;

第六章计算机的运算方法(含答案)

第六章运算方法 1 下列数中最小的数为——。 A.(101001)2 B (52)8 C (2B)16 2.下列数中最大的数为。 A.(10010101)2 B.(227)d C.(96)16 3.设寄存器位数为8位,机器数采用补码形式(含1位符号位),对应于十进制数(-27),寄存器内容为一——。 A.27H B.9BH C.E5K 4.对真值0表示形式唯一的机器数是——o A.原码B.补码和移码 C 反码 D 以上都不对 5. 6 在整数定点机中,下述正确的说法是 A.原码和反码不能表示—1,补码可以表示—1 B.三种机器数均可表示—1 c.三种机器数均可表示—1,且三种机器数的表示范围相同 7在小数定点机中,下述说法正确的是——。 A.只有补码能表示—1 B.只有原码不能表示—1 c.三种机器数均不能表示—1 8.某机字长8位.采用形式(其中1位为符号位)则机器数所能表示的范围 A.一127—127 D.一128,十128 C 一128一十127 9、用n+1位字长表示定点数(其中1位为符号位),它所能表示的整数范围是 能表示的小数范围是。

A、阶码取4位(台阶符1位),尾数取12位(合数符1位) B.阶码取5位(台阶符1位),尾数取11位(合数符1位) c.阶码取8位(含阶符1位),尾数取8位(合数符1位)

70在下述有关不恢复余数法何时需恢复余数的说法中,——是正确的A最后一次余数为正时,要恢复 B.最后一次余数为负时,要恢复 C.最后一次余数为。时,要恢复 D.任何时候都不恢复余数 71.在定点机中执行算术运其时会产生溢出,其原因是——。 A.主存容量不够B.运算结果无法表示 c.操作数地址过大D.以上都对 72.在浮点机中,下列说法是正确的。 A.尾数的第一数位为1时,即为规格化形式 B、尾数的第一数值与数符不同时,即为规格化形2

计算机组成原理 作业三

计算机组成原理作业三 1.设机器数字长为8位(含1位符号位在内),写出对应下列各真值的原码、补码和反码。 -13/64,29/128 2.设机器字长为8位(含1位符号位),用补码运算规则计算下列各题。 (1)A=9/64,B=-13/32,求A+B; 解: (1)A=9/64=(0.001 0010)2 B= -13/32=(-0.011 0100)2 [A]补=0.001 0010 [B]补=1.100 1100 [A+B]补= 0. 0 0 1 0 0 1 0 + 1. 1 0 0 1 1 0 0 1. 1 0 1 1 1 1 0 ——无溢出 A+B=(-0.010 0010)2 = -17/64 (2)A=19/32,B=-17/128,求A-B; 解: (2)A=19/32=(0.100 1100)2 B= -17/128=(-0.001 0001)2 [A]补=0.100 1100 [B]补=1.110 1111 [-B]补=0.001 0001 [A-B]补= 0. 1 0 0 1 1 0 0 + 0. 0 0 1 0 0 0 1 0. 1 0 1 1 1 0 1 ——无溢出 A-B=(0.101 1101)2 = 93/128 3. 试比较基址寻址和变址寻址。 答:基址寻址需设有基址寄存器BR,其操作数的有效地址EA等于指令字中的形式地址与基址寄存器中的内容(称作基地址)相加。即EA=A+(BR) 变址寻址有效地址EA等于指令字中的形式地址A与变址寄存器IX的内容相加之和。即EA=A+(IX) 变址寻址与基址寻址的有效地址形成过程极为相似。 两者的不同: 基址寻址主要用于为程序或数据分配存储空间,故基址寄存器的内容通常由操作系统或管理程序确定,而指令字中的A是可变的。 在变址寻址中,变址寄存器的内容是由用户设定的,在程序执行过程中其值可变,而指令字中的A是不可变的。变址寻址主要用于处理数组问题,在数组处理过程中,可设定A为数组的首地址,不断改变变址寄存器IX的内容,便可很容易形成数组中任一数据的地址,特别适合编制循环程序。 4.什么是中断?设计中断时需考虑哪些问题? 答:当主机正在繁忙地处理它的具体事务时,某个外设向主机提出需要临时处理问题的请求,于是主机响应外设请求暂时中断正在执行的程序,转去处理外部事件,处理完后再返回到被中断程序的断点处继续执行原程序的过程,称为中断。

计算机组成原理实验-实验二

实验报告 课程名称计算机组成原理部件实验 实验项目实验二运算器组成实验 系别___ _计算机学院 _ ______ 专业___ 计算机科学与技术 ___ 班级/学号___计科1601/55___ 学生姓名 ______罗坤__ ________ 实验日期_(2018年4月12日) 成绩_______________________ 指导教师吴燕

实验二运算器组成实验一.实验目的 (1)掌握算术,逻辑运算单元的工作原理。 (2)熟悉多通用寄存器结构的简单运存器。 (3)进一步熟悉运算器的结构传送通路及控制方法。(4)按给定的各种操作流程完成运算。 二.实验电路

三.试验设备 数据通路板(B板)、控制信号板(A板)各一块。 四.实验数据 R0 ○OH→R0 SW=OH SW-BUS Ys1Ys0=11 LDR0,T4 R1 ○**H→R1 SW=**H SW-BUS Ys1Ys0=11 LDR1,T4 ○(R1)→DR1 YS1YS0=00 R1-BUS LDDR1,T4 ○(DR1)+1→R1 000001 ALU YS1YS0=11 LDR1,T4 YS1YS0=00 R1-BUS R2 ○**H→R2 SW=**H SW-BUS YS1YS0=11 LDR2,T4 ○(R2)→DR2 YS1YS0=00 R2-BUS LDDR2,T4 ○(DR2非)→R2 010110 ALU YS1YS0=11

YS1YS0=00 R2-BUS R1,R0 ○**H→R1 SW=**H SW-BUS Ys1Ys0=11 LDR1,T4 ○(R1)→DR2 YS1YS0=00 R2-BUS LDDR2,T4 ○(DR2) →R0 YS1YS0=00 LDR0,T4 YS1YS0=00 R0-BUS R1,R0 ○**H→R1 SW=**H SW-BUS Ys1Ys0=11 LDR1,T4 ○(R1)→DR1 YS1YS0=00 R1-BUS LDDR1,T4 ○**H→R0 SW=**H SW-BUS Ys1Ys0=11 LDR0,T4 ○(R0)→DR2 YS1YS0=00 R2-BUS LDDR2,T4 ○(DR1)-(DR2)→R0 011001 ALU YS1YS0=11 LDR2,T4 YS1YS0=00

计算机组成原理3-7章作业答案

第3章习题参考答案 2、已知某64位机主存采用半导体存储器,其地址码为26位,若使用4M ×8位的DRAM 芯片组成该机所允许的最大主存空间,并选用存条结构形式,问; (1) 若每个存条为16M ×64位,共需几个存条? (2) 每个存条共有多少DRAM 芯片? (3) 主存共需多少DRAM 芯片? CPU 如何选择各存条? 解: (1) 共需 条464 1664 226=??M 存条 (2) 每个存条共有 328 464 16=??M M 个芯片 (3) 主存共需多少 1288 464 648464226=??=??M M M 个RAM 芯片, 共有4个存条,故CPU 选择存条用最高两位地址A 24 和A 25通 过2:4译码器实现;其余的24根地址线用于存条部单元的选择。 3、用16K ×8位的DRAM 芯片构成64K ×32位存储器,要求: (1) 画出该存储器的组成逻辑框图。 (2) 设存储器读/写周期为0.5μS ,CPU 在1μS 至少要访问一次。试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少? 解: (1) 用16K ×8位的DRAM 芯片构成64K ×32位存储器,需要用 16448 1632 64=?=??K K 个芯片,其中每4片为一组构成16K ×32 位——进行字长位数扩展(一组的4个芯片只有数据信号线不互连——分别接D 0~D 7、D 8~D 15、D 16~D 23和D 24~D 31,其余同名引脚互连),需要低14位地址(A 0~A 13)作为模块各个芯片的部单元地址——分成行、列地址两次由A 0~A 6引脚输入;然后再由4组进行存储器容量扩展,用高两位地址A 14、A 15通过2:4译码器实现4组中选择一组。画出逻辑框图如下。 (2) 设刷新周期为2ms ,并设16K ?8位的DRAM 结构是128?128?8存储阵列,则对所有单元全部刷新一遍需要128次(每次刷新

计算机组成原理实验

计算机组成原理 一、8 位算术逻辑运算 8 位算术逻辑运算实验目的 1、掌握简单运算器的数据传送通路组成原理。 2、验证算术逻辑运算功能发生器74LS181的组合功能。 8 位算术逻辑运算实验内容 1、实验原理 实验中所用的运算器数据通路如图3-1所示。其中运算器由两片74LS181以并/串形成8位字长的ALU构成。运算器的输出经过一个三态门74LS245(U33)到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,内部数据总线通过LZD0~LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器74LS273(U29、U30)锁存,两个锁存器的输入并联后连至插座ALUBUS,实验时通过8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据来自于8位数据开并KD0~KD7,并经过一三态门74LS245(U51)直接连至外部数据总线EXD0~EXD7,通过数据开关输入的数据由LD0~LD7显示。 图中算术逻辑运算功能发生器74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,实验时通过6芯排线连至6位功能开关插座UJ2,以手动方式用二进制开关S3、S2、S1、S0、CN、M来模拟74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信号LDDR1、LDDR2、ALUB`、SWB`以手动方式用二进制开关LDDR1、LDDR2、ALUB、SWB来模拟,这几个信号有自动和手动两种方式产生,通过跳线器切换,其中ALUB`、SWB`为低电平有效,LDDR1、LDDR2为高电平有效。 另有信号T4为脉冲信号,在手动方式下进行实验时,只需将跳线器J23上T4与手动脉冲发生开关的输出端SD相连,按动手动脉冲开关,即可获得实验所需的单脉冲。 2、实验接线 本实验用到4个主要模块:⑴低8位运算器模块,⑵数据输入并显示模块,⑶数据总线显示模块,⑷功能开关模块(借用微地址输入模块)。

计算机组成原理实验

实验一基础汇编语言程序设计 一、实验目的: 1、学习和了解TEC-XP16教学实验系统监控命令的用法。 2、学习和了解TEC-XP16教学实验系统的指令系统。 3、学习简单的TEC-XP16教学实验系统汇编程序设计。 二、预习要求: 1、学习TEC-XP16机监控命令的用法。 2、学习TEC-XP16机的指令系统、汇编程序设计及监控程序中子程序调用。 3、学习TEC-XP16机的使用,包括开关、指示灯、按键等。 4、了解实验内容、实验步骤和要求。 三、实验步骤: 在教学计算机硬件系统上建立与调试汇编程序有几种操作办法。 第一种办法,是使用监控程序的A命令,逐行输入并直接汇编单条的汇编语句,之后使用G命令运行这个程序。缺点是不支持汇编伪指令,修改已有程序源代码相对麻烦一些,适用于建立与运行短小的汇编程序。 第二种办法,是使用增强型的监控程序中的W命令建立完整的汇编程序,然后用M命令对建立起来的汇编程序执行汇编操作,接下来用G命令运行这个程序。适用于比较短小的程序。此时可以支持汇编伪指令,修改已经在内存中的汇编程序源代码的操作更方便一些。 第三种办法,是使用交叉汇编程序ASEC,首先在PC机上,用PC机的编辑程序建立完整的汇编程序,然后用ASEC对建立起来的汇编程序执行汇编操作,接下来把汇编操作产生的二进制的机器指令代码文件内容传送到教学机的内存中,就可以运行这个程序了。适用于规模任意大小的程序。

在这里我们只采用第一种方法。 在TEC-XP16机终端上调试汇编程序要经过以下几步: 1、使教学计算机处于正常运行状态(具体步骤见附录联机通讯指南)。 2、使用监控命令输入程序并调试。 ⑴用监控命令A输入汇编程序 >A 或>A 主存地址 如:在命令行提示符状态下输入: A 2000↙;表示该程序从2000H(内存RAM区的起始地址)地址开始 屏幕将显示: 2000: 输入如下形式的程序: 2000: MVRD R0,AAAA ;MVRD 与R0 之间有且只有一个空格,其他指令相同 2002: MVRD R1,5555 2004: ADD R0,R1 2005: AND R0,R1 2006: RET ;程序的最后一个语句,必须为RET 指令 2007:(直接敲回车键,结束A 命令输入程序的操作过程) 若输入有误,系统会给出提示并显示出错地址,用户只需在该地址重新输入正确的指令即可。 ⑵用监控命令U调出输入过的程序并显示在屏幕上 >U 或>U 主存地址

计算机组成原理 作业三

《计算机组成原理》作业(三) 学完6-7章后可以完成作业(二)。作业总分100分,将作为平时成绩记入课程总成绩。 一、简答题(每题6分,共30分) 1、什么就是总线?总线传输有何特点?为了减轻总线负载,总线上的部件应具备什么 特点? 答:总线就是连接各个部件的信息传输线,就是各个部件共享的传输介质。总线 上信息传输的特点:某一时刻只允许有一个部件向总线发送信息, 但多个部件可以同时从总线上接收相同的信息。 以CPU片内总线为例,在每个需要将信息送至总线的寄存器输出端接三态门,由三态 门控制端控制什么时刻由哪个寄存器输出。当控制端无效时,寄存器与总线之间呈 高阻状态。 2、为什么要设置总线判优控制?常见的集中式总线控制有几种?各有何特点?哪种 方式响应时间最快?哪种方式对电路故障最敏感? 答:总线判优控制解决多个部件同时申请总线时的使用权分配问题; 常见的集中式总线控制有三种:链式查询、计数器定时查询、独立请求; 特点:链式查询方式连线简单,易于扩充,对电路故障最敏感;计数器定时查询方式 优先级设置较灵活,对故障不敏感,连线及控制过程较复杂;独立请求方式速度最快,但硬件器件用量大,连线多,成本较高。 3、简要说明程序中断接口中IM、IR、EI、RD、BS五个触发器的作用。 五个触发器的作用: 中断屏蔽触发器(IM):CPU就是否受理中断或批准中断的标志。Im标志为“0” 时,CPU 可受理外界中断请求。 中断请求触发器(IR):暂存中断请求线上由设备发出的中断请求信号,IR标志为“1” 时, 表示设备发出了中断请求。 允许中断触发器(EI):用程序指令来置位,控制就是否允许某设备发出中断请求。IE 为“1”时,某设备可以向CPU发出请求。 准备就绪的标志(RD):一旦设备做好一次数据的接收或发送,便发出一个设备动作完 毕信号,使RS标志为“1”。 工作触发器(BS):设备“忙”的标志。BS=1,表示启动设备工作

计算机组成原理实验三运算器

实验三:八位运算器组成实验 一:实验目的: 1:掌握运算器的组成原理、工作原理; 2:了解总线数据传输结构; 3:熟悉简单的运算器的数据通路与控制信号的关系; 4:完成给定数据的算术操作、逻辑操作; 二:实验条件: 1:PC机一台; 2:MAX+PLUSⅡ软件; 三:实验内容(一) 1:所用到的芯片 74181:四位算术逻辑运算单元; 74244:收发器(双向的三态缓冲器) 74273:八位D触发器; 74374:八位D锁存器; 74163:八进制计数器; 7449:七段译码器 2:实验电路图 (1)运算器电路图 (A)数据输入电路由两个十六进制计数器连接成16*16=256进制的计数器,可以实现八位的输入。 (B)运算功能选择电路由一个十六进制计数器组成,可以实现16种不同运算的选择。再加上逻辑运算器上的M位和Cn位的选择,一共可以实现16*3=48种运算功能。内部由一个74163构成。

内部结构: (C)数码管扫描显示电路由一个扫描电路scan和一个七段译码器7449组成,scan 内部是一个二选一的多路复用器。 scan内部结构: (D)运算器电路图

(2)波形仿真图 (A)输入两个数A=05H,B=0AH,O5H DR1,0AH DR2,并通过经由74181在总线上显示。

(B)对两个数进行各种数学运算和逻辑运算。加法运算:输出控制:s4s3s2s1=0001,M=0,CN=0 输出使能:ALU_BUS=0 计算结果:05H+0AH=10H

四:实验内容(二) 给定A,B两个数,设A=05H,B=0AH,完成几种常见的算术运算和逻辑运算画出运算的波形和仿真图 (1)逻辑运算:A and B,A or B,取反/A,A⊙B,A⊕B; /A A⊕B A⊙B A and B A or B 输入控制s3s2s1s0 0000 0110 1001 1011 1110 计算结果FAH 0FH F0H 00H 0FH

计算机组成原理_原码阵列除法器

计算机组成原理专周报告 成都电子机械高等专科学校计算机工程系

` 目录 一、项目名称 (1) 二、实验目的 (1) 三、不恢复余数的阵列除法器介绍 (1) 四、逻辑流程图及原理 (3) 算法流程 (3) 粗框图 (4) CSA逻辑结构图 (4) 原理分析 (5) 五、实例结果及求解过程 (8) 实例结果图 (8) 实例求解过程 (9) 六、心得体会: (10)

计算机组成原理专周报告 一、项目名称 原码阵列除法器 二、实验目的 1)理解原码阵列除法运算的规则。 2)掌握原码阵列除法器设计思想,设计一个原码阵列除法器。 3)熟悉proteus 7 professional软件的使用。 4)复习巩固课堂知识,将所学知识运用于实际,做到学以致用。三、不恢复余数的阵列除法器介绍 阵列式除法器是一种并行运算部件,采用大规模集成电路制造,与早期的串行除法器相比,阵列除法器不仅所需的控制线路少,而且能提供令人满意的高速运算速度。阵列除法器有多种多样形式,如不恢复余数阵列除法器,补码阵列除法器等等。我们所用到的就是不恢复余数的阵列除法器。 设:所有被处理的数都是正的小数(仍以定点小数为例)。不恢复余数的除法也就是加减交替法。在不恢复余数的除法阵列中,每一行所执行的操作究竟是加法还是减法, 取决于前一行输出的符号与

被除数的符号是否一致。当出现不够减时,部分余数相对于被除数来说要改变符号。这时应该产生一个商位“0”,除数首先沿对角线右移,然后加到下一行的部分余数上。当部分余数不改变它的符号时, 即产生商位“1”,下一行的操作应该是减法。图(四)示出了 (4位÷4位)的不恢复余数阵列除法器的逻辑原理图。由图看出,该阵列除法器是用一个可控加法/减法(CAS)单元所组成的流水阵列来实现的。推广到一般情况,一个(n+1)位除(n+1)位的加减交替除法阵列由(n+1)2个CAS单元组成,其中两个操作数(被除数与除数)都是正的。单元之间的互连是用n=3的阵列来表示的。 这里被除数X是一个6位的小数(双倍长度值):X=0.A1A2A3A4A5A6它是由顶部一行和最右边的对角线上的垂直输入线来提供的。 除数Y是一个3位的小数:Y=0.B1B2B3 它沿对角线方向进入这个阵列。这是因为,在除法中所需要的部分余数的左移,可以用下列等效的操作来代替:即让余数保持固定,而将除数沿对角线右移。 商Q是一个3位的小数:Q=0.Q1Q2Q3 它在阵列的左边产生。 余数r是一个6位的小数:r=0.00r0r1r2r3 它在阵列的最下一行产生。

计算机组成原理实验完整版

河南农业大学 计算机组成原理实验报告 题目简单机模型实验 学院信息与管理科学学院 专业班级计算机科学与技术2010级1班 学生姓名张子坡(1010101029) 指导教师郭玉峰 撰写日期:二○一二年六月五日

一、实验目的: 1.在掌握各部件的功能基础上,组成一个简单的计算机系统模型机; 2.了解微程序控制器是如何控制模型机运行的,掌握整机动态工作过程; 3定义五条机器指令,编写相应微程序并具体上机调试。 二、实验要求: 1.复习计算机组成的基本原理; 2.预习本实验的相关知识和内容 三、实验设备: EL-JY-II型计算机组成原理试验系统一套,排线若干。 四、模型机结构及工作原理: 模型机结构框图见实验书56页图6-1. 输出设备由底板上上的四个LED数码管及其译码、驱动电路构成,当D-G和W/R均为低电平时将数据结构的数据送入数据管显示注:本系统的数据总线为16位,指令、地址和程序计数器均为8位。当数据总线上的数据打入指令寄存器、地址寄存器和程序寄存器时,只有低8位有效。 在本实验我们学习读、写机器指令和运行机器指令的完整过程。在机器指令的执行过程中,CPU从内存中取出一条机器指令到执行结束为一个指令周期,指令由微指令组成的序列来完成,一条机器指令对应一段微程序。另外,读、写机器指令分别由相应的微程序段来完成。

为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,必须设计三个控制操作微程序。 存储器读操作(MRD):拨动清零开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“00”时,按“单步”键,可对RAM连续读操作。 存储器写操作(MWE):拨动清零开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“10”时,按“单步”键,可对RAM连续写操作。 启动程序(RUN):拨动开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“11”时,按“单步”键,即可转入第01号“取指”微指令,启动程序运行。 注:CA1、CA2由控制总线的E4、E5给出。键盘操作方式有监控程序直接对E4、E5赋值,无需接线。开关方式时可将E4、E5接至控制开关CA1、CA2,由开关控制。 五、实验内容、分析及参考代码: 生成的下一条微地址 UA5 UA0 MS5 MS0 微地址

COP2000实现原码一位除法

沈阳航空航天大学 课程设计报告 课程设计名称:计算机组成原理课程设计 课程设计题目:COP2000实现原码一位除法 院(系):计算机学院 专业:计算机科学与技术 班级:24010103 学号:2012040101012 姓名:程院 指导教师:杨华 日15月01年2015完成日期: 沈阳航空航天大学课程设计报告

目录 第1章总体设计方案 (2) 1.1设计原理 (2) 1.2设计思路 (2) 1.3设计环境 (2) 第2章详细设计方案 (4) 2.1总体方案的设计与实现 (4) 2.1.1总体方案的逻辑图 (4) 2.1.2算法流程图 (5) 2.2功能模块的设计与实现 (6) 2.2.1 模块的设计与实现 (6) 第3章验证测试 (9) 3.1验证测试 (9) 参考文献 (10) 附录(源代码)…………………………………………………………………………111-- 沈阳航空航天大学课程设计报告错误!未指定书签。第1章 总体设计方案 第1章总体设计方案 1.1设计原理 原码一位除,即两个原码数相除,商的符号为除数和被除数的符号异或值。采用汇编语言实现定点原码一位除法器,算法为恢复余数法。利用恢复余数的方法来进行运算。 1.2设计思路 算法为恢复余数法,先用被除数减去除数,如果结果为正数商1,然后左移,如果是负数商0然后加上Y的补,继续运算。 实验开始时将实验数据从实验箱的开关输入到R0,R1,R2三个寄存器中,R0为被除数,R1为除数,R2为商。运算过程采用恢复余数法。主要判断被除数减去除数的商值。如果为负,商0然后加除数然后左移。如果商值为正商1,左移。数据都存放在寄存器中,最后结果在OUT寄存器中显示。

计算机组成原理实验七

图16 启停单元布局图 序电路由1片74LS157、2片74LS00、4个LED PLS2、PLS3、PLS4)组成。当LED发光时 图17

图17 时序单元布局图 (二)启停、脉冲单元的原理 1.启停原理:(如图18) 启停电路由1片7474组成,当按下RUN按钮,信号输出RUN=1、STOP=0,表示当前实验机为运行状态。当按下STOP 按钮,信号RUN=0、STOP=1,表示当前实验机为停止状态。当 系统处于停机状态时,微地址、进位寄存器都被清零,并且可 通过监控单元来读写内存和微程序。在停止状态下,当HALT 时有一个高电平,同时HCK有一个上升沿,此时高电平被打入 寄存器中,信号输出RUN=1、STOP=0,使实验机处于运行状态。

图18 启停单元原理图 2.时序电路: 时序电路由监控单元来控制时序输出(PLS1、PLS2、PLS3、PLS4)。实验所用的时序电路(如图19)可产生4个等间隔的时序信号PLS1、PLS2、PLS3、PLS4。为了便于监控程序流程,由监控单元输出PO信号和SIGN脉冲来实现STEP(微单步)、GO (全速)和HALT(暂停)。当实验机处于运行状态,并且是微单步执行,PLS1、PLS2、PLS3、PLS4分别发出一个脉冲,全速执行时PLS1、PLS2、PLS3、PLS4脉冲将周而复始的发送出去。在时序单元中也提供了4个按钮,实验者可手动给出4个独立的脉冲,以便实验者单拍调试模型机。

图19 时序电路图 实验步骤 1.交替按下“运行”和“暂停”,观察运行灯的变化(运行:RUN 亮;暂停:RUN灭)。 2.把HALT信号接入二进制拨动开关,HCK接入脉冲单元的PLS1。按下表接线 接入开关位号 信号定 义 HCK PLS1孔 HALT H13孔 3.按启停单元中的停止按钮,置实验机为停机状态,HALT=1。 4.按脉冲单元中的PLS1脉冲按键,在HCK上产生一个上升

计算机组成原理实验五

上海大学计算机学院 《计算机组成原理实验》报告一 姓名:学号:教师: 时间:机位:报告成绩: 实验名称:指令系统实验 一、实验目的:1. 读出系统已有的指令,并理解其含义。 2. 设计并实现一条新指令。 二、实验原理:利用CP226实验仪(用74HC754即8D型上升沿触发器)上的K16…K23 开关为数据总线DBUS设置数据,其他开关作为控制信号,一条指令执行完 毕PC会自动加1,系统顺序执行下一条指令,但系统要进入一个新的指令序 列时,如跳转、转子程序等,必须给PC打入新的起始值——新指令序列的 入口地址。实验箱实现把数据总线的值(目标地址)打入PC的操作,以更新 PC值。 三、实验内容:1. 考察机器指令64的各微指令信号,验证该指令的功能。(假设R0=77H, A=11H, 77地址单元存放56H数据,64指令的下一条指令为E8) 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT” 操作。 四、实验步骤:1. 考察机器指令64的各微指令信号,验证该指令的功能。(假设R0=77H, A=11H, 77地址单元存放56H数据,64指令的下一条指令为E8) ①在初始化系统(Reset),进入微程序存储器模式(μEM状态),用NX键观 察64H,65H,66H,67H, 地址中原有的微指令,分析并查表确定其功能。 ②在EM状态下,Adr打入A0,DB打入64;按NX键,Adr显示A1,DB 打入E8。 ③在μEM状态下,在E8H、E9H、EAH、EBH下分别打入:FFDED8、CBFFFF、 FFFFFF、FFFFFF。 ④给μPC状态下,打入μPC(00)、PC(A0)、A(11)、W(00),按3次 NX输入R0(77)。 ⑤按下STEP键,观察实验现象。 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT” 操作。 ⑥继续按STEP键,直到进入E8状态下。 ⑦在EM状态下,打入Adr为77,DB为56。 ⑧按STEP键执行指令,观察实验现象。 五、实验现象:OUT寄存器的值为5A。 六、数据记录、分析与处理:实验结果和预期的一样。 七、实验结论:1、机器指令64对应的各微指令码为:FF77FF、D7BFEF、FFFE92、CBFFFF。其功能为:将R0寄存器的值打入地址寄存器MAR;存贮器EM将MAR输出地址所对应的值打入W寄存器;ALU直通门输出的值打入A寄存器,A、W中的值进行“与”运算,结果在A输出;PC+1,读出下一条指令并立即执行。 八、建议:暂无。

计算机组成原理A形考作业3参考解答

计算机组成原理A形考作业3参考解答 一、选择题 1.下列部件(设备)中,存取速度最快的是____B____。 A.光盘存储器 B.CPU的寄存器 C.软盘存储器 D.硬盘存储器 2.某SRAM芯片,其容量为1K×8位,加上电源端和接地端,该芯片引出线的最少数目应为___D___。 A.23 B.25 C.50 D.20 3.在主存和CPU之间增加Cache的目的是___C___。 A.扩大主存的容量 B.增加CPU中通用寄存器的数量 C.解决CPU和主存之间的速度匹配 D.代替CPU中的寄存器工作 4.在独立编址方式下,存储单元和I/O设备是靠___A___来区分的。 A.不同的地址和指令代码 B.不同的数据和指令代码 C.不同的数据和地址 D.不同的地址 5.随着CPU速度的不断提升,程序查询方式很少被采用的原因是__C____。 A.硬件结构复杂 B.硬件结构简单 C.CPU与外设串行工作 D.CPU与外设并行工作 6.在采用DMA方式的I/O系统中,其基本思想是在___B___之间建立直接的数据通路。 A.CPU与外设 B.主存与外设 C.CPU与主存 D.外设与外设 二、判断题判断下列说法是否正确,并说明理由。 1.CPU访问存储器的时间是由存储器的容量决定的,存储器容量越大,访问存储器所需的时间越长。 错。CPU访问存储器的时间不取决于存储器容量,而取决于存储器存取周期和存储器带宽。 2.引入虚拟存储系统的目的,是为了加快外存的存取速度。 错。引入虚拟存储系统的目的,是为了解决主存容量小、运行成本高的问题。 3.按主机与接口间的数据传送方式,输入/输出接口可分为串行接口和并行接口。 错。应该是按主机与外设间的数据传送方式,输入/输出接口可分为串行接口和并行接口。 4.DMA控制器通过中断向CPU发DMA请求信号。 错。应该是当结束数据传送时,DMA控制器通过中断向CPU发出请求信号。 三、简答题 1.在三级存储体系中,主存、外存和高速缓存各有什么作用?各有什么特点? 答:由主存、外存和高速缓存组成的三级存储体系是为了解决存储器的速度、容量的成本之间的矛盾。

原码加减交替除法

2.5 定点除法运算 2.5.1 原码一位除法 设被除数[x]原=xf.x1x2…xn,除数[y]原=yf.y1y2…yn 则有[x÷y]原=(xf⊕yf)+(0.x1x2…xn/0.y1y2…yn) 对于定点小数,为使商不发生溢出,必须保证|x|<|y|;对于定点整数,为使商不发生溢出,必须保证双字|x|的高位字部分<|y|。 计算机实现原码除法,有恢复余数法和不恢复余数法两种方法。 1. 恢复余数法 由于每次商0之前都要先恢复余数,因此这种方法称之为恢复余数法。 [例2.40] x=0.1001,y=-0.1011,用原码恢复余数法计算x÷y。

2. 不恢复余数法 不恢复余数法又称加减交替法,它是恢复余数法的一种变形。设ri表示第i次运算后所得的余数,按照恢复余数法,有: 若ri>0,则商1,余数和商左移1位,再减去除数,即 ri+1=2ri-y 若ri<0,则先恢复余数,再商0,余数和商左移1位,再减去除数,即 ri+1=2(ri+y)-y=2ri+y 由以上两点可以得出原码加减交替法的运算规则: 若ri>0,则商1,余数和商左移1位,再减去除数,即ri+1=2ri-y; 若ri<0,则商0,余数和商左移1位,再加上除数,即ri+1=2ri+y。 由于此种方法在运算时不需要恢复余数,因此称之为不恢复余数法。原码加减交替法是在恢复余数的基础上推导而来的,当末位商1时,所得到的余数与恢复余数法相同,是正确的余数。但当末位商0时,为得到正确的余数,需增加一步恢复余数,在恢复余数后,商左移一位,最后一步余数不左移。 [例2.41] x=0.1001,y=-0.1011,用原码加减交替法计算x÷y。 由例2.41可以看出,运算过程中每一步所上的商正好与当前运算结果的符号位相反,在原码加减交替除法硬件设计时每一步所上的商便是由运算结果的符号位取反得到的。由例2.41还可以看出,当被除数(余数)和除数为单符号时,运算过程中每一步所上的商正好与符号位运算向前产生的进位相同,在原码阵列除法器硬件设计时每一步所上的商便是由单符号位运算向前产生的进位得到的。 [例2.42] x=-10110000,y=1101,用原码加减交替法计算x÷y。

电子科大《计算机组成原理》在线作业3.

14春13秋 13春电子科大《计算机组成 14春13秋 13春电子科大《计算机组成原理》在线作业3 1 2 试卷总分:100 测试时间:-- 单选题、单选题(共 25 道试题,共 100 分。) 1. 以下描述中基本概念不正确的是()。 A. PCI总线是层次总线 B. PCI总线采用异步时序协议和分布式仲裁策略 C. Futurebus+总线能支持64位地址 D. Futurebus+总线适合于高成本的较大规模计算机系统满分:4 分 2. 双端口 存储器所以能高速进行读写,是因为采用()。 A. 高速芯片 B. 两套相互独立的 读写电路 C. 流水技术 D. 新型器件满分:4 分 3. 在集中式总线仲裁中,()方式对电路故障最敏感。 A. 链式查询 B. 计数器定时查询 C. 独立请求满分:4 分 4. 存储单元是指()。 A. 存放一个机器字的所有存储元 B. 存放一个二进制信息位的存 储元 C. 存放一个字节的所有存储元的集合 D. 存放两个字节的所有存储元的集合 满分:4 分 5. 从信息流的传送效率来看,()工作效率最低。 A. 三总线系统 B. 单总线系统 C. 双总线系统 D. 多总线系统满分:4 分 6. 程序控制类指令的功能是()。 A. 进行算术运算和逻辑运算 B. 进行主存和CPU之间的数据传送 C. 进行CPU和I/O设备之间的数据传送 D. 改变程序执行的顺序满分:4 分 7. 带有处理器的设备一般称为()设备。 A. 智能化 B. 交互式 C. 远程通信 D. 过程控制满分:4 分 8. 至今为止,计算机中的所有信息仍以二进制方式表示的理由是()。 A. 节约元件 B. 运算速度快 C. 物理器件性能决定 D. 信息处理方便满分:4 分 9. 寄存器间接寻址方式中,操作数处在()。 A. 通用寄存器 B. 程序计数器 C. 堆栈 D. 主存 单元满分:4 分 10. 对计算机的产生有重要影响的是()。 A. 牛顿、维纳、图灵B. 莱布尼兹、布尔、图灵 C. 巴贝奇、维纳、麦克斯韦 D. 莱布尼兹、布尔、克雷 满分:4 分 11. 描述汇编语言特性的概念中,有错误的句子是()。 A. 对程序员 的训练要求来说,需要硬件知识 B. 汇编语言对机器的依赖性高 C. 用汇编语言编制程序的难度比高级语言小 D. 汇编语言编写的程序执行速度比高级语言快满分:4 分 12. 中断向量地址是()。 A. 子程序入口地址 B. 中断服务例行程序入口地址 C. 中断服务例行程序入口地址的指示器 D. 中断返回地址满分:4 分 13. 在微型机系 统中,外围设备通过()与主板的系统总线相连接。 A. 适配器 B. 设备控制器 C. 计数器 D. 寄存器满分:4 分 14. 某一SRAM芯片,其容量为512×8位,考

计算机组成原理实验

实验3 MIPS指令系统和MIPS体系结构 一.实验目的 (1)了解和熟悉指令级模拟器 (2)熟悉掌握MIPSsim模拟器的操作和使用方法 (3)熟悉MIPS指令系统及其特点,加深对MIPS指令操作语义的理解(4)熟悉MIPS体系结构 二. 实验内容和步骤 首先要阅读MIPSsim模拟器的使用方法,然后了解MIPSsim的指令系统。(1)、启动MIPSsim (2)、选择“配置”->“流水方式”选项,使模拟器工作在非流水方式。

(3)、参照使用说明,熟悉MIPSsim模拟器的操作和使用方法。 (4)、选择“文件”->“载入程序”选项,加载样例程序 alltest.asm,然后查看“代码”窗口,查看程序所在的位置。 (5)、查看“寄存器”窗口PC寄存器的值:[PC]= 0x00000000 。

(6)、执行load和store指令,步骤如下: 1)单步执行一条指令(F7)。 2)下一条指令地址为 0x00000004 ,是一条有(有,无)符号载入字节 (字节,半字,字)指令。 3)单步执行一条指令(F7)。 4)查看R1的值,[R1]=-128。

5)下一条指令地址为 0x00000008 ,是一条(有,无)符号载入字(字节,半字,字)指令。 6)单步执行1条指令。 7)查看R1的值,[R1]=128。 8)下一条指令地址为 0x0000000C ,是一条无(有,无)符号载入字(字节,半字,字)指令。 9)单步执行1条指令。

10)查看R1的值,[R1]=128。 11)单步执行1条指令。 12)下一条指令地址为 0x00000014 ,是一条保存字(字节,半字,字)指令。 13)单步执行一条指令。

计算机组成原理实验五存储器读写实验

实验五 存储器读写实验实验目的 1. 掌握存储器的工作特性。 2. 熟悉静态存储器的操作过程,验证存储器的读写方法。 二、实验原理 表芯片控制信号逻辑功能表

2. 存储器实验单元电路 芯片状态 控制信号状态 DO-D7 数据状态 M-R M -W 保持 1 1 高阻抗 读出 0 1 6116-^总钱 写人 1 0 总线-*6116 无效 报警 ^2-10 D7—DO A7—A0

團2-8存储器实验电路逻辑图 三、实验过程 1. 连线 1) 连接实验一(输入、输出实验)的全部连线。 2) 按逻辑原理图连接M-W M-R 两根信号低电平有效信号线 3) 连接A7-A0 8根地址线。 4) 连接B-AR 正脉冲有效信号 2. 顺序写入存储器单元实验操作过程 1) 把有B-AR 控制开关全部拨到0,把有其他开关全部拨到1,使全部信号都处 于无效 状态。 2) 在输入数据开关拨一个实验数据,如“ 00000001”即16进制的01耳 把IO-R 控制开关拨下,把地址数据送到总线。 3) 拨动一下B-AR 开关,即实现“1-0-1 ”产生一个正脉冲,把地址数据送地 址寄存器保存。 4) 在输入数据开关拨一个实验数据,如“ 10000000',即16进制的80耳 把IO-R 控 制开关拨下,把实验数据送到总线。 3. 存储器实验电路 0 O O 0 0 olo O O O O 0 00 OUTPUT L/O :W 8-AR £ ■」2 ■七 ol^Fgr' L P O 74LS273 A7- AO vz 0 o|o 0 r 6116 A7 INPUT D7-O0 [olololololololol T2

计算机组成原理作业习题集

名词解释: 1、主机 2、CPU 3、主存 4、存储单元 5、存储元件 6、存储字 7、存储字长 8、存储容量 9、机器字长 10、指令字长 11、PC 12、IR 13、CU 14、ALU 15、ACC 16、MQ 17、MAR 18、MDR 19、I/O 20、MIPS

1、说明计算机更新换代的依据。 2、设想计算机的未来。

名词解释: 1、总线 2、系统总线 3、总线宽度 4、总线带宽 5、时钟同步/异步 6、总线复用 7、总线周期 8、总线的通信控制 9、同步通信 10、比特率 11、分散连接 12、总线连接 13、存储总线 14、I/O总线 15、片内总线 16、数据总线 17、地址总线 18、通信总线 19、串行通信 20、并行通信

1、什么是全相联映射? 2、什么是近期最少使用算法? 3、什么是EPROM? 4、CACHE的特点是什么? 5、什么是动态存储器刷新? 6、半导体动态RAM和静态RAM存储特点最主要的区别是什么? 7、计算机的存储器采用分级存储体系的主要目的是什么? 8、有一主存—CACHE层次的存储器,其主存容量1MB,CACHE容量是64KB,每块8KB,若采用直接映射方式,(1)写出主存的地址和CACHE 地址格式,(2)计算主存的地址各部分的位数。(3)主存地址为25301H 的单元在主存的那一块,映射到CACHE的那一块?

9、有一个组相联映像CACHE由64个存储块构成,每组包含4个存储块,主存包含4096个存储块,每块由128字节组成,(1)写出主存的地址和CACHE地址格式 (2)计算CACHE和主存地址各部分的位数。(3)主存地址为48AB9H的单元在主存的那一块,映射到CACHE的那一块? 10、现有8K×8位的ROM芯片和8K×4位的RAM芯片组成存储器,按字节编址,其中RAM的地址为2000H~5FFFH,ROM的地址为A000H~DFFFH,(1)写出需要几片芯片组成此存储器。(2)画出此存储器结构图及与CPU的连接图。

计算机组成原理实验实验报告

计算机组成原理实验报告 学院信息与管理科学学院 专业班级计算机科学与技术2010级2班学生姓名毛世均 1010101046 指导教师郭玉峰 撰写日期:二○一二年六月四日

SA4=1 1.根据上边的逻辑表达式,分析58页图6-2的P1测试和P4测试两条指令的微地址转移方向。 P1测试:进行P1测试时,P1为0,其他的都为1, 因此SA4=1, SA3=I7,SA2=I6,SA1=,SA0=I4 微地址011001,下址字段为001000下址字段001000译码后,高两位不变,仍然为00,低四位受到机器指令的高四位I7-I4的影响。 机器指令的高四位为0000时,下一条微指令地址为001000,转到IN 操作。机器指令高四位0010时,下一条微指令地址为001010,转到MOV 操作。机器指令高四位为0001时,下一条微指令地址为001001,转到ADD 操作。机器指令高四位为0011时,下一条微指令地址为001011,转到OUT 操作。机器指令高四位为0100时,下一条微指令地址001100,转到JMP 操作 P4测试:进行P4测试时,P4为0,其他的都为1. 因此SA4=SA3=SA2=1,SA1=CA2,SA0=CA1 微地址000000,下址字段为010000. 010000被译码之后,高四位不变,0100低两位由CA2和CA1控制。CA2和CA1的值是由单片机的键盘填入控制的。 当实验选择CtL2=1时,CA2和CA1被填入0和1,这时低两位被译码电路翻译成01,所以下一条微地址就是010001,然后进入写机器指令的状态。当实验选择CtL2=2时,CA2和CA1被填入1和0,这时低两位被译码电路翻译成10,所以下一条微地址就是010010,然后进入读机器指令的状态。当实验选择CtL2=2时,CA2和CA1被填入1和1,这时低两位被译码电路翻译成 11,所以下一条微地址就是010011,然后进入运行机器指令的状态。 2.分析实验六中五条机器指令的执行过程。

相关主题
文本预览
相关文档 最新文档