微机原理经典课后作业,考试必考 下载本文

课后作业

第一章 作 业

1、若AX=AF7CH,BX=BEE7H,CPU分别执行加法指令和减法指令后各状态标志位的值是什么?

2、8086系统中存储器的逻辑地址和物理地址之间有什么关系? 3、设段地址为4ABFH,物理地址为50000H,求有效地址是什么?

4、设CS=3100H,DS=3140H,两个段的空间均为64K个单元,问两个段重叠区为多少个单元?两个段的段空间之和为多少?

5、在8086系统中,已知当前SS寄存器的内容为2345H,SP的内容0100H,请说明该堆栈段在存储器中的物理地址的范围。若当前堆栈段中已存有10个字节的数据,那么原来SP的内容是什么数值?

6、如果12MHz的振荡信号接至8284时钟输入端,其输出频率接8086/8088的CLK端。求在插入一个等待周期的情况下从内存读一个字节数据所需的最小时间。

7、现有8个字节的数据为:34H、45H、56H、67H、78H、89H、9AH、ABH,假定它们在存储器中的物理地址为400A5H~400ACH。若当前(DS)=4002H,求这8个数据的偏移地址。如要以最少时间读出这些数据,需要访问存储器多少次?每次读出的数据是什么?并用图示之。

8、 设段寄存器CS=2400H,指令指示器IP=6F30H,此时指令的物理地址PA是多少?指向这一物理地址的CS值和IP值是否是唯一的?

9、 什么叫总线周期?8086/8088系统中的总线周期由几个时钟周期组成?如果CPU的主时钟频率为25MHz,一个时钟周期是多少?一个基本总线周期是多少时间?

第三章 作 业

3-3 若80386的控制寄存器CR0中PG、PE全为1,则CPU当前所处的工作方式如何?

3-5 有一个段描述符,放在局部描述符表的第12项中,该描述符的请求特权级为2,求该描述符的选择子内容。

3-6 某一个段描述符的选择子内容为0531H,请解释该选择子的含义。 3-7在段页式管理中,若允许分页,则页的大小为多少?如果一个页面首地址为86B05000H,则上一页和下一页的页面首地址各为多少?

第四章 作 业

4-3 设有关寄存器及存储单元的内容如下:

(DS)=2000H,(BX)=0100H,(SI)=0010H,(21200H)=78H,(21201H)=56H,(20100H)=68H,(21110H)=ABH,(20110H)=F4H,(20111H)=CDH,(21120H)=67H 试问下列各指令执行完后,AL或AX寄存器的内容各是什么?各指令寻址方式是什么?

(1) MOV AX,1200H (2) MOV AL,BL (3) MOV AX,[1200H] (4) MOV AL,[BX] (5) MOV AL,1010H[BX] (6) MOV AX,[BX][SI] (7) MOV AL,1010H[BX][SI]

4-4 判断下列指令的正误,若是错误的,请说明原因。 (1) MOV AX,BH (2) MOV CH,CL (3) MOV [BP],[DI] (4) XCHG CS,AX (5) IN BX,DX (6) POP CS

4-6 设堆栈指针(SP)=1200H,(AX)=5566H,(BX)=7788H,下列指令执行后AX、BX及SP的内容各是什么? PUSH AX PUSH BX POP AX POP BX

4-7 设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶地址为多少?执行PUSH BX后,栈顶地址和栈顶两个字节的内容分别是什么? 4-8 试用3种指令序列实现字变量A、B的内容交换。

4-11 假设初值(AX)=4321H,(DX)=8765H,则下列程序执行完后,AX和DX中的内容分别是什么?

MOV SHL MOV SHL SHR OR

CL, 04H DX, CL BL, AH AX, CL BL, CL DL, BL

4-12 下面程序段在什么情况下执行结果是(AH)=0?

BEGIN:IN TEST JZ XOR JMP

BRCH1 AX,AX STOP

AL, 60H

AL, 80H

BRCH1:MOV AH, 0FFH STOP: HLT

4-15 假设在下列指令序列的括弧中分别填入指令: (1) LOOP (2) LOOPNZ (3) LOOPZ 是什么?

MOV AX, 00H MOV BX, 01H MOV DX, 02H MOV CX, 03H REPEAT:INC AX ADD BX, AX SHR DX, 1 ( ) HLT

4-16 编写程序段实现将AX的内容以相反的顺序装入BX中。(附加)

REPEAT REPEAT REPEAT

试给出在这3种情况下,当程序执行完后,寄存器AX、BX、CX和DX的内容分别

第五章 作 业

5-2 下列变量各占多少字节? A1 A2 A3 A4

5-3 下列指令完成什么功能?

MOV AX,00FFH AND 1122H+3344H MOV AL,15 GE 111B MOV AX,00FFH LE 255+6/5 AND AL,50 MOD 4

OR AX,0F00FH AND 1234 OR 00FFH 5-5 假设程序中的数据定义如下: PAR

DW ?

DB 16 DUP(?) DD ? EQU $-PAP

PNAME COUNT PLENTH

DW DB DB DB

23H,5876H

3 DUP(?),0AH,0DH,'$' 5 DUP(1234H,567890H) 4 DUP(3 DUP(1,2,'ABC'))

求PLENTH的值为多少?表示什么意义?

5-6 把3个连续存放的正整数,按递增次序重新存放在原来的3个存储单元中。 5-13 编写一个程序,将一个数组中正数与负数分成两个数组,并分别计算正数与负数的个数。

5-16在当前数据段偏移地址为DATAB开始的顺序80个单元中,存放着某班80名同学某门考试的成绩。(附加) 要求:

1)编写完整源程序统计大于等于90分、80~89分、70~79分、60~69分、小于60分的人数各为多少,并将结果放在同一数据段以BTRX开始的顺序单元中。 2)编写完整源程序求该班这门课程的平均成绩,并放在同一数据段的LEVT单元。 5-17 编写程序段实现根据AX寄存器中1的位置转向SUB0~SUB15这16个分支程序执行。设AX中最多只能有一个位为1。(附加)

第六章 作 业

6-8 已知一个SRAM芯片的容量为8KB×8,该芯片的地址线为多少条?数据线为多少条?

6-9 巳知一个DRAM芯片外部引脚信号中有4条数据线,7条地址线,计算其存储容量。

6-10 32MB×8的DRAM芯片,其外部数据线和地址线为多少条?

6-11 74LS138译码器的接线如图6.38所示,写出Y0、Y2、Y4、Y6所决定的内存地址范围。

图6.38 74LS138译码器的接线

6-12 某8086系统用2764ROM芯片和6264SRAM芯片构成32KB的内存。其中,RAM的地址范围为F8000H~FBFFFH,ROM的地址范围为FC000H~FFFFFH。试利用74LS138译码,画出存储器与CPU的连接图,并指出每片存储芯片的地址范围。(补充)

6-13 利用全地址译码将6264芯片接到8088系统总线上,地址范围为30000H~33FFFH,画出逻辑图,并将55H填满所有6264芯片后,再逐个单元检测若全部填充正确,则将AL置为77H,否则AL置为FFH。(补充)

6-14 若用2164芯片构成容量为128KB的存储器,需多少片2164?至少需多少根地址线? 其中多少根用于片内寻址?多少根用于片选译码?

第七章 作 业

7-10 设有一输入设备,其数据端口的地址为FFE0H,并从端口FFE2H提供状态,当其D0位为1时表明输入数据准备好。试编写采用查询方式进行数据传送的程序段,要求从该设备读取64个字节并输入到从2000H开始的内存中。 7-15 如下图,假设LED数码管为共阴管,且段a接数据的最低位,段dp(小数点)接最高位,请编写显示内存单元DS:[1200H]中数据(为1位非压缩BCD码)的程序段。(附加)

D0~D7 M/IO WR A7 A6 A5 A4 A3 A2 A1 A0 ≥1 ≥1 74LS273 CLK & ≥1 G G2A Y3 G2BC B A 同 向 驱 动

7-16 下图所示为一个I/O接口电路。(附加)

1)该接口的操作类型是(输入)还是(输出); 2)主机对其I/O的传送控制方式是什么? 3)图中信号IOR当执行什么指令时有效?

4)结合一次数据的I/O过程,写出有关的几条指令。

D Q > 选通 200H 201H 译 码 A0~A9 IOR

R Q EN 外设 D7 锁存 EN D0~D7

第八章 作 业

8-2 设某系统中CPU的寄存器和存储区的一段内容如下:

(20H)=3CH、(21H)=00H、(22H)=86H、(23H)=0EH、CS=2000H、IP=0010H、SS=1000H、SP=0100H、FLAGS=0240H 这时执行INT 8指令 (1) 程序转向何处执行?

(2) 堆栈栈顶6个内存单元的地址及内容分别是什么?

8-3 什么是中断向量?什么是中断向量表?若某外部可屏蔽中断的类型号为30H,则中断服务程序的入口地址为1020H:3040H,用8086汇编语言编程实现将该中断服务程序的入口地址装入中断向量表中。

8-7 若某8086系统采用单片8259A管理外部中断,其中的一个中断类型号为0DH,则它的中断向量地址指针是多少?这个中断源应接在8259A的哪个输入端上?若该中断服务程序的入口地址为D000H:3200H,则其向量区对应4个单元的数值依次是多少?

8-8 编写一段将8259A中的IRR、ISR、IMR的内容读出,存放到BUFFER开始的数据缓冲区去的程序段,设8259A的端口地址为30H、31H。

8-10 设目前系统的最高优先级为IR5,若执行OCW2命令,且命令中EOI=1、R=1、SL=0,试指出OCW2命令执行后,8259A的优先级排队顺序。若执行OCW2命令,且命令中EOI=1、R=1、SL=1,L2L1L0=011,则OCW2命令执行后,8259A的优先级排队顺序又是什么?

8-11 某8086最小系统中有两片8259A级联,主片8259A的一个端口地址为22H,中断类型号为08H~0FH。从片8259A的一个端口地址为A0H,中断类型号为70H~77H。主片的IR2引脚连接从片的INT引脚。采用非自动结束和非缓冲方式,中断请求信号都为电平触发。主片屏蔽IR2、IR4和IR5以外的中断源,从片屏蔽IR0、IR3和IR6以外的中断源。画出硬件连接图并分别编写主片8259A和从片8259A的初始化程序。

第九章 作 业(附加)

1、某8086系统有一片8253A芯片,利用通道0完成对外部事件计数,计满500次向CPU发中断申请。利用通道2输出周期为1s的方波。 要求: (1)试根据硬件连接图写出8253四个端口地址。

(2)试编写8253初始化程序。

8086 74LS138 8253

M/IO A0 A7 A6 A5 A4 A3 A2 A1 RD WR D7~D0 ≥1 G1 Y3 G2A G2B C B A CS CLK2 OUT2 GATE1 GATE2 GATE 0 1MHZ 1s +5V 外部事件输入 CLK0 A1 A0 OUT0 RD WR D7~D0 IR0 8259A INTR INTR

2、如下图所示8255A作为打印机接口,假设要打印的数据存放在内存开始的100个单元中,设8255A的四个端口地址分别为A0H,A2H,A4H,A6H。

(1)完成CPU与8255A的连接;

(2)写出CPU控制打印机的打印程序。

D0~D7 PB7 D7 RD ∫ 8086 ∫ WR PB0 最 D0 PC6 小 STB A0~A7 模 RESET PC2 式 BUSY

3、某8088微机系统以8255A作为接口,采集一组开关S2~S0的状态(高电平或低电平),然后它通过一组发光二极管D7~D0显示S2~S0输入的数字,(如S2~S0输入000时,则发光二极管D0点亮。依次类推当S2~S0输入111时,则发光

二极管D7点亮),已知8255A的四个端口地址分别为D0H,D1H,D2H,D3H。

要求:(1)试画出8088和8255A的硬件连接图。

(2)写出8255A的初始化程序段。 (3)编写一段程序实现题目要求的功能。

≥1 D0~D7 PA7 RD PA 6 WR ┇ CS PA0 +5V 8255A PB2 A1 PB1 A0 PB0 RESET ┇ ┇