微机习题含答案.docx
《微机习题含答案.docx》由会员分享,可在线阅读,更多相关《微机习题含答案.docx(34页珍藏版)》请在冰豆网上搜索。
微机习题含答案
第一章计算机基础知识
一、单项选择题
1.若十进制数为132.75,则其十六进制数为(B)
A.21.3B.84.CC.4.6D.6
2.若[X]补=11111,则其十进制真值为(C)
A.-31B.-15C.-1D.31
3.已知X=78,Y=-83则[X+Y]补=(C)
A.0F5HB.0A1HC.0FBHD.65H
4.已知[X]补=98H,则[X]补/2=(A)
A.0CCHB.4CHC.49HD.31H
二、填空题
1.(35)10=(23)16。
2.(15)10=(1111)2。
3.计算机的存储容量1KB=(1024)Byte。
4.计算机的存储容量1MB=(1024)KB。
5.计算机的存储容量1GB=(1024)MB。
6.电子计算机主要由(运算器)、(控制器)、(存储器)、(输入设备)和(输出设备)五部分组成。
7.(运算器)和(控制器)集成在一块芯片上,被称作CPU。
8.总线按其功能可分(数据总线)、(地址总线)和(控制总线)三种不同类型的总线。
三、简答题
1.简述微处理器、微计算机及微计算机系统三个术语的内涵。
答:
微处理器是微计算机系统的核心硬件部件,它本身具有运算能力和控制功能,对系统的性能起决定性的影响。
微处理器一般也称为CPU;微计算机是由微处理器、存储器、I/O接口电路及系统总线组成的裸机系统。
微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成一个完整的、独立的信息处理系统。
三者之间是有很大不同的,微处理器是微型计算机的组成部分,而微型计算机又是微型计算机系统的组成部分。
2.什么叫总线?
为什么各种微型计算机系统中普遍采用总线结构?
答:
总线是模块与模块之间传送信息的一组公用信号线。
总线标准的建立使得各种符合标准的模块可以很方便地挂在总线上,使系统扩展和升级变得高效、简单、易行。
因此微型计算机系统中普遍采用总线结构。
3.微型计算机系统总线从功能上分为哪三类?
它们各自的功能是什么?
答:
微型计算机系统总线从功能上分为地址总线、数据总线和控制总线三类。
地址总线用于指出数据的来源或去向,单向;数据总线提供了模块间数据传输的路径,双向;控制总线用来传送各种控制信号或状态信息以便更好协调各功能部件的工作。
第二章80X86微处理器的结构
一、填空题
1.8086/8088CPU执行指令中所需操作数地址由EU计算出16位偏移量部分送(BIU),由(BIU)最后形成一个(20)位的内存单元物理地址。
2.8086/8088CPU在总线周期的T1时刻,用A19/S6~A16/S3输出(20)位地址信息的最高(4)位,而在其他时钟周期,则输出(状态)信息。
3.8086/8088CPU复位后,从(0FFFF0H)单元开始读取指令字节,一般这个单元在(ROM)区中,在其中设置一条(跳转)指令,使CPU对系统进行初始化。
4.8086系统的存储体系结构中,1MB存储体分
(2)个库,每个库的容量都是(512K)字节,其中和数据总线D15~D8相连的库全部由(奇地址)单元组成,称为高位字节库,并用(
)作为此库的选通信号。
5.8086/8088系统中,可以有(64K)个段起始地址,任意相邻的两个段起始地址相距(16)个存储单元。
6.用段基值及偏移量来指明内存单元地址的方式称为(逻辑地址)。
7.通常8086/8088CPU中当EU执行一条占用很多时钟周期的指令时,或者在多处理器系统中在交换总线控制时会出现(空闲)状态。
8.8086CPU使用(16)根地址线访问I/O端口,最多可访问(64K)个字节端口,使用(20)根地址线访问存储单元,最多可访问(1M)个字节单元。
9.CPU取一条指令并执行该指令的时间称为(指令)周期,它通常包含若干个(总线)周期,而后者又包含有若干个(时钟)周期。
二、单项选择题
1.某微机最大可寻址的内存空间为16MB,其CPU的地址总线至少应有(B)条。
A.26B.28C.20D.22
2.8086/8088CPU的RESET引脚至少应维持(A)个时钟周期的正脉冲宽度才能有效复位。
A.4B.5C.2D.3
3.当RESET信号进入高电平状态时,将使8086/8088CPU的(D)寄存器初始化为0FFFFH。
A.SSB.DSC.ESD.CS
4.8086/8088CPU与慢速存储器或I/O接口之间进行数据传输,为了使传送速度匹配,有时需要在(C)状态之间插入若干等待周期TW。
A.T1和T2B.T2和T3C.T3和T4D.随机
5.8086/8088CPU中标志寄存器的主要作用是(D)。
A.检查当前指令的错误B.纠正当前指令执行的结果与错误
C.决定是否停机D.产生影响或控制某些后续指令所需的标志
6.8086最小模式下的存储器读周期中地址锁存发生在总线周期的(A)时刻。
A.T1B.T2C.T3D.T4
7.指令指针IP的作用是(A)。
A.保存将要执行的下一条指令的地址B.保存CPU要访问的内存单元地址
C.保存运算器运算结果内容D.保存正在执行的一条指令
8.8086CPU有两种工作模式,最小模式的特点是(A)。
A.CPU提供全部控制信号B.由编程进行模式设定
C.不需要8282收发器D.需要总线控制器8288
三、简答题
1.8086/8088CPU分为哪两个部分?
如何协调工作?
答:
EU是执行部件,主要的功能是执行指令和形成有效地址。
BIU是总线接口部件,与片外存储器及I/O接口电路传输数据,主要功能是形成实际地址、预取指令和存取操作数。
EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。
EU与BIU可分别独立工作,当EU不需BIU提供服务时,BIU可进行填充指令队列的操作。
2.8086/8088CPU的地址总线有多少位?
其寻址范围是多少?
答:
8086/8088CPU的地址总线共20位,最大可寻址1MB空间。
3.8086/8088CPU使用的存储器为什么要分段?
怎么分段?
答:
8086/8088为16位CPU,其内部的ALU、相关的地址寄存器(如SP、IP以及BX、BP、SI、DI)等都是16位的,因而对存储器地址的处理也只能是16位操作,即8086/8088的直接寻址能力在64KB范围内。
而实际上8086/8088有20条地址线,它的最大寻址空间为1MB。
这就产生了一个矛盾,即如何用16位的地址寄存器去表示一个20位的存储器物理地址?
实际使用的解决办法是:
将1MB大小的存储空间分为若干“段”,每段不超过64KB。
这样,一个20位的物理地址就可以用“16位段基址:
16位偏移量”的形式(称为逻辑地址)来表示了,其中段地址存放在8086/8088的段寄存器中。
4.8086/8088CPU中有几个通用寄存器?
有几个变址寄存器?
有几个指针寄存器?
通常哪几个寄存器亦可作为地址寄存器使用?
答:
8086/8088CPU中共有:
8个16位的通用寄存器AX、BX、CX、DX、BP、SP、SI、DI;
2个变址寄存器SI、DI;
2个指针寄存器BP、SP;
其中BX、BP、SI、DI亦可作地址寄存器。
5.Intel8086与8088有何区别?
答:
8086与8088的区别主要表现在以下几个方面:
第一、8086的指令队列可以容纳6个字节,每个总线周期在存储器中取出2个字节指令代码填入队列。
而8088只能容纳4个字节,且每个总线周期只能取出1个字节指令代码。
第二、8086外部数据总线宽度为16位,8088外部数据总线宽度只有8位。
注意:
8086和8088外部数据总线的宽度不同将导致扩展主存储器及输入/输出接口时系统地址线和数据线连接方式的不同。
第三、其他不同的引脚定义:
(1)AD15~AD0,在8086中为地址/数据复用,而在8088中AD15~AD8改为A15~A8只作地址线用;
(2)34、28号引脚定义不同。
6.8086/8088CPU工作在最小模式时:
当CPU访问存储器时,要利用哪些信号?
当CPU访问外设接口时,要利用哪些信号?
答:
8086/8088CPU工作在最小模式时,若访问存储器,需用到以下信号:
、ALE、
、DEN、READY、
、
、
、AD0~AD15、A19/S6~A16/S3。
若访问外设,需用到以下信号:
、ALE、
、DEN、READY、
、
、AD0~AD15。
7.试指出下列运算后的各个状态标志,并说明进位标志和溢出标志的区别:
(1)1278H+3469H
答:
CF=0AF=1ZF=0SF=0OF=0PF=1
(2)54E3H-27A0H
答:
CF=0AF=0ZF=0SF=0OF=0PF=0
(3)3881H+3597H
答:
CF=0AF=0ZF=0SF=0OF=0PF=1
(4)01E3H-01E3H
答:
CF=0AF=0ZF=1SF=0OF=0PF=1
其中,进位标志CF用于判别无符号数运算是否超出数的表示范围,而溢出标志OF用于判别带符号数运算是否超出数的表示范围。
奇偶标志PF只能判断结果低8位中“1”的个数为奇数还是偶数。
8.什么是逻辑地址?
什么是物理地址?
它们之间有什么联系?
各用在何处?
答:
逻辑地址由两个16位的部分即段基址和偏移量组成,一般在程序中出现的地址都表示为逻辑地址形式;物理地址是一个20位的地址,它是唯一能代表存储空间每个字节单元的地址,一般只出现在地址总线上。
由于8086/8088CPU中的寄存器只有16位长,所以程序不能直接存放20位的物理地址,而必须借助逻辑地址,即用两个16位的寄存器来表示物理地址。
他们之间的关系是:
物理地址=段基址*16+偏移量;另外,一个物理地址可对应多个逻辑地址。
9.设现行数据段位于存储器0B0000H~0BFFFFH单元,DS段寄存器内容为多少?
答:
DS段寄存器内容为0B000H。
10.在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?
答:
逻辑地址是在程序中对存储器地址的一种表示方法,由段基址和段内偏移地址两部分组成,都是16位的二进制代码,如1234H:
0088H。
偏移地址是指段内某个存储单元相对该段首地址的差值。
物理地址是8086芯片引线送出的20位地址码,物理地址=段基址*16+偏移地址,用来指出一个特定的存储单元。
11.给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C0E0H,求出该内存单元的物理地址。
答:
物理地址:
0C2EC0H。
12.8086/8088为什么采用地址/数据引线复用技术?
答:
考虑到芯片成本和体积,8086/8088采用40条引线的封装结构。
40条引线引出8086/8088的所有信号是不够用的,采用地址/数据线复用引线方法可以解决这一矛盾,从逻辑角度,地址与数据信号不会同时出现,二者可以分时复用同一组引线。
13.怎样确定8086的最大或最小工作模式?
答:
引线
的逻辑状态决定8086的工作模式,
引线接高电平,8086被设定为最小模式,
引线接低电平,8086被设定为最大模式。
14.8086基本总线周期是如何组成的?
答:
基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。
15.在基于8086的微计算机系统中,存储器是如何组织的?
存储器是如何与处理器总线连接的?
信号起什么作用?
答:
8086为16位微处理器,可访问1M字节的存储器空间;1M字节的存储器分为两个512K字节的存储体,分别命名为偶存储体和奇存储体;偶体的数据线连接D7~D0,“体选”信号接地址线A0;奇体的数据线连接D15~D8,“体选”信号接
信号;A0信号有效时允许访问偶体中的低字节存储单元,
信号有效时允许访问奇体中的高字节存储单元,实现8086的低字节访问、高字节访问及字访问。
16.有一个由20个字组成的数据区,其起始地址为610AH:
1CE7H。
试写出该数据区首末单元的实际地址PA。
首单元地址:
610A0H+1CE7H=62D87H
末单元地址:
62D87H+27H=62DAEH
17.有两个16位的字31DAH、5E7FH,它们在8086系统存储器中的地址为00130H和00135H,试画出它们的存储器示意图。
地址
内容
00130H
0DAH
00131H
31H
00132H
00133H
00134H
00135H
7F
00136H
5E
18.试说明8086CPU的控制引脚ALE的作用。
答:
8086的低位地址线与数据线复用,为保证地址线维持足够的时间,需使用ALE信号将低位地址线通过锁存器保存,以形成系统地址总线。
第三章80X86微处理器的指令系统
一、选择题
1.MOVAX,ES:
[1000H]源操作数的寻址方式是(B)
A.立即寻址B.直接寻址C.变址寻址D.基址寻址
2.MOVAX,ES:
COUNT[DI]源操作数的寻址方式是(C)
A.基址寻址B.立即寻址C.变址寻址D.基址变址寻址
3.MOVDX,COUNT[BP][DI]的源操作数的寻址方式是(D)
A.变址寻址B.基址寻址C.直接寻址D.基址变址寻址
4.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B)
A.AX,BX,CX,DXB.BX,BP,SI,DIC.SP,IP,BP,DXD.CS,DS,ES,SS
5.下列四组寄存器中,属于通用寄存器的是(A)
A.AX,BX,CX,DXB.SP,BP,IPC.SI,DI,FLAGSD.上属三者都是
6.指令指针寄存器是(A)
A.IP B.SPC.BPD.BX
7.指令MOVBX,MASK[BP],若MASK=3500H,SS=1200H,DS=1000H,BP=1000H,那么物理地址为(B)
A.17500H B.16500H C.14500H D.13500H
8.指令MOVAX,COUNT[BX],若COUNT=0400H,SS=1200H,DS=1000H,BX=5000H,那么物理地址为(C)
A.17400H B.17000H C.15400H D.14500H
9.8086/8088系统中,存储器是分段组织的,存储器物理地址计算式是(B)
A.段地址+偏移地址 B.段地址*10H+偏移地址
C.段地址*16H+偏移地址 D.段地址+10H*偏移地址
10.当程序顺序执行时,每取一条指令语句,IP指针增加的值是(D)。
A.1B.2C.3D.由指令长度决定的
11.下列属于合法的指令是(D)
A.MOVDS,ES B.MOV[SI],[DI]
C.MOVAX,BL D.MOV[DI],BL
12.下列传送指令中有语法错误的是(A)。
A.MOVCS,AXB.MOVDS,AX
C.MOVSS,AXD.MOVES,AX
13.当执行指令ADDAX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是(D)
A.表示结果中含1的个数为偶数 B.表示结果中含1的个数为奇数
C.表示该数为偶数 D.表示结果中低八位含1的个数为偶数
14.下面指令执行后,改变AL寄存器内容的指令是(D)。
A.TESTAL,02H B.ORAL,AL
C.CMPAL,BL D.ANDAL,BL
15.与MOVBX,OFFSETVAR指令完全等效的指令是(D)。
A.MOVBX,VAR B.LDSBX,VAR
C.LESBX,VAR D.LEABX,VAR
16.将DX的内容除以2,正确的指令是(C)。
A.DIV2 B.DIVDX,2
C.SARDX,1 D.SHLDX,1
17.为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是(C)。
A.NCCXJZMINUSB.SUBCX,OFFFFHJZMINUS
C.ANDCX,OFFFFHJZMINUSD.XORCX,OFFFFHJZMINUS
18.下面指令执行后,改变AL寄存器内容的指令是(D)。
A、TESTAL,02HB、ORAL,AL
C、CMPAL,BLD、ANDAL,BL
19.堆栈指针SP的内容是(B)
A.栈顶单元内容 B.栈顶单元地址 C.栈底单元内容 D.栈底单元地址
20.执行指令PUCHCX后堆栈指针SP自动(C)
A.+1 B.不操作 C.-2 D.-1
二、填空题
1.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOVAX,(SI+COUNT)中,源操作数的有效地址EA为( 20A8H),其物理地址为( 11488H )。
2.如JMP指令采用段间间接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是(IP ),而后两个字节存放的是( CS )。
3.已知
AX=0FF60H,CF=1
MOVDX,96
XORDH,0FFH
SUBAX,DX
执行上述指令序列后,AX=( 0 ),CF=( 0 )。
4.设寄存器AL,BL,CL中内容均为76H,
XORAL,0FH
ANDBL,0FH
ORCL,0FH
执行上述指令序列后,AL=( 79H),BL=( 06H)CL=( 7FH )。
5.执行下面指令序列后,结果是(AX=0FF82H)。
MOVAL,82H
CBW
6.MOVAX,7896H
ADDAL,AH
上述指令执行后,标志位CF和OF的值是(CF=1,OF=0)。
7.测试AL寄存器,如果最高位和最低位同时为0,则转L0,如果最高位和最低位只有一个为1,则转L1,如果最高位和最低位同时为1,则转L2,画出流程图,并写出程序段。
答:
参考
ROLAL,1
ANDAL,3
JZL0
SUBAL,3
JZL3
JMPL2
第四章汇编语言程序设计
一、选择题
1.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有(D)。
A、CMPB、SUBC、ANDD、MOV
2.测试BL寄存器内容是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是(B)。
A.TESTBL,4FH
JZNEXT
B.XORBL,4FH
JZNEXT
C.ANDBL,4FH
JZNEXT
D.ORBL,4FH
JZNEXT
二、填空题
1.下列程序段将AX中值乘以9,请将程序填写完整
(1)__________
MOVCL,3
(2)____________
POPBX
ADDAX,BX
答:
(1)PUSHAX
(2)SHLAX,CL
2.
MOVBL,64H
MOVCL,03H
XORAX,AX
AGAIN:
ADDAL,BL
ADCAH,0
DECCL
JNZAGAIN
问:
(1)该程序段完成的功能是:
将AX内容乘3送BX中
(2)AX=(012CH)。
3.设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。
TESTAX,8000H
( JEK1或JZK1 )
MOVPLW,BX
JMPDONE
K1:
( MOVPLW,A )
DONE:
4.下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH置0,否则AH置全1。
试把空白处填上适当指令。
( XORAH,AL)
ANDAH,08H
( JEZERO )
MOVAH,OFFH
JMPNEXT
ZERO:
MOVAH,0
NEXT:
……
5.下列程序段求数组ARRAY的累加和。
请将程序填写完整。
ARYDW45H,68H,…………,0ABC1H,9600H;共10项
COUNTDW10
(1)__________
MOVCX,COUNT
XORAX,AX
AGAIN:
ADDAX,[SI]
ADDSI,2
(2)____________
答:
(1)LEASI,AKY
(2)LOOPAGAIN
三、编程题
1.试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。
答:
BEGIN:
MOVAH,1
INT21H
CMPAL,’a’
JBSTOP
CMPAL,’z’
JASTOP
SUBAL,20H
MOVDL,AL
MOVAH,2
INT21H
JMPBEGIN
STOP:
RET
2.在给定个数的数中寻找最大值,放至指定的存储单元。
参考程序:
DATA SEGMENT
BUFFER DB 2,4,3,6,1,5
COUNT DW 6
MAX DB ?
DATA ENDS
CODE SEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVCX,COUNT
LEABX,BUFFER
MOVAX,[BX]
INCBX
DECCX
AGAIN:
CMPAX,[BX]
JGENEXT
MOVAX,[BX]
INCBX
NEXT:
INCBX
LOOPAGAIN
CODE ENDS
END START
第五章内存储器及其接口
一、选择题
1.下列(B)不是半导体存储器芯片的性能指标。
A.存储容量B.存储结构C.集成度D.最大存储时间
2.高速缓存由(B)构成。
A.SRAMB.DRAMC.EPROMD.硬磁盘
3.由2K×1bit的芯片组成容量为4K×8bit的存储器需要(D)个存储芯片。
A.2B.8C.32D.16
4.安排2764芯片内第一个单元的地址是1000H,则该芯片的最末单元的地址是(D)。
A.1FFFHB.17FFHC.27FFHD.2FFFH
5.一片容量为8KB的存储芯片,若用其组成1MB内存,需(C)片。
A.120B.124C.128