微机原理题库 下载本文

内容发布更新时间 : 2024/5/9 3:25:28星期一 下面是文章的全部内容请认真阅读。

[键入文字]

分析:考查8086的指令系统

[键入文字] [键入文字]

解答:在8000H开始的长度为1000字节的字符串中查找‘S’,可以使用信息串的扫描指令SCASB,将字符‘S’放在AL中,将DI设置为8000H。 MOV DI,8000H MOV CX,1000 MOV AL,‘S’

MOV ADDR,0FFFFH GOON: SCASB

LOOPNZ GOON JNZ DONE DEC DI MOV ADDR,DI DONE: HLT

也可使用带条件重复前缀REP指令,前四条指令相同,后续指令如下:

CLD

REPNE SCASB ;CX≠0(没查完)和ZF=0(不相等)重复 JNZ DONE ;若ZF=0,表示没有找到,转出

DEC DI ;若ZF=1,则DI指向上个单元即字符‘S’的偏移地址 MOV ADDR,DI ;将偏移地址送到ADDR单元中

DONE: HLT

5.编程将BUF单元中的一个8位数乘以10,乘积放在ANS单元及其下的一个单元中(至少用3种方法)。 解答:(1)利用乘法指令,这是最直接的方法

MOV AL,BUF

MOV BL,10 MUL BL MOV ANS,AX HLT

(2)一个数乘以10就是对该数连续加10次,因此可以利用连续加法实现。

MOV AL,BUF

MOV CX,10 MOV AH,0

MOV DX,0

GOON:ADD DX,AX

DEC CX JNZ GOON MOV ANS,DX HLT

(3)用左移指令来实现,因为左移1次就是是乘以2,左移3次是乘以8,那么 2+2=10,所以可用移位实现乘10操作。

MOV AL,BUF MOV CL,3

SAL AL,1 ; 左移1位就是乘以2

MOV AH,AL ;将乘以2的结果存放在AH中 SAL AL,1 ; 再左移1位是乘以4 SAL AL,1 ; ADD AL,AH , ; HLT

31 21

[键入文字]

6. 将内存中DATA单元起始的100个单元中的字节数据排序。

[键入文字] [键入文字]

解答:100个单元中的字节数据由大到小排序,有多种方法,常用的方法为“冒泡法”排序。首先,所有相邻两单元的数依次两两比较,若下面的数大则不交换;若下面的数打,则两数交换位置。可以看出,第一轮共进行100-1=99次比较,最小的数排到了最后面。第二轮在前99个数中比较交换,共进行100-2=98次比较,次小的数排到了倒数第二位。如此进行,经过100-1=99轮比较,已经排好了次序。程序如下:

MOV BX ,OFFSET DATA MOV CX,100 DEC CX

LOOP1: MOV DI,CX LOOP2: MOV AX,[BX]

CMP AX,[BX+1] JGE NEXT XCHG AX,[BX+2] MOV [BX],AX

NEXT: INC BX

LOOP LOOP2 MOV CX,DI LOOP LOOP1 INT

7. 若在内存某一缓冲区中存放着若干个单元的用BCD码表示的十进制数。每—个单元中放两位BCD码,要求把它们分别转换为ASCII码。高位的BCD码转换完后放在地址较高的单元。

解答:转换公式:ASCII=BCD+30H,其算法是将源串和目的串的表首分别设两个指针。取BCD转ASCII后存入(先低位,后高位)

MOV SI,OFFSET BCDBUFF ;设置源地址指针

MOV CX,COUNT ;设计数初值

MOV DI,OFFSET ASCBUF ;设置目的地址指针

AGAIN:MOV AL,[SI]

MOV BL,AL

AND AL,0FH ;取低位BCD码 OR AL,30H ;转换成ASCII码 MOV [DI],AL ;存入

INC DI ;修改指针 MOV AL,BL PUSH CX MOV CL,4 SHR AL,CL

OR AL,30H ;高位转换成ASCII码 MOV [DI],AL ;存入 POP INC

CX

DI

INC SI ;修改指针 LOOP AGAIN HLT

22

[键入文字] [键入文字] [键入文字]

第4章 存储器系统

一.填空题

1.只读存储器主要分为固定只读存储器ROM、可编程的只读存储器PROM、 。 解答:可擦除可编程只读存储器EPROM。

2. DRAM为动态存储器,它是通过电容充电存储信息,由于 易使信息丢失,所以需要 解答:DRAM为动态存储器,它是通过电容充电存储信息,由于 电荷泄漏 易使信息丢失,所以需要 定时刷新

3.在“Cache——主存——辅存”三级存储体系中,“Cache——主存”结构的引入是为了解决 问题。“主存——辅存”结构的引入是为了解决 问题。 解答:速度 容量

4. Flash Memory 的汉语名称是 。

解答:闪速存储器。

5. 虚拟存储器是由 和 两级存储器系统组成,使用虚拟存储器是为了 。

解答:主存,辅存,提供更大的随机存储空间。

6. 某个RAM型存储器的地址线有14条,数据线有8条,则它的片内存储单元的个数应为 16 KB。

解答:地址线有14条,数据线8条,表示可被访问2个8位,即16K字节。

7. 8086/8088CPU微处理机外部地址线有 20 根,内存最大寻址能力是 1M 字节

8. 若用16K×1的芯片组成一个32K×8位的存储器,需要 个芯片,片内选址需 根地址线,存储器选址需 根地址线。

解答:16、14、1

9. 用16片32KB的存储器构成的存储空间,起始地址为48000H,结束地址为 。

解答:C7FFFH

10. 在8088CPU系统中选用74LS138译码器(如图1所示),系统中ROM存储器的地址范围为 和RAM存储器的地址范围为 。

14

解答:/Y0输出低电平时,A19~A13的信号为1011 000B,其余位为变址,所以ROM的地址范围为

23

[键入文字]

B0000H~B1FFFH。同理,RAM的地址范围为BC000H~BDFFFH。

二.选择题

1. 存储器的存取周期是指( C )。

A、存储器的读出时间 B、存储器的写入时间 C、存储器进行连续读和写操作所允许的最短时间间隔 D、存储器进行连续写操作所允许的最短时间间隔

2. 属于随机存储器RAM的是(D )

[键入文字] [键入文字]

A、只读存储器 B、移位寄存器 C、缓冲寄存器 D、静态存储器

3.计算机的主存储器一般是由 B 组成。

A、磁存储器 B、半导体存储器 C、寄存器 D、光盘存储器

4. FLSAH 存储器属于___A___。

a)只读存储器; b)随机存储器; c)动态存储器; d)静态存储器。

5.只读存储器能够存储___A_____。

a)程序代码和固定数据; b)程序运行过程中需要保存的临时数据; c)程序代码和临时数据; d)固定数据和临时数据。

6. 在计算机中,大量应用程序主要存放在 D 中。 A、微处理器 B、寄存器 C、存储器 D、硬盘

7. 在表示存储器的容量时,M的准确含义是 B 。

A、100个字节 B、1024K个字节 C、100K个字节 D、1024个字节

8. 断电后,计算机 C 中的数据将全部丢失。 A、硬盘 B、ROM和RAM C、RAM D、ROM

9. 一个存储器芯片有13根片内地址线,1根片选线,l根数据线,若要构成一个16K字节的存储体,需___ ___B__片这样的芯片。

A、40 B、16 C、64 D、32

10. 若总线地址为26位,则最大地址空间为( C )。 A、6M B、24M C、64M D、128M

11. 若用6264SRAM芯片(8K×8位)组成128KB的存储器系统,需要( A )片6264芯片。 A、16 B、24 C、32 D、64

12. 一个存储器芯片有13根片内地址线,有8根数据线,这个芯片的存储容量为( A ) A.8K B.4K C 16K D2K

三.分析题

24

[键入文字]

[键入文字] [键入文字]

1. 拟以Intel8088CPU为核心,构成微机存储器系统,要求及条件如下:

1)占用连续空间,总容量16KB,起始地址为2000H,其中ROM容量为8KB,占低地址区域,RAM容

量为8KB,占高地址区域;

2)系统设计所需要的译码器及与非门器件不受限制 3)现有存储器芯片:

EPROM: Intel2716 规格为2K×8; 静态RAM:Intel6264 规格为8K×8

试完成硬件线路的设计并写出各芯片的地址范围 解答:

根据题意,需Intel2716 4片; 片内A1-A11共11根地址线寻址 需Intel6264 1片; 片内用13根地址线A1-A13寻址 芯片选择由74LS138译码器输出Y0,Y1完成.

ROM芯片由RD信号(连OE)来完成数据读出. RAM芯片由RD信号(连OE)和WR(连WE端)来

完成数据读/写,A0,BHE用来区分数据线的低8位及高8位.

由于ROM芯片容量为2K×8位,RAM芯片容量为8K*8位,用A13和Y0输出进行二次译码,来选项择两组ROM芯片.

74LS138译码器的输入端C,B,A分别连地址线A16-A14,控制端G1, A17,A18,计算得到存储器的地址范围为:

ROM:2000H-5FFFH RAM: 6000H-EFFFH

D15~D8D7~D0G2A和G2B分别连M/IO和

D15~D8D7~D0A11~A1ABD7~D0A11~A1D7~D0A10~A0CEABA10~A0CEOEA14A15A16A17A18M/IOABCG2AG2BY02716Y1Y22716ABOEY7D7~D0G1A13~A1A12~A0CED7~D0 D15~D8D7~D0RDOEWE6264CE2WRBHEA0CE2

25