微机原理习题汇编Word格式.docx
- 文档编号:16755723
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:38
- 大小:162.01KB
微机原理习题汇编Word格式.docx
《微机原理习题汇编Word格式.docx》由会员分享,可在线阅读,更多相关《微机原理习题汇编Word格式.docx(38页珍藏版)》请在冰豆网上搜索。
组三类,
6.AX,BX,CX,DX称为寄存器,可以存放16位的和;
也可以当做8个8位寄存器用,名称分别是、、、、、、、,这时只能存放8位的,不能存放。
7.SP,BP,SI和DI称为寄存器,只能以为单位使用,可以存放16位的
或。
8.SP称为寄存器,用来指示的偏移地址,与寄存器连用,用来确定堆栈中的某一存储单元的物理地址。
9.堆栈是按照规则存取信息的一种存储机构,用存放堆栈栈顶的偏移地址。
10.BP称为寄存器,可作为堆栈中的一个以便访问堆栈,可以和寄存器连用,用来确定堆栈中的某一存储单元的物理地址。
11.SI称为寄存器,DI称为寄存器,一般与寄存器连用,用来确定数据段中某一存储单元的物理地址。
另外,在字符串处理指令中,SI作为源变址寄存器,与
寄存器连用,用来确定源串在某一存储单元的物理地址,DI作为目的变址寄存器,与
寄存器连用,用来确定目标串在某一存储单元的物理地址。
12.DS,ES,SS,CS称为寄存器组,分别用来存放段、段、
段和段的段地址。
13.因为8086的地址线是20位,字长和内部寄存器都是16位,用这些寄存器只能寻址64KB,为此把1MB的寻址空间分成许多的逻辑段,每段最长为KB,用段寄存器存放逻辑段的首地址的高
16位,这个16位的地址被称为地址,而段内的相对地址用系统中的通用寄存器来存放,称为地址。
14.IP,FLAGS(PSW)被称为寄存器组,其中IP叫,用来存放
;
IP通常和CS一起连用,用来访问段中的。
FLAGS被称为寄存器,是一个位的寄存器,有个标志位,其中6个用来表示运算结果的状态,称为标志位,包括;
另外3个用来控制CPU的操作,叫控制标志,包括,能用指令设置的是和标志。
15.CF被称为标志位,
时,CF=1。
16.ZF被称为标志位,
时,ZF=1。
17.SF被称为标志位,
时,SF=1。
18.OF被称为标志位,
时,OF=1。
19.采用分段结构的存储器中,任何一个地址由段地址和偏移地址两个部分组成,它们都是无符号的16位二进制数。
20.存储器的一个基本存储单元的字长为位,称为字节(BYTE)。
每个字节用一个地址值作为唯一的标识,称为。
21.地址加法器构成物理地址的规则是(即逻辑地址转换为物理地址):
物理地址=地址×
10H+地址。
22.两个无符号数X和Y比较后(X-Y),状态标志位SF-0、CF=1、OF=0、ZF=0,据此可以判断出X<
Y
(XY的大小关系)。
二.选择题
1.某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为()
A.02120HB.20120HC.21200HD.03200H
2.8086/8088系列微机中,内存是按段存放信息,而段的起始地址的隐含规则是()
A.内在中任何一个物理地址B.指数地址
C.能被16整除的地址D.能被32整除的地址
3.下列关于8086CPU的总线接口单元BIU和执行单元EU的描述中,不正确的是()
A.EU负责指令译码并控制指令执行
B.BIU形成访问存储器的物理地址
C.BIU从存储器中取指令填充指令队列
D.EU和BIU独立工作,但取指令和执行指令不能同时进行
4CS和IP的内容表示的是()
A.可执行代码的长度B.当前正在执行的指令的地址
C.下一条将要取出的指令的地址D.代码段的首地址
2.2节8086引脚功能习题
1.
8086微处理器在最小模式下,并用信号线来控制输出地址是访问存储器还是访问I/O。
2.微机总线分为三类,即数据总线、地址总线、控制总线
3.若8086时钟频率为10MHz,则时钟周期为100ns,一个总线周期至少包含4个时钟周期。
1.8086/8088CPU数据总线是()
A、单向的B、三态并且是单向的
C、双向的D、三态并且是双向的
2欲使8086工作在最大方式,其引脚
应接()电平。
A、TTLB、CMOS
C、逻辑低D、逻辑高
2.8086/8088由最小工作方式改成最大工作方式应改接的引脚线是()。
A、
B、
C、
D、RQ/TGO、
3.在8086/8088系统中,对存储器进行读操作时,CPU输出控制信号有效的是()
A、M/
=0,
B、M/
=1,
C、M/
D、M/
=0,
4.8086/8088系统中,对存储器进行写操作时,CPU输出控制信号有效的是()
C、M/
=1,
D、M/
5.对I/O端口进行读操作时,CPU输出控制信号有效是()
B、
D、
6.对I/O端口写操作时,CPU输出控制信号有效是()
A.、
B、
7.在执行IN指令时,8086CPU有效的信号是()。
A.M/
=0B.M/
=0,
=0
C.M/
=0D.
=1
2.3节8086系统总线时序习题
1.执行一条指令所需要的时间称为指令周期。
2.当CPU从存储器或输入输出端口读或写一个单位(字节或字)指令或数据时,需要占用总线的时间称为总线周期。
3.CPU处理动作的最小单位是时钟周期。
4.1个总线周期至少包括4个时钟周期,一个时钟周期等于1个T周期。
5.8086CPU的时钟频率为5MHZ,则其T周期为200ns,则一个基本的读/写总线周期为800ns。
6.8086CPU用偶地址访问内存1个字时需占用1个总线周期,而用奇地址访问内存1个字操作需占用2个总线周期。
7.在8086的读/写总线周期中,可以通过在T3和T4周期之间插入TW(等待)周期的方法,使8086能和速度较慢的存储器/输入输出设备配合工作。
2.4节寻址方式习题
1.某内存单元逻辑地址为:
3000H:
1000H,其物理地址为31000H。
2.MOV[BX+SI],AX指令中,源操作数和目标操作数的寻址方式分别为基址变址、寄存器。
3.一条指令的机器码通常包含操作码和操作数两部分。
4.操作码表示指令执行数码操作,操作数表示参加操作的数或数的存放地址。
5.寻找操作数存放地址的方式称为寻址方式。
6.在立即寻址中,指令中直接给出8位或16位的操作数(立即数),它紧跟在操作码之后。
7.立即寻址方式的操作数经常用于寄存器赋初值,并且只能用于源操作数字段,不能用于目的操作数字段。
8.寄存器寻址中,操作数在寄存器中,指令中给出存放操作数的寄存器号。
对于16位操作数,寄存器可以是AX,BX,CX,DX,DI,SI,SP,BP等;
对于8位操作数,寄存器可以是AH,AL,BH,BL,CH,CL,DH,DL。
9.在直接寻址方式中,操作数的有效地址由指令直接给出,即EA=位移量。
10.在寄存器间接寻址方式中,操作数的有效地址由基址寄存器BX和BP提供或变址寄存器SI和DI提供。
11.在带位移的基址寻址方式中,操作数的有效地址由基址寄存器的值与位移量相加形成,即EA=基址+位移量。
12.在带位移的变址寻址方式中,操作数的有效地址由变址寄存器的值与位移量相加形成,即EA=变址+位移量。
13.在基址变址寻址方式中,操作数的有效地址由基址寄存器的值与变址寄存器的值相加形成,即EA=基址+变址。
14.在带位移的基址变址寻址方式中,操作数的有效地址由一个基址寄存器的内容,一个变址寄存器的内容和位移量之和形成,即EA=基址+变址+位移量。
15.在存储器寻址中,可以通过段超越前缀来修改提供段地址的寄存器。
16.教材P59习题2.6,2.7.2.8.
1.有指令MOVAX,0004H,指令中的立即数0004H是存储在()。
A.数据段B.堆栈段C.附加段D.代码段
2.5节指令习题
一.选择题
1.下列四条指令中,不能完成将AL寄存器清零的为()
A.CMPAL,ALB.SUBAL,ALC.XORAL,ALD.MOVAL,0
二.分析题
1.下面两条指令执行完后,AL=86H,标志位CF=1、OF=0。
MOVAL,86H
CMPAL,0C9H
2.假定AL=96H,BL=65H,依次执行ADDAL,BL和DAA指令后,AL=。
用8位补码表示数-126的机器码算术右移一位后的结果是。
3.若AL=10010101B,则执行指令SHRAL,1后,AL结果为,执行指令SARAL,1后,AL结果为。
4.ORG0200H
DATA1DW1234H,5678H
DATA2DW5DUP(?
)
COUNTEQU$-DATA1
┆
MOVAX,DATA1
MOVBX,OFFSETDATA1
MOVCX,COUNT
以上程序段执行后,AX=,BX=,CX=。
5.下列程序段执行后,AL=,计算机屏幕上显示的字符是。
(4分)
MOVCL,4
MOVAL,85H
MOVDL,72H
ADDAL,DL
DAA
XCHGAL,DL
SHRDL,CL
ORDL,30H
MOVAH,2
INT21H
6.XORBL,BL
MOVBH,BL
ADDBH,9
JZNEXT
XCHGBH,BL
JMPK
NEXT:
MOVBH,0FFH
K:
┆
以上程序段执行后,BH=,BL=。
7.分析程序,写出答案
DATASEGMENT
TABDW,10,20,30,40,50
ENTRYDW4
DATAENDS
MOVBX,OFFSETTAB;
BX=
ADDBX,ENTRY;
MOVAX,[BX];
AX=
8.ORG0200H
DA1DW1234H,5678H
MOVAX,DA1
MOVBX,OFFSETDAT
MOVCX,[BX]
MOVDL,BYTEPTRDA1+3
MOVDH,TYPEDA1
以上程序段执行后,AX=,BX=,CX=DX=。
9.设寄存器DS=1000H,SS=2000H,ES=3000H,AX=7EACH,BX=1234H,SP=7A00H,DI=2700H;
内存单元(11284H)=12H,(27A00H)=24H,(27A01H)=82H,(31254H)=0ABH,控制标志DF=0。
写出下列指令单独执行后,有关寄存器和内存单元的内容。
(1)MOVAL,50H[BX]AL=12H。
(2)POPBXBX=8224H。
SP=7A00H-2=79FEH。
(3)ORAL,ES:
[1254H]AL=0AFH。
(4)STOSBDI=2701H。
(32700H)=0ACH。
10.设寄存器DS=1000H,ES=2000H,SS=3000H,CS=4000H,AX=1234H,BX=5678H,SI=0100H,BP=0200H;
内存单元(15698H)=59H,(22000H)=24H,(22001H)=82H,(30300H)=0ABH,(30301H)=0CDH,控制标志CF=1。
数据段中字节型变量BUF的偏移地址为0020H.写出下列指令单独执行后,有关寄存器和内存单元的内容。
(1)MOVAX,[BP+SI]AX=0CDABH。
(2)ADCAX,ES:
[2000H]AX=9459H。
(3)CMPAL,89HAL=34H。
SF=1。
(4)ANDAL,BUF[BX]AL=10H。
(5)RCLAL,1AL=69H,CF=0。
(6)JMPWORDPTR[BP+SI]CS=4000H,IP=0CDABH。
11.设DS=4500H,SP=0100H,SS=4510H,AX=1234H,BX=0200H,(451FEH)=33H,(451FFH)=44H,(45200H)=97H,(45201H)=85H,下列指令独立执行后,写出有关寄存器和内存单元的内容。
(1)PUSHAX;
SP=__00FEH______,(451FEH)=_1234H____
(2)ADDAX,[BX];
AX=__97CBH_,CF=__0__
(3)ANDBYTEPTR[BX+1],7FH;
(45201H)=__05H___
(4)XCHGAL,[200H];
AL=__97H___,(45200H)=__34H__
12.下列程序段执行后,标志位CF=0,ZF=0,OF=0,SF=1,PF=1,试判断X、Y两个数的大小。
若X、Y为无符号数,则X>
Y,若X、Y为带符号数,则X<
Y。
13.指出下列指令的错误:
MOVAL,[BX+BP];
两个基址寄存器连用
ADD[BX],[BP+2];
两个操作数同时为存储单元中的数
14.VAR1和VAR2为字变量,判断下列指令是否正确,并指出错误之处。
(1)ADDVAR1,VAR2;
(2)SUBAL,VAR1;
操作数类型不匹配
(3)JMPBX;
√
(4)MOVCS,AX;
不能给CS送值
15.下列程序执行后,ABC和ABC+1字节单元的内容分别是39H和38H。
BUFDB89H
ABCDB2DUP(0)
MOVAL,BUF
MOVDL,AL
ANDAL,0FH
ORAL,30H
MOVABC,AL
MOVCL,4
SHRDL,CL
ORDL,30H
MOVABC+1,DL
16.程序段如下:
如从键盘输入字符’4’,则上述程序段执行后,BX=0003H,屏幕上显示的是字母D。
DATASEGMENT
BUFDB‘ABCD1234’
DATAENDS
MOVAH,01H
INT21H
ANDAL,0FH
DECAL
XORAH,AH
MOVBX,OFFSETBUF
ADDBX,AX
MOVDL,[BX]
MOVAH,02H
17.已知SS=2000H,分析下面程序段执行后,AX=1234H,BX=0F010H,SP=00FEH.
MOVAX,0F010H
MOVBX,1234H
MOVSP,0100H
PUSHAX
PUSHBX
ADDAX,BX
POPAX
POPBX
CALLSUB1
18.下列程序段执行后DX=4,BX=6,CX=0.程序的功能是统计BUF存储区中数字的个数放入DX中,其他字符放入BX中
DATASEGMENT
ORG1000H
BUFDB‘ABCD1234EF’
COUNTEQU$-BUF
DATAENDS
LEABX,BUF
MOVCX,COUNT
MOVDX,0
LOP1:
MOVAL,[BX]\
CMPAL,30H
JBLOP2
CMPAL,39H
JALOP2
INCDX
JMPLOP3
LOP2:
INCBX
LOP3:
LOOPLOP1
┆
19.以下程序执行后,以DA为首地址的前3个单元中的内容分别为84H、85H、86H。
DADB80H,81H,82H
LEABX,DA
MOVCX,3
MOVAL,[BX]
ORAL,84H
MOV[BX],AL
INCBX
LOOPNEXT
┆
20.执行下列指令后,CX,SI,AH和AL寄存器内容为多少?
该程序实现的功能是什么?
DATASEGMENT
BUFDB95,78,82,77
COUNTEQU$-BUF
…
MOVCX,COUNT
MOVAX,0
LEASI,BUF
LP:
ADDAL,[SI]
ADCAH,0
INCSI
LOOPLP
MOVDL,COUNT
DIVDL
试问:
(1)CX=0,SI=4,AH=0,AL=53H
(2)程序功能:
求BUF缓冲区中四个数的平均值,商在AL中,余数在AH中。
3.1—4节汇编语言的语句格式数据项表达式伪指令习题
2.标号与变量的属性中,相同的是段属性和偏移属性。
3.数据定义语句DW30DUP(‘A’,256,’CD’)定义的储存空间长度为180字节。
4.一个典型的指令语句由标号、指令助记符、操作数和注释4项组成。
5.若定义DADADW1234H,执行MOVBL,BYTEPTRDATA指令后,BL=34H。
6.有变量定义如下:
ORG0100H
VALDW‘AB’
(0100H)存放的数据为42H,(0101H)存放的数据为41H。
(十六进制表示)
7.已知数据段如下:
ADW50,70,70H
BDB‘ABCDEF’
CDW5DUP(?
DDB10DUP(?
问执行下列指令后,有关寄存器的内容。
MOVBX,OFFSETBBX=0006H
MOVAX,TYPEAAX=0002H
MOVBX,LENGTHABX=0001H
MOVCX,SIZEACX=0002H
MOVDX,TYPEBDX=0001H
MOVSI,LENGTHBSI=0001H
MOVDI,SIZEBDI=0001H
MOVAX,TYPECAX=0002H
MOVBX,LENGTHCBX=0005H
MOVCX,SIZECCX=000AH
MOVDX,TYPEDDX=0001H
MOVSI,LENGTHDSI=000AH
MOVDI,SIZEDDI=000AH
8.在下列逻辑段中,符号COUNT的值为。
A、3B、7C、8D、17
DATASEGMENT
BUF1DB23H,8CH,'
ABC'
4DUP(?
BUF2DW'
AB'
0,2DUP(?
COUNTEQU$-BUF1
DATAENDS
第3.6-3.9节汇编语言程序设计习题
3.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 习题 汇编