微计算机技术答案word版.docx
- 文档编号:24448610
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:30
- 大小:42.82KB
微计算机技术答案word版.docx
《微计算机技术答案word版.docx》由会员分享,可在线阅读,更多相关《微计算机技术答案word版.docx(30页珍藏版)》请在冰豆网上搜索。
微计算机技术答案word版
《微计算机技术》形成性考核册参考答案
第1章绪论
1. 计算机分那几类?
各有什么特点?
答:
传统上分为三类:
大型主机、小型机、微型机。
大型主机一般为高性能的并行处理系统,存储容量大,事物处理能力强,可为众多用户提供服务。
小型机具有一定的数据处理能力,提供一定用户规模的信息服务,作为部门的信息服务中心。
微型机一般指在办公室或家庭的桌面或可移动的计算系统,体积小、价格低、具有工业化标准体系结构,兼容性好。
2. 简述微处理器、微计算机及微计算机系统三个术语的内涵。
答:
微处理器是微计算机系统的核心硬件部件,对系统的性能起决定性的影响。
微计算机包括微处理器、存储器、I/O接口电路及系统总线。
微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成一个完整的、独立的信息处理系统。
3. 80X86微处理器有几代?
各代的名称是什么?
答:
从体系结构上可分为3代:
8080/8085:
8位机。
8086/8088/80286:
16位机。
80386/80486:
32位机。
第2章微处理器结构及微计算机的组成
1. 8086是多少位的微处理器?
为什么?
答:
8086是16位的微处理器,其内部数据通路为16位,对外的数据总线也是16位。
2. EU与BIU各自的功能是什么?
如何协同工作?
答:
EU是执行部件,主要的功能是执行指令。
BIU是总线接口部件,与片外存储器及I/O接口电路传输数据。
EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。
EU与BIU可分别独立工作,当EU不需BIU提供服务时,BIU可进行填充指令队列的操作。
3. 8086/8088与其前一代微处理器8085相比,内部操作有什么改进?
答:
8085为8位机,在执行指令过程中,取指令与执行执令都是串行的。
8086/8088由于内部有EU和BIU两个功能部件,可重叠操作,提高了处理器的性能。
4. 8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?
答:
执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。
AX、BX、CX、DX一般作为通用数据寄存器。
SP为堆栈指针存器,BP、DI、SI在间接寻址时作为地址寄存器或变址寄存器。
总线接口部件设有段寄存器CS、DS、SS、ES和指令指针寄存器IP。
段寄存器存放段地址,与偏移地址共同形成存储器的物理地址。
IP的内容为下一条将要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。
5. 8086对存储器的管理为什么采用分段的办法?
答:
8086是一个16位的结构,采用分段管理办法可形成超过16位的存储器物理地址,扩大对存储器的寻址范围(1MB,20位地址)。
若不用分段方法,16位地址只能寻址64KB空间。
6.给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。
答:
物理地址:
320F8H。
7.8086/8088为什么采用地址/数据引线复用技术?
答:
考虑到芯片成本,8086/8088采用40条引线的封装结构。
40条引线引出8086/8088的所有信号是不够用的,采用地址/数据线复用引线方法可以解决这一矛盾,从逻辑角度,地址与数据信号不会同时出现,二者可以分时复用同一组引线。
8. 8086与8088的主要区别是什么?
答:
8086有16条数据信号引线,8088只有8条;8086片内指令预取缓冲器深度为6字节,8088只有4字节。
9. 怎样确定8086的最大或最小工作模式?
最大、最小模式产生控制信号的方法有何不同
答:
引线MN/MX#的逻辑状态决定8086的工作模式,MN/MX#引线接高电平,8086被设定为最小模式,MN/MX#引线接低电平,8086被设定为最大模式。
最小模式下的控制信号由相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供,8288的输入为8086的S2#~S0#三条状态信号引线提供。
10. 8086被复位以后,有关寄存器的状态是什么?
微处理器从何处开始执行程序?
答:
标志寄存器、IP、DS、SS、ES和指令队列置0,CS置全1。
处理器从FFFFOH存储单元取指令并开始执行。
11. 8086基本总线周期是如何组成的?
各状态中完成什么基本操作?
答:
基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。
在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写命令信号RD#、WR#及其它相关信号;T3期间完成数据的访问;T4结束该总线周期。
12. 结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。
答:
ALE为外部地址锁存器的选通脉冲,在T1期间输出;M/IO#确定总线操作的对象是存储器还是I/O接口电路,在T1输出;DT/R#为数据总线缓冲器的方向控制信号,在T1输出;RD#为读命令信号;在T2输出;READY信号为存储器或I/O接口“准备好”信号,在T3期间给出,否则8086要在T3与T4间插入Tw等待状态。
13. 8086中断分哪两类?
8086可处理多少种中断?
答:
8086中断可分为硬件中断和软件中断两类。
8086可处理256种类型的中断。
14. 8086可屏蔽中断请求输入线是什么?
“可屏蔽”的涵义是什么?
答:
可屏蔽中断请求输入线为INTR;“可屏蔽”是指该中断请求可经软件清除标志寄存器中IF位而被禁止。
15. 8086的中断向量表如何组成?
作用是什么?
答:
把内存0段中0~3FFH区域作为中断向量表的专用存储区。
该区域存放256种中断的处理程序的入口地址,每个入口地址占用4个存储单元,分别存放入口的段地址与偏移地址。
16.8086如何响应一个可屏蔽中断请求?
简述响应过程。
答:
当8086收到INTR的高电平信号时,在当前指令执行完且IF=1的条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS、IP内容进入堆栈,请除IF、TF;8086将类型码乘4后得到中断向量表的入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序,完成了INTR中断请求的响应过程。
17.什么是总线请求?
8086在最小工作模式下,有关总线请求的信号引脚是什么?
答:
系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输时,需向系统请求总线的控制权,这就是一个总线请求的过程。
8086在最小工作模式下有关总线请求的信号引脚是HOLD与HLDA。
18.“8086执行了一个总线周期”是指8086做了哪些可能的操作?
基本总线周期如何组成?
在一个典型的读存储器总线周期中,地址信号、ALE信号、RD#信号、数据信号分在
何时产生?
答:
(1)“8086执行了一个总线周期”是指:
8086可能从片外的存储器取指令,
8086可能对片外的存储器或I/O接口进行了一次读/写数据的操作。
(2)基本总线周期由T1至T4四个时钟周期组成。
(3)在一个典型的读存储器总线周期中,
地址信号:
在T1周期内产生
ALE信号:
在T1周期内产生
RD#信号:
在T2周期内产生
数据信号:
一般在T3周期内产生,若存储器在T3内来不及提供数据,8086
会在总线周期中插入等待状态Tw,存储器将在某Tw中给出数据。
第3章8086指令系统及寻址方式(第二部分)
1. 根据下列要求编写一个汇编语言程序:
:
(1)代码段的段名为COD_SG
(2)数据段的段名为DAT_SG
(3)堆栈段的段名为STK_SG
(4)变量HIGH_DAT所包含的数据为95
(5)将变量HIGH_DAT装入寄存器AH,BH和DL
(6)程序运行的入口地址为START
答案:
DAT_SG SEGEMNT
HIGH_DAT DB 95
DAT_SG ENDS
STK_SG SEGMENT
DW64 DUP(?
)
STK_SG ENDS
COD_SG SEGMENT
MAIN PROC FAR
ASSUME CS:
COD_SG, DS:
DAT_SG, SS:
STK_SG
START:
MOV AX, DAT-SG
MOV DS, AX
MOV AH, HIGH_DAT
MOV BH, AH
MOV DL, AH
MOV AH, 4CH
INT 21H
MAIN ENDP
COD_SG ENDS
ENDSTART
2. 指出下列程序中的错误:
STAKSGSEGMENT
DB100 DUP(?
)
STA_SGENDS
DTSEGSEGMENT
DATA1DB?
DTSEGEND
CDSEGSEGMENT
MAINPROCFAR
START:
MOVDS,DATSEG
MOV AL,34H
ADD AL,4FH
MOV DATA,AL
STARTENDP
CDSEGENDS
END
答案:
改正后:
STAKSGSEGMENT
DB100 DUP(?
)
STAKSGENDS
DTSEG SEGMENT
DATA1 DB ?
DTSEGENDS
CDSEG SEGMENT
MAIN PROC FAR
ASSUME CS:
CDSEG, DS:
DTSEG, SS:
STAKSG
START:
MOVAX, DTSEG
MOV DS, AX
MOV AL, 34H
ADD AL, 4FH
MOV DATA1, AL
MOV AH, 4CH
INT 21H
MAINENDP
CDSEG ENDS
END START
3. 将下列文件类型填入空格:
(1) .obj
(2) .exe (3) .crf (4) .asm (5) .lst (6) .map
编辑程序输出的文件有______________________________________;
汇编程序输出的文件有______________________________________;
连接程序输出的文件有______________________________________。
答案:
编辑程序输出文件:
(4)
汇编程序输出文件:
(1), (3), (5)
连接程序输出文件:
(2), (6)
4. 下列标号为什么是非法的?
(1) GET.DATA
(2) 1-NUM
(3) TEST-DATA
(4) RET (5) NEW ITEM
答案:
非法标号:
(1)因为‘.’不允许作标号
(2)第一个字符不能为数字
(3)不允许出现‘-’(可以是“_")
(4)不能是保留字,如助记符
(5)不能有空格
5. 下面的数据项定义了多少个字节?
DATA_1DB6 DUP(4 DUP(0FFH))
答案:
24字节
6. 对于下面两个数据段,偏移地址为10H和11H的两个字节中的数据是一样的吗?
为什么?
①DTSEGSEGMENT
ORG10H
DATA1DB72H
DB 04H
DTSEG ENDS
②DTSEGSEGMENT
ORG 10H
DATA1 DW 7204H
DTSEG ENDS
答案:
不一样. 分别是72H, 04H和04H, 72H. 存储字时低8位存在低字节,高8位存在高字节.
7. 下面的数据项设置了多少个字节?
(1) ASC_DATADB‘1234’
(2) HEX_DATADB1234H
答案:
(1) 设置了4个字节
(2) 设置了2个字节
8. 执行下列指令后, AX寄存器中的内容是什么?
TABLEDW10,20,30,40,50
ENTRY DW 3
.
.
.
MOVBX,OFFSET TABLE
ADD BX,ENTRY
MOV AX,[BX]
答案:
(AX)=40
9. 指出下列指令的错误:
(1) MOVAH,BX
(2) MOV [SI],[BX]
(3) MOV AX,[SI][DI]
(4) MOV AX,[BX][BP]
(5) MOV [BX],ES:
AX
(6) MOV BYTE PTR[BX],1000
(7) MOV AX,OFFSET [SI]
(8) MOV CS,AX
(9) MOV DS,BP
答案:
(1) 源、目的字长不一致
(2) 源、目的不能同时为存贮器寻址方式
(3) 基址变址方式不能有 SI和DI的组合
(4) 基址变址方式不能有 BX和BP的组合
(5) 在8086寻址方式中,AX不能作为基址寄存器使用,而且源、目的不能同时为存贮器寻址方式
(6) 1000超出一个字节的表数范围
(7) OFFSET只用于简单变量,应去掉
(8) CS不能作为目的寄存器
(9) 段地址不能直接送入数据段寄存器
10. 请写出下述两条指令执行后, BX寄存器中的内容。
DATASEGMENT
TABLE_ADDR DW 1234H
DATAENDS
.
.
.
MOVBX, TABLE_ADDR
LEA BX, TABLE_ADDR
答案:
MOVBX,TABLE_ADDR; 执行后(BX)=1234H
LEABX,TABLE_ADDR; 执行后(BX)=OFFSET TABLE_ADDR
11. 设(DS)=1B00H, (ES)=2B00H, 有关存储器地址及其内容如
右图所示,请用两条指令把X装入AX寄存器。
1B00:
2000H 8000H
1B00:
2002H 2B00H
.
.
2B00:
8000H X
答案:
LES BX, [2000H]
MOV AX, ES:
[BX]
12.假如在程序的括号中分别填入指令:
(1)LOOPL20
(2)LOOPNEL20(3)LOOPEL20
试说明在三种情况下,当程序执行完后,AX、BX、CX、DX四个寄存器的内容分别是什么?
TITLEEXLOOP.COM
CODESGSEGMENT
ASSUMECS:
CODESG,DS:
CODESG.SS:
CODESG
ORG100H
BEGIN:
MOVAX,01
MOVBX,02
MOVDX,03
MOVCX,04
L20:
INCAX
ADDBX,AX
SHRDX,1
()
RET
CODESGENDS
ENDBEGIN
答案:
(1)(AX)=5(BX)=16(CX)=0(DX)=0
(2)(AX)=2(BX)=4(CX)=3(DX)=1
(3)(AX)=3(BX)=7(CX)=2(DX)=0
13.假设(CS)=3000H,(DS)=4000H,(ES)=2000H,(SS)=5000H,(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,.(SP)=0FFFEH,(CF)=1,(DF)=1,请写出下列各条指令单独执行完后,有关寄存器及存储单元的内容,若影响条件码请给出条件码SF、ZF、OF、CF的值。
(1)SBBAX,BX
(2)CMPAX,WORDPTR[SI+0FA0H]
(3)MULBYTEPTR[BX](4)AAM
(5)DIVBH(6)SARAX,CL
(7)XORAX,0FFE7H(8)REPSTOSB
(9)JMPWORDPYR[BX](10)XCHGAX,ES:
[BX+SI]
答案:
(1)(AX)=0F05FH,(SF)=1,(ZF)=0,(OF)=0,(CF)=1
(2)(SF)=1,(ZF)=0,(OF)=1,(CF)=1
(3)(AX)=0240H,(OF)=1,(CF)=1
(4)(AX)=0906H,(SF)=0,(ZF)=0
(5)(AX)=20ACH
(6)(AX)=0103H,(CF)=0
(7)(AX)=0DF87H,(CF)=0,(OF)=0,(SF)=1,(ZF)=0
(8)(23000H)~(23004H)=60H,不影响标志位
(9)(IP)=0A006H,不影响标志位
(10)(AX)=00B0H,(25060)=2060H,不影响标志位
第4章汇编语言程序设计基础(第二部分)
1. 试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。
答案:
ABC:
MOVAH,1
INT21H
CMPAL,’A’
JBSTOP
CMPAL,’Z’
JASTOP
SUBAL,20H
MOV DL,AL
MOVAH,2
INT21H
JMP ABC
STOP:
RET
2. 编写程序,比较两个字符串STRING1和STRING2所含字符是否完全相同,若相同则显示“MATCH”,若不同则显示“NO MATCH”。
答案:
DATAREASEGMENT
STRING1DB‘ASFIOA’
STRING2DB‘XCVIYOAF’
MESS1DB‘MATCH’,’$’
MESS2DB‘NO MATCH’,’$’
DATAREA ENDS
PROGNAM SEGMENT
MAIN PROCFAR
ASSUME CS:
PROGNAM,DS:
DATAREA
START:
PUSHDS
SUBAX,AX
PUSHAX
MOVAX,DATAREA
MOVDS,AX
MOVES,AX
BEGIN:
MOV CX, STRING2-STRING1
MOV BX, MESS1-STRING2
CMPBX,CX
JNZDISPNO
LEADX,ADDR
LEASI,STRING1
LEADI,STRING2
REPECMPSB
JNEDISPNO
MOVAH,9
LEADX,MESS1
RET
DISPNO:
MOVAH, 9
LEADX, MESS2
INT21H
RET
MAINENDP
PROGNAMENDS
ENDSTART
3. 试编写程序,要求从键盘输入3个16进制数,并根据对3个数的比较显示如下信息:
(1)如果3个数都不相等则显示0;
(2)如果3个数中有2个数相等则显示2;
(3)如果3个数都相等则显示3。
答案:
DATA SEGMENT
ARRAYDW3 DUP(?
)
DATAENDS
CODE SEGMENT
MAIN PROC FAR
ASSUME CS:
CODE,DS:
DATA
START:
PUSHDS
SUBAX,AX
PUSHAX
MOVAX,DATA
MOVDS,AX
MOVCX,3
LEA SI,ARRAY
BEGIN:
PUSHCX
MOVCL,4
MOVDI,4
MOVDL, ‘ ‘
MOVAH,02
INT21H
MOVDX,0
INPUT:
MOVAH,01
INT21H
ANDAL,0FH
SHLDX,CL
ORDL,AL
DECDI
JNEINPUT
MOV[SI],DX
ADDSI,2
POPCX
LOOPBEGIN
COMP:
LEASI,ARRAY
MOVDL,0
MOVAX,[SI]
MOVBX,[SI+2]
CMPAX,BX
JNENEXT1
ADDDL,2
NEXT1:
CMP[SI+4],AX
JNENEXT2
ADDDX,2
NEXT2:
CMP[SI+4],BX
JNENUM
ADDDL,2
NUM:
CMPDX,3
JLDISP
MOVDL,3
DISP:
MOVAH,2
ADDDL,30H
INT21H
RET
MAIN ENDP
CODEENDS
ENDSTART
4.分析下列程序的功能,写出堆栈最满时各单元的地址及内容。
SSEGSEGMENT‘STACK’AT1000H;堆栈的段地址为1000H
DW128DUP(?
)
TOSLABELWORD
SSEGENDS
;--------------------------------------------
DSEGSEGMENT
DW32DUP(?
)
DSEGENDS
;---------------------------------------------
CSEGSEGMENT
MAINPROCFAR
ASSUMECS:
CSEG,DS:
DSEG,SS:
SSEG
START:
MOVAX,SSEG
MOVSS,AX
MOVAX,DSEG
MOVDS,AX
MOVAX,4321H
CALLHTOA
RETN:
MOVAH,4CH
INT2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机技术 答案 word