内容发布更新时间 : 2024/12/23 2:25:50星期一 下面是文章的全部内容请认真阅读。
[键入文字]
分析:考查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