当前位置:首页 > 《微型计算机原理与接口技术》清华大学出版社 - 冯博琴 - 吴宁主编 - 课后答案
MEM2 DW 5566H,7788H SUM DW 2 DUP(?) DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG START: MOV AX,DSEG MOV DS,AX LEA BX,MEM1 LEA SI,MEM2 LEA DI,SUM MOV CL,2 CLC
AGAIN: MOV AX,[BX] ADC AX,[SI] MOV [DI],AX ADD BX,2 ADD SI,2 ADD DI,2 LOOP AGAIN HLT
CSEG ENDS END START
4.4试编写程序,测试AL寄存器的第4位(bit4)是否为0?
解: 测试寄存器AL中某一位是否为0,可使用TEST指令、AND指令、移位指令等几种方法实现。 如:TEST AL,10H JZ NEXT . . .
NEXT:…
或者: MOV CL,4 SHL AL,CL JNC NEXT .
NEXT:…
4.7执行下列指令后,AX寄存器的内容是多少? TABLE DW 10,20,30,40,50 ENTRY DW 3 . . .
MOV BX,OFFSET TABLE ADD BX,ENTRY
MOV AX,[BX] 解:(AX)=1E00H
4.12 画图说明下列语句分配的存储空间及初始化的数据值。 (1)DATA1 DB ?BYTE?,12,12H,2 DUP(0,?,3) (2)DATA2 DW 4 DUP(0,1,2),?,-5,256H 解: (1) 存储空间分配情况如图(a)所示。 (2) 存储空间分配情况如图(b)所示。
第5章存储器系统
5.1 内部存储器主要分为哪两类? 它们的主要区别是什么? 解: (1)分为ROM 和 RAM 。 (2)它们之间的主要区别是:
ROM在正常工作时只能读出,不能写入。RAM则可读可写。 断电后,ROM中的内容不会丢失,RAM中的内容会丢失。
5.6 若采用6264芯片构成上述的内存空间,需要多少片6264芯片? 解:每个6264芯片的容量位8KB,故需432/8=54片。
5.7 设某微型机的内存RAM区的容量位128KB,若用2164芯片构成这样的存储器,需多少2164芯片?至少需多少根地址线?其中多少根用于片内寻址?多少根用于片选译码? 解:
(1)每个2164芯片的容量为64K×1bit,共需128/64×8=16片。 (2)128KB容量需要地址线17根。 (3)16根用于片内寻址。 (4)1根用于片选译码。
注意,用于片内寻址的16根地址线要通过二选一多路器连到2164芯片,因为2164芯片是DRAM,高位地址与低位地址是分时传送的。
5.9 甚什么是字扩展?什么是位扩展?用户自己购买内存条进行内存扩充,是在进行何种存储器扩展? 解:
(1)当存储芯片的容量小于所需内存容量时,需要用多个芯片构成满足容量要求的存储器,这就是字扩展。
(2)当存储芯片每个单元的字长小于所需内存单元字长时,需要用多个芯片构成满足字长要求的存储模块,这就是位扩展。
(3)用户在市场上购买内存条进行内存扩充,所做的是字扩展的工作。
5.10 74LS138译码器的接线图如教材第245页的图5-47所示,试判断其输出端Y0#、Y3#、Y5#和Y7#所决定的内存地址范围。
解:因为是部分地址译码(A17不参加译码),故每个译码输出对应2个地址范围:
Y0#:00000H ~ 01FFFH 和 20000H ~ 21FFFH Y3#:06000H ~ 07FFFH 和 26000H ~ 27FFFH Y5#:0A000H ~ 0BFFFH 和 2A000H ~ 2BFFFH Y7#:0E000H ~ 0FFFFH 和 2E000H ~ 2FFFFH
5.11 某8088系统用2764 ROM芯片和6264 SRAM芯片构成16KB的内存。其中,ROM的地址范围为0FE000H~0FFFFFH,RAM的地址范围为0F0000H~0F1FFFH。试利用74LS138译码,画出存储器与CPU的连接图,并标出总线信号名称。
解:连接如下图所示。
5.12 叙述EPROM的编程过程,并说明EPROM和EEPROM的不同点。(不要求) 解:
(1)对EPROM芯片的编程过程详见教材第215~217页。 (2)EPROM与EEPROM的不同之处为: 。EPROM用紫外线擦除,EEPROM用电擦除。
。EPROM是整片擦除,EEPROM可以整片擦除,也可以逐个字节地擦除。
5.13 试说明FLASH EEPROM芯片的特点及28F040的编程过程。(不要求) 解:
(1)特点是:它结合了RAM和ROM的优点,读写速度接近于RAM,断电后信息又不会丢失。
(2)28F040的编程过程详见教材第222~223页。
第6章输入输出和中断技术
。
6.3 主机与外部设备进行数据传送时,采用哪一种传送方式,CPU的效率最高?(不要求)
解:使用DMA传送方式CPU的效率最高。这是由DMA的工作性质所决定的。 6.5 某输入接口的地址为0E54H,输出接口的地址为01FBH,分别利用74LS244和74LS273作为输入和输出接口。试编写程序,使当输入接口的bit1、bit4和bit7位同时为1时,CPU将内存中DATA为首址的20个单元的数据从输出接口输出;若不满足上述条件则等待。
解:首先判断由输入接口读入数据的状态,若满足条件,则通过输出接口输出一个单元的数据;之后再判断状态是否满足,直到20个单元的数据都从输出接口输出。
LEA SI,DATA ;取数据偏移地址 MOV CL,20 ;数据长度送CL AGAIN: MOV DX,0E54H
WAITT: IN AL,DX ;读入状态值
AND AL,92H ;屏蔽掉不相关位,仅保留bit1、bit4和bit7位状态 CMP AL,92H ;判断bit1、bit4和bit7位是否全为1
JNZ WAITT ;不满足bit1、bit4和bit7位同时为1则等待 MOV DX,01FBH MOV AL,[SI]
OUT DX,AL ;满足条件则输出一个单元数据 INC SI ;修改地址指针
LOOP AGAIN ;若20个单元数据未传送完则循环
6.14 单片8259A能够管理多少级可屏蔽中断?若用3片级联能管理多少级可屏蔽中断?(不要求)
解:因为8259A有8位可屏蔽中断请求输入端,故单片8259A能够管理8级可屏蔽中断。若用3片级联,即1片用作主控芯片,两片作为从属芯片,每一片从属芯片可管理8级,则3片级联共可管理22级可屏蔽中断。
6.17 已知(SP)=0100H,(SS)=3500H,(CS)=9000H,(IP)=0200H,(00020H)=7FH,(00021H)=1AH,(00022H)=07H,(00023H)=6CH,在地址为90200H开始的连续两个单元中存放一条两字节指
令INT 8。试指出在执行该指令并进入相应的中断例程时,SP、SS、IP、CS寄存器的内容以及SP所指向的字单元的内容是什么? 解:CPU在响应中断请求时首先要进行断点保护,即要依次将FLAGS和INT下一条指令的CS、IP寄存器内容压入堆栈,亦即栈顶指针减6,而SS的内容不变。INT 8 指令是一条两字节指令,故其下一条指令的IP=0200H+2=0202H。 中断服务子程序的入口地址则存放在中断向量表(8×4)所指向的连续4个单元中。所以,在执行中断指令并进入响应的中断例程时,以上各寄存器的内容分别为:
SP=0100H-6=00FAH SS=3500H
IP=[8×4]=1A7FH
CS=[(8×4)+2]=6C07H [SP]=0200H+2=0202H
第7章常用数字接口电路
7.10 某8255芯片的地址范围为A380H~A383H,工作于方式0,A 口、B 口为输出口,现欲将PC4置“0”,PC7置“1”,试编写初始化程序。
解:该8255芯片的初始化程序包括置方式控制字及C口的按位操作控制字。程序如下:
MOV DX,0A383H ;内部控制寄存器地址送DX MOV AL,80H ;方式控制字 OUT DX,AL
MOV AL,08H ;PC4置0 OUT DX,AL
MOV AL,0FH ;PC7置1 OUT DX,AL
7.11 设8255芯片的接口地址范围为03F8H~03FBH,A 组 B 组均工作于方式0,A 口作为数据输出口,C 口低 4 位作为控制信号输入口,其他端口未使用。试画出该片8255芯片与系统的电路连接图,并编写初始化程序。 解:8255芯片与系统的电路连接如图所示。
由题目知,不需对 C 口置位控制字,只需对8255置方式控制字,故其初始化程序如下:
MOV DX,03FBH MOV AL,81H OUT DX,AL
共分享92篇相关文档