SJTU 《微型计算机组成原理》备考题

WechatIMG419.jpeg

填空题

1、将10101.101B转换为十进制数,结果为21.625D
2、17D转换为二进制数,结果为10001B
3、将11101.01B转换为八进制,结果为35.2 O
4、[-10]=11110110B
5、已知段寄存器的内容和偏移地址,写出其物理地址表达式物理地址=段寄存器内容×16+偏移地址
6、已知: (DS)=4000H, [1000H]=3355H。执行 MOV AX,[ 1000H]。执行后: (AX) =41000H
7、执行MOV AL,8AH;XOR AL,48H。指令执行结束后,AL中的内容为C2H
8、非屏蔽中断的中断向量号是2
9、系统总线分为:地址总线、数据总线和控制总线
10、执行MOV AX,NOT OFEH指令后,AX中的内容为0FF01H
11、一个具有 20 位地址和 32 位字长的存储器,它可存储4MB字节的信息。如果用 512k×8 位的 SRAM 芯片组成,则需要8片这种芯片。

简答题

1、存储器的存储周期和存取时间有什么不同?

存取时间是指从读/写命令发出,导数据传输操作完成所经历的时间;存取周期表示两次存储器访问所允许的最小时间间隔。存取周期大于等于存取时间。

2、数据VAR1、 VAR2、 VAR3以字的形式存放在数据段中,要求先将VAR1求补,再将VAR1和VAR2相“与”,然后对“与”的结果和VAR3求平均值。设VAR1=3625H,VAR2= =487AH,VAR3=19B4H。

算法分析如下:
(1) 先求VAR1的补;
(2) 再求VAR1和VAR2的逻辑“与” ;
(3) 最后将“与”的结果和VAR3相加后除以2, 得出平均值。
程序如下:
DATA SEGMENT
VAR1 DW 3625H
VAR2 DW 487AH
VAR3 DW 19B4H
RESULT DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS, AX
MOV AX, VAR1
NEG AX
AND AX, VAR2
ADD AX, VAR3
RCR AX, 1
MOV RESULT, AX
CODE ENDS
ENDS START

3、CPU是如何响应中断的?

当满足上述条件后,CPU 就响应中断,转入中断周期,此时 CPU 要完成以下操作:
(1)关中断
8080、8088 和 Z80 在 CPU 响应中断后,发出中断响应信号 INTA(或
M1.IORQ)的同时,内部自动地实现关中断。
(2)保留断点
CPU 响应中断,封锁 IP+1,且把 IP 和 CS 推入堆栈保留,以备中断处理
完毕后,能返回主程序。
(3)保护现场
为了使中断处理程序不影响主程序的运行,要把断点处有关寄存器的内
容和标志位的状态推入堆栈保护起来。
8080、8088 和 Z80 是由软件(即在中断服务程序中)把要用到的寄存
器的内容用 PUSH 指令推入堆栈的。
(4)给出中断入口,转入相应的中断服务程序
8080 和 8088 由中断源提供中断矢量形成中断入口地址(即中断服务程
序的起始地址),Z80 有三种不同的中断模式,故有不同的转入中断服务
程序的方法。
在中断服务程序完成后, 还要做下述的(5)、(6)两步。
(5)恢复现场
把所保存的各个内部寄存器的内容和标志位的状态,从堆栈弹出,送回
CPU 中的原来位置。这个操作在 8086、8088 和 Z80 中也是在服务程序
中用 POP 指令来完成的。
(6)开中断与返回
在中断服务程序的最后,要开中断(以便 CPU 能响应新的中断请求)
和安排一条返回指令,将堆栈内保存的 IP 和 CS 值弹出, 运行就恢
复到主程序。

4、简述DMA的主要特点。

DMA 是所有现代电脑的重要特色,他允许不同速度的硬件装置来沟通,而不需要依于 CPU 的大量 中断 负载。否则,CPU 需要从 来源 把每一片段的资料复制到暂存器,然后把他们再次写回到新的地方。在这个时间中,CPU 对于其他的工作来说就无法使用。DMA 传输将一个内存区从一个装置复制到另外一个, CPU 初始化这个传输动作,传输动作本身是由 DMA控制器来实行和完成。典型的例子就是移动一个外部内存的区块到芯片内部更快的内存去。像是这样的操作并没有让处理器工作拖延,反而可以被重新排程去处理其他的工作。DMA 传输对于高效能嵌入式系统算法和网络是很重要的。

5、简述8253的六种工作方式。

方式0: 一般用作请求中断源.
选定—->out变低—>WR(表示WR低电平有效)变低,在WR上升沿的下一个周期时读入,在gate为高电平的情况下开始减数操作(gate为地的情况,计数器将保持值不变),
方式1:一般用作输出固定时长的方波,比如定时器.
选定—>out变高—->输入n—>gate的上升沿开时启动,计数器减1工作—–>计数器为0,out回到gao电平,开始下一轮的工作.
如果执行过程中gate再一次上升沿,计数器恢复原值重新开始计数;如果工作过程插入新值,会马上触发gate,开始新值的工作
方式2:
和方式1差不多,只不过他n计数为零的时候,他只产生一次负脉冲,可作为一次信号,作为分频器使用.
方式3:
产生方波或者说稍微对称的方波.工作过程插入新值,马上按照新值进行工作c
方式4:
软件触发选通方波:
他和方式2一样,产生负脉冲,但好似只会产生一次,如果要第二次产生,需要重新装入.执行过程中如果插入心的数值,他也会马上按照新的数值进行工作.
方式5:
硬件触发:
和方式2 一样,不过他的触发一定是要gate的上升沿,所以每次叫硬件触发.

6、简述中断系统的功能

(1)实现中断及返回
当某一中断源发出中断申请时,CPU 能决定是否响应这个中断请求,若
响应此中断请求,CPU 必须在现行的指令执行完后,把断点处的 IP 和
CS 值、各个寄存器的内容和标志位的状态推入堆栈保留下来(保护断点
和现场), 然后才能转到需要处理的中断源的服务程序的入口,同时清
除中断请求触发器。
中断处理完后,再恢复被保留下来的各个寄存器和标志位的状态(恢复
现场),再恢复 IP 和 CS 值(恢复断点),使 CPU 返回断点,继续执行主
程序。
(2)能实现优先权排队
通常,在系统中有多个中断源,会出现两个或更多个中断源同时提出中
断请求的情况,这样就必须要设计者事先根据轻重缓急,给每个中断源
确定一个中断级别——优先权。
当多个中断源同时发出中断申请时,CPU 能找到优先权级别最高的中断
源, 响应它的中断请求;
在优先权级别最高的中断源处理完后,再响应级别较低的中断源。
(3)高级中断源能中断低级的中断处理
当 CPU 响应某一中断源的请求,在进行中断处理时,若有优先权级别更
高的中断源发出中断申请,则 CPU 要能中断正在进行的中断服务程序,
保留这个程序的断点和现场,响应高级中断,在高级中断处理完以后,
再继续进行被中断的中断服务程序。
而当发出新的中断申请的中断源的优先权级别与正在处理的中断源同
级或更低时,则 CPU 就先不响应这个中断申请,直至正在处理的中断服
务程序执行完以后才去处理新的中断申请。
由于引脚的限制,CPU 的中断请求线的数量是有限的,例如 8080 只有
一条中断请求线。
最简单的情况是只有一个中断源。

7、试述 DRAM 的工作特点,说明它有什么优缺点。

答:动态内存中所谓的”动态”,指的是当我们将数据写入 DRAM 后,经过一段时
间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。具体的工作过
程是这样的:一个 DRAM 的存储单元存储的是 0 还是 1 取决于电容是否有电荷,
有电荷代表 1,无电荷代表 0。但时间一长,代表 1 的电容会放电,代表 0 的电
容会吸收电荷,这就是数据丢失的原因;刷新操作定期对电容进行检查,若电量
大于满电量的 1/2,则认为其代表 1,并把电容充满电;若电量小于 1/2,则认
为其代表 0,并把电容放电,藉此来保持数据的连续性。
工作特点:
随机存取
所谓”随机存取”,指的是当存储器中的数据被读取或写入时,所需要的时间
与这段信息所在的位置或所写入的位置无关。相对的,读取或写入顺序访问
(Sequential Access)存储设备中的信息时,其所需要的时间与位置就会有关系
(如磁带)。
易失性
当电源关闭时 RAM 不能保留数据。
需要刷新
现代的随机存取存储器依赖电容器存储数据。电容器充满电后代表 1(二进
制),未充电的代表 0。由于电容器或多或少有漏电的情形,若不作特别处理,
数据会渐渐随时间流失。刷新是指定期读取电容器的状态,然后按照原来的状
态重新为电容器充电,弥补流失了的电荷。需要刷新正好解释了随机存取存储
器的易失性。
优缺点:
存贮原理:利用 MOS 管栅极电容可以存储电荷的原理,需刷新(早期:三管基本单
元;现在:单管基本单元) ●刷新(再生):为及时补充漏掉的电荷以避免存储的信息丢失,必须定时给栅极
电容补充电荷的操作
●刷新时间:定期进行刷新操作的时间。该时间必须小于栅极电容自然保持信息
的时间(小于 2ms)。 ●优点: 集成度远高于 SRAM、功耗低,价格也低
●缺点:因需刷新而使外围电路复杂;刷新也使存取速度较 SRAM 慢,所以在计算
机中,DRAM 常用于作主存储器。
尽管如此,由于 DRAM 存储单元的结构简单,所用元件少,集成度高,功耗低,
所以目前已成为大容量 RAM 的主流产品。

8、将十进制数4.75转换成二进制、八进制、十六进制数。

转二进制: 100.11
步骤(整数部分): 4+2=2余0,2+2=1余0,1:2=1余1,从下到上取余数为100
(小数部分): 0.75X2=1.5取整1,0.5X2=1取整1。
转八进制: 4.6
步骤:每位8进制对应3位二进制:十进制4.75=二进制100.11= (100). (110) =4.6
十六进制:4.C
步骤:每位16进制对应4位二进制:十进制4.75=二进制100.11= (0100) . (1100)=4.C

9、将十进制数2016转换成8421BCD码。

十进制2016= (0010 0000 0001 0110) 8421BCD

-------------本文结束感谢您的阅读-------------
0%