微机组成原理习题集带答案五Word文档格式.docx

上传人:b****2 文档编号:325425 上传时间:2023-04-28 格式:DOCX 页数:51 大小:529.88KB
下载 相关 举报
微机组成原理习题集带答案五Word文档格式.docx_第1页
第1页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第2页
第2页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第3页
第3页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第4页
第4页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第5页
第5页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第6页
第6页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第7页
第7页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第8页
第8页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第9页
第9页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第10页
第10页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第11页
第11页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第12页
第12页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第13页
第13页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第14页
第14页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第15页
第15页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第16页
第16页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第17页
第17页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第18页
第18页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第19页
第19页 / 共51页
微机组成原理习题集带答案五Word文档格式.docx_第20页
第20页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

微机组成原理习题集带答案五Word文档格式.docx

《微机组成原理习题集带答案五Word文档格式.docx》由会员分享,可在线阅读,更多相关《微机组成原理习题集带答案五Word文档格式.docx(51页珍藏版)》请在冰点文库上搜索。

微机组成原理习题集带答案五Word文档格式.docx

MOVAX,BX

AA1:

HLT

 

5.要求从外设71号中取一个数M,判断其值是否在10和20之间,即10≤M<

20.如果M≥20H,则送0FFH给外设73H;

如果M<

10,则送00H给外设73H;

如果10≤M<

20,则送88H给外设73H.

要求编写完整源程序实现上述功能(9分)

答:

程序如下:

;

---------程序段定义,不可省略

C1SEGMENT

START:

INAL,71H

CLC

CMPAL,10

JCLP1

CMPAL,20

JCLP2

MOVBL,0FFH

LP3:

MOVAL,BL

OUT73H,AL

INT21H

MOVAH,4CH

LP1:

MOVBL,00

JMPLP3

LP2:

MOVBL,88H

C1ENDS

ENDSTART

6.编一程序段,要求实现:

求两个多字节数之和,这两个数在10050H地址开始的内存单元中,连续存放,低位在小地址一端,结果放在这两个数之后。

设这两个多字节数均为8个字节。

(8分)

MOVAX,1000H

MOVDS,AX

MOVSI,50H

MOVDI,58H

MOVBX,60H

MOVCX,4

AA:

MOVAX,[SI]

ADCAX,[DI]

MOV[BX],AX

PUSHF

ADDSI,2

ADDDI,2

ADDBX,2

POPF

LOOPAA

HLT

7.要求编写完整源程序实现:

求1+2+3+·

·

+100的和,并将累加和保存在AX中。

(7分)

------堆栈段定义,本段定义可省略

S1SEGMENTSTACK

DB100DUP(0)

S1ENDS

ASSUME:

CS:

C1,SS:

S1

MOVCX,64H;

即将100给CX

XORAX,AX

CLC

A1:

ADCAX,CX

LOOPA1

MOVAH,4CH

INT21H

C1ENDS

ENDSTART

8. 

以NUM为首址的存储区中存有若干个字型数,其长度存于NUM1字节单元。

求出数据中的最大值,存入NUM2字单元。

MOVSI,OFFSETNUM

MOVCX,NUM1

AA2:

AA3:

INCSI

CMPAX,[SI]

JCAA2

LOOPAA2

9.设AX寄存器中有一个16位二进制数,编一程序,统计AX中“1”的个数,统计结果送CX中

解答:

START:

MOVCX,0

LOOP:

SUBAX,0

JZSTP

SALAX,1

JNCNOD

INCCX

NOD:

JMPLOOP

STP:

10.编一程序段,完成符号函数(-128≤x≤127):

1(x.>

0)

y=0(x=0)

-1(x<

假设x的值存放在DATAl中,y的值存放在DATA2中。

解答:

MOVAL,DATA1

ANDAL,AL

JGEBIGR

MOVAL,0FFH

MOVDATA2.AL

BIGR:

JEEQUL

MOVAL,1

MOVDATA2,AL

HLT

EQUL:

MOVDATA2,AL

9-1.编一程序段,实现下列功能

MOVAX,X

CMPAX,0

JGEAA1

MOVBL,0AH

JMPAA3

AA1:

JZAA2

MOVAL,01H

JMPAA3

MOVAL,0H

MOVY,AL

11.假设在数据段X_SEG、附加段Y_SEG和堆栈段Z_SEG中分别定义了字变量X,Y和Z。

试编制一完整的程序计算

XX+Y+Z

X-SEGSEGMENT

XDW?

X-SEGENDS

Z-SEGSEGMENT

ZDW?

Z-SEGEMDS

Y-SEGSEGMENT

YDW?

Y-SEGENDS

CODESEGMENT

MAINPROCFAR

ASSUMEES:

Y-SEG,CS:

CODE,DS:

X-SEG,SS:

Z-SEG

STARTPUSHDS

SUBAXAX

PUSHAX

MOVAX,Y_SEG

MOVES,AX

MOVAX,Z_SEG

MOVSS,AX

MOVAX,X_SEG

MOVDS,AX

MOVAX,DS:

X

MOVBX,ES:

Y

ADDAXBX

JOOVERFLOW

MOVBX,SS:

Z

ADDAX,BX

MOVDS:

X,AX

OVERFLOW:

RET

MAINENDP

CODEENDS

12.读下面程序段,请问:

在什么情况下,本段程序的执行结果是AH=0?

BEGIN:

INAL,5FH

TESTAL,80H

JZBRCHl

MOVAH,0

JMPSTOP

BRCHl:

MOVAH,0FFH

STOP:

AL中的最高位为1时。

13.读程序:

START:

INAL,20H

MOVBL,AL

INAL,30H

MOVCL,AL

MOVAX,0

ADLOP:

ADDAL,BL

ADCAH,0

DECCL

JNZADLOP

请问:

(1)本程序实现什么功能?

(2)结果在哪里?

完成20H*30H,结果在AX中。

14.请编一程序段完成AX*l0的任务(要求不准用乘法指令做)。

MOVBX,AX

MOVCL2

SHLAX,CL

ADDAX,BX

SHLAX,1

15.编程序使:

(1)AX寄存器低4位清零。

(2)BX寄存器低4位置“1”。

(3)CX寄存器低4位变反。

(4)用TEST指令测试DL寄存器位3、位6是否同时为0,若是,将0送DL;

否则l送DH。

解答:

1,ANDAX,0FFF0H

2,ORBX,000FH

3,XORCX,000FH

4,TESTDL,48H

JZLOOP

MOVDH,1

LOOP:

MOVDL,0

10.设一子程序求两个多字节数FIRST与SECOND之和,结果放在THIRD中,设这两个多字节数均为4个字节长

ADDSUBPROC

PUSHF

PUSHAX

PUSHBX

PUSHCX

PUSHSI

PUSHDI

LEASI,FIRST

LEADI,SECOND

LEABX,THIRD

MOVCX,2

ADCAX,[DI]

MOV[BX],AX

ADDSI,2

ADDDI,2

ADDBX,2

POPF

POPDI

POPSI

POPCX

POPBX

POPAX

ADDSUBENDP

八、接口芯片的综合编程题

(一)8255A

1.若要求从8255A的A端口输出数据82H,请编写8255A的初始化程序和数据输出程序。

现已知A口地址为80H,B口地址为81H,C口地址为82H,控制字寄存器地址为83H,8255A的方式控制字各位的含义如下表:

D7

D6

D5

D4

D3

D2

D1

D0

1

00:

端口A工作于方式0

01:

端口A工作于方式1

10、11:

端口A工作于方式2

0:

端口A输出

1:

端口A输入

C4~C7输出

C4~C7输入

端口B工作于方式0

端口B工作于方式1

端口B输出

端口B输入

C0~C3输出

C0~C3输入

参考程序如下:

MOVAL,10000000B;

置工作方式字,只要求了A是输出,其它任意,故都选用基本

工作方式

OUT83H,AL;

输出工作方式控制字到控制端口地址

MOVAL,82H;

将要输出的数值先给AL;

OUT80H,AL;

将数值送到A端口,其地址号为80H

2:

若A口方式2要求发两个中断允许,即PC4和PC6均需置位。

B口方式1要求使PC2置位来开放中断。

,8255的端口地址为60--63H,请写出其初始化程序。

MOVAL,0C4H

OUT63H,AL  ;

设置工作方式

MOVAL,09H;

PC4的置位控制字为00001001,即09H

PC4置位,A口输入允许中断

MOVAL,0DH;

PC6的置位控制字为00001101,即0DH

PC6置位,A口输出允许中断

MOVAL,05H;

PC2的置位控制字为00000101,即05H

PC2置位;

B口输出允许中断

3某系统要求使用8255A的A口方式0输入,B口方式0输出,C口高4位方式0输出,C口低4位方式0输入,8255的端口地址为60--63H。

请写出其初始化程序。

则控制字为:

10010001即91H

初始化程序为:

MOVAL,91H

OUT63H,AL

4:

若8255端口A工作于方式0输出,端口B工作于方式1输入,用PC2置位来自动开启STB选通信号,;

请写其初始化程序!

初始化8255A:

MOVDX,8255_CTRL;

8255A控制端口地址送DX

MOVAL,86H;

把所设的控制字送给AL

OUTDX,AL;

再将控制字从AL送到8255的控制端口;

MOVAL,05H;

把PC2置位的控制字00000101,即05H送给AL

MOVDX,AL;

置PC2=1,允许中断

5:

设8255A的控制口地址为00EEH,要求对端口C的PC7置1,则控制字00001111B=0FH,要求对端口C的PC3置0,控制字为00000110B=06H。

下面的程序可以实现上述要求:

MOVAL,0FH;

对PC7置1的控制字

MOVDX,00EEH;

控制口地址送DX

OUTDX,AL;

对PC7置1操作

MOVAL,06H;

对PC3置0的控制字

对PC3进行置0的操作

6.编一初始化程序,使8255A的PC5端输出一个负跳变。

如果要求PC5端输出一个负脉冲则初始化程序又是什么情况?

初始化程序:

MOVAL,0BH;

PC5置“1”控制字→AL

MOVDX,×

×

11B;

控制口地址→DX

OUTDX,AL;

置“1”控制字→控制寄存器

MOVAL,0AH;

PC5置“0”控制字→AL

置“0”控制字→控制寄存器

如果要求PC5输入一个负脉冲则再加两条指令

MOVAL,0BH

OUTDX,AL

7.设8255A与8086CPU相连,8255A芯片A口工作在方式1输出,B口工作在方式0输入,禁止A口中断,8255A芯片A口、B口、C口、控制口地址分别为FFF8H、FFFAH、FFFCH、FFFEH,请写出初始化程序。

本题没有告诉C口高4位与低4位的出入补充为C口高4位与低4位均为输出,则其控制字为10100010B=0A2H

MOVAL,0A2H

MOVDX,0FFFEH

OUTDX,AL

8.设8255端口地址为50H~56H中的偶地址,并设端口A工作在方式0输入,端口B工作在方式1输出,允许B口中断,端口C输出,对8255初始化编程。

其控制字为:

10010100B=0A4H

MOVAL,0A4H

OUT56H,AL

补充题:

假设8255A工作于方式0,且端口A和端口C的高4位输出,端口B和端口C低4位输入,设置该8255A的方式选择控制字,并进行初始化编程。

并写出从8255A的A端口输出数据7FH的数据输出程序语句。

已知A口地址为60H,B口地址为61H,C口地址为62H,控制字寄存器地址为63H,8255A的方式控制字各位的含义如下表:

(本题10分)

(二)8259A

1.某系统中设置三片8259A级联使用,一片为主8259A;

两片为从8259A;

它们分别接入主8259A的IR2和IR6端。

若已知当前主8259A和从8259A的IR3上各接有一个外部中断源,它们的中断类型码分别为A0H,B0H和C0H,已知它们的中断入口均在同一段中,其段基址为2050H,偏移地址分别为11A0H,22B0H和33C0H,所有中断都采用电平触发方式、完全嵌套、普通EOI结束,请

(1)画出它们的硬件连接图;

(2)编写全部初始化程序。

初始化程序:

MOVAL,19H

MOVDX,偶地址(主)

OUTDX,AL

MOVAL,0A0H

MOVDX,奇地址(主)

MOVAL,44H

MOVAL,11H

MOVAL,0B3H

MOVAL,22H

MOVDX,偶地址(主)

MOVAL,19H

MOVDX,偶地址(从1)

MOVAL,0B0H

MOVDX,奇地址(从1)

MOVAL,02H

MOVAL,0F7H

从2:

MOVAL,19H

MOVDX,偶地址(从2)

MOVAL,0C0H

MOVDX,奇地址(从2)

MOVAL,06H

STI

HH:

JMP11H

2.编一系统初始化程序,由8259A的IR0~IR4共五个中断源,中断类型码为4BH,4CH,4DH,4EH,4FH。

8259A端口地址为80H、81H。

允许它们以完全嵌套方式工作。

STT:

MOVAL,11H

MOVDX,80H

OUTDX,AL

MOVAL,4BH

MOVDX,81H

MOVAL,01H

MOVAL,0D0H

MOVAL,20H

(三).其它端口编程题

1.设状态端口地址为76H,数据端口地址为75H,外部设备是否准备好信息由D7位传送,D7=1为准备好,D7=0为未准备好(忙),请用查询方式写出:

CPU向外部传送数据的程序段。

LOP1:

INAL,76H

TESTAL,10H

JZLOP1;

测试语句准确(4分)

MOVAL,DATA

OUT75H,AL;

输出语句准确(4分)

HLT

一、选择题(单选或多选,每小题1分,共5分)

1.指令指针寄存器(EIP)中存放的是___D_____。

A.当前指令B.下一条要执行的指令

C.操作数地址D.下一条要执行指令的地址

2.MOVAX,[BX+SI]的源操作数的物理地址是___A_____。

A.(DS)×

16+(BX)+(SI)B.(ES)×

16+(BX)+(SI)

C.(SS)×

16+(BX)+(SI)D.(CS)×

3.对于下列程序段:

AGAIN:

MOVAL,[SI]

MOVES:

[DI],AL

INCSI

INCDI

LOOPAGAIN

也可用指令____.A____完成同样的功能。

A.REPMOVSBB.REPLODSB

C.REPSTOSBD.REPESCASB

注:

1.命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。

2.命题教师和审题教师姓名应在试卷存档时填写。

共4页第1页

绩西北工业大学命题专用纸

4.将累加器AX的内容清零的正确指令是_____A,B,C___。

A.ANDAX,0B.XORAX,AX

C.SUBAX,AXD.CMPAX,AX

5.可作简单输入接口的电路是____.A___。

A.三态缓冲器B.锁存器

C.反相器D.译码器

6.计算机中常用的BCD码C

A.是二进制数B.是十六进制数

C.是二进制编码的十进制数D.是不带符号数的二进制形式

7.将字变量ARRAY的偏移地址送寄存器BX的正确结果是___A_C___。

A.LEABX,ARRAYB.MOVBX,ARRAY

C.MOVBX,OFFSETARRAYD.MOVBX,SEGARRAY

8.将累加器AX的内容清零的正确指令是___A、B、C_____。

9.在汇编过程中不产生指令码,只用来指示汇编程序如何汇编的指令是___C__。

A.汇编指令B.机器指令

C.伪指令D.宏指令

10和外存相比,内存的特点是___A_____。

A.容量小、速度快、成本高B.容量小、速度快、成本低

C.容量大、速度快、成本高D.容量大、速度快、成本低

11.可作简单输入接口的电路是__A_____。

12,.对于掉电的处理,CPU是通过____C____来处理的。

A.软件中断B.可屏蔽中断

C.非屏蔽中断D.DMA

13,已知中断类型号为14H,它的中断向量存放在存储器的向量单元___A、C_____中。

A.00050H,00051H,00052H,00053H

B.00056H,00057H,00058H,00059H

C.0000:

0050H,0000:

0051H,0000:

0052H,0000:

0053H

D.0000:

0056H,0000:

0057H,0000:

0058H,0000:

0059H

14.一个8位D/A转换器的分辨能力可以达到满量程的___B____。

A.1/8B.1/256

C.1/16D.1/32

15.关于ADC0809,下列哪些说法正确:

B、C

A.只能接一个模拟量输入

B.可以接8个模拟量输入

C.某时刻只对一个模拟量采样

D.同时对8个模拟量采样

二、填空题(每空1分,共25分)

1.已知X=68,Y=12,若用8位二进制数表示,则[X+Y]补=_01010000B________,此时,OF=___0________;

[X-Y]补=___00111000B_____。

2.80486CPU的分页部件把____线性_______地址变为_____物理______地址。

3.80486CPU的工作方式有___实方式______保护方式____虚拟8086方式________。

4.串操作指令规定源串在_____数据____段中,用____(E)SI_____来寻址源操作数;

目的串在_____附加___段中,用_____(E)DI_____来寻址目的操作数。

5.以CX寄存器内容为计数对象的指令有____循环控制指令、串操作重复指令_。

6.输入/输出指令间接寻址必须通过___DX_____寄存器。

7.80486直接可以访问的内存空间是__4G___B,它的一段最大空间是__4G___B,一页空间是__4K___B。

8.CPU与外设传送数据时,输入/输出方式有____程序控制传送方式____,____中断控制传送方式______,___DMA方式________,_____I/O处理机方式______。

9.硬件中断可分为__可屏蔽中断_______和____非屏蔽中断_____两种。

10.8259A有____7_个命令字,3片8259A接成级联可管理____22___级中断。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2