微机原理及接口技术习题答案 2.docx
- 文档编号:14695688
- 上传时间:2023-06-26
- 格式:DOCX
- 页数:23
- 大小:28.67KB
微机原理及接口技术习题答案 2.docx
《微机原理及接口技术习题答案 2.docx》由会员分享,可在线阅读,更多相关《微机原理及接口技术习题答案 2.docx(23页珍藏版)》请在冰点文库上搜索。
微机原理及接口技术习题答案2
第1章 微机运算基础
习题与思考题
1.请完成以下计算:
174、66D=(10101110、10101)B=(AE. A8)H
10101110101.01011B=(1397、344)D=(575、58)H
4BCH=(0)B=( )BCD
2.设字长为8位,X=(2A)16,当X分别为原码、补码、反码与无符号数的时候,其真值就是多少?
答:
当X表示原码时,其真值为:
+101010
当X表示补码时,其真值为:
+101010
当X表示反码时,其真值为:
+101010
当X表示无符号数数时,其真值为:
00101010
3.设字长为8位,用补码形式完成下列计算,要求有运算结果并讨论就是否发生溢出?
120+18 -33-37
-90-70 50+84
答:
120+18
其补码形式分别为:
(120)补=01111000(18)补=
01111000
+00010010
10001010
由于Cs=0,Cp=1,因此有溢出,结果错误
-33-37
其补码形式为:
(-33)补=11011111(-37)补=
11011111
+
10111010
由于Cs=1,Cp=1,所以没有溢出,结果正确
-90-70
其补码形式为:
(-90)补=10011100 (-70)补=
10011100
+
01010110
由于Cs=1, Cp=0,所以有溢出,结果错误
50+84
其补码形式为:
(50)补=00110010(84)补=
00110010
+
10000110
由于Cs=0,Cp=1,所以有溢出,结果错误
4.请写出下列字符串的ASCII码值。
Mynameis Zhang san、
4D796E616D65 69735A68616E6773616E2E
第2章80X86微机系统
习题与思考题
1.微型计算机主要由哪些基本部件组成?
各部件的主要功能就是什么?
答:
微型计算机主要由输入设备、运算器、控制器、存储器与输出设备组成。
各部件的功能分别就是:
1、输入设备通过输入接口电路将程序与数据输入内存;2、运算器就是进行算术运算与逻辑运算的部件,它就是指令的执行部件;3、控制器就是计算机的指挥中心,它负责对指令进行译码,产生出整个指令系统所需要的全部操作的控制信号,控制运算器、存储器、输入/输出接口等部件完成指令规定的操作;4、存储器用来存放程序、原始操作数、运算的中间结果数据与最终结果数据;5、输出设备就是CPU通过相应的输出接口电路将程序运行的结果及程序、数据送到的设备;
2.微处理器的发展过程就是什么?
答:
微型计算机的发展过程就是:
第一代(1946~1957)——采用电子管为逻辑部件,以超声波汞延迟线、阴极射线管、磁芯与磁鼓等为存储手段;软件上采用机器语言,后期采用汇编语言。
第二代(1957~1965)——采用晶体管为逻辑部件,用磁芯、磁盘作内存与外存;软件上广泛采用高级语言,并出现了早期的操作系统。
第三代(1965~1971)——采用中小规模集成电路为主要部件,以磁芯、磁盘作内存与外存;软件上广泛使用操作系统,产生了分时、实时等操作系统与计算机网络。
第四代(1971~至今)——采用大规模集成电路(LSI)、超大规模集成电路(VLSI)为主要部件,以半导体存储器与磁盘为内、外存储器;在软件方法上产生了结构化程序设计与面向对象程序设计的思想。
3.简述80486微处理器的基本结构。
书12页
4.80486微处理器的工作模式有几种?
当CS内容为1000H,IP内容为7896H,求在实地址模式下的物理地址为多少?
答:
实模式与保护模式及虚拟8086模式。
当CS内容为1000H,IP内容为7896H,在实地址模式下的物理地址为17896H.
5.简述EPROM的工作原理。
书27页。
6.总线有那几种类型?
答:
按照总线的传输类型可分为数据、地址、控制三类;按与cpu的距离可分为内部总线、系统总线与外部总线。
7.简述ISA与EISA总线的的区别。
它们的局限性表现在哪里?
书34页。
8.PCI局部总线有些什么特点?
书35页
9.什么就是USB?
它有什么特点?
书41页
10.IEEE 1394总线有哪些特点?
它与USB总线的区别在哪里?
书41页。
11.简述现场总线的特点。
书42页。
12.当代计算发展的主要核心技术有哪些?
当代计算机的主要核心技术有:
CACHE技术、流水线技术、VM技术、RISC技术、多内核技术
第3章80X86指令系统
习题与思考题
1、指出下列各指令中源操作数与目的操作数的寻址方式:
⑴MOVBX,WORDPTR[2200H]ﻩﻩ⑵AAA
⑶JUM2200Hﻩﻩ ⑷LESﻩDI,[2100H]
⑸ MOV[BX+SI+8],BX
解答
⑴MOVBX, WORDPTR[2200H]
ﻩ源操作数:
直接寻址;目的操作数:
寄存器寻址
ﻩ⑵AAA
ﻩ源操作数:
寄存器寻址AL(也称隐含寻址);目的操作数:
寄存器寻址
ﻩ⑶ JUM2200H
ﻩ程序转移段内直接寻址方式
⑷LESDI,[2100H]
ﻩﻩ源操作数:
直接寻址;目的操作数:
寄存器寻址
⑸MOV[BX+SI+8], BX
ﻩ源操作数:
寄存器寻址;目的操作数:
基址加变址寻址
2、 若AX=0ABCDH,BX=7F8FH,CF=1。
求分别执行8086CPU指令
⑴ADDﻩAX,BXﻩ⑵ADCﻩAX,BX
⑶SBBAX,BXﻩﻩﻩ⑷NEGﻩAX
⑸ANDAX,BXﻩﻩ ⑹ORﻩAX,BX
⑺ XORﻩAX, BXﻩﻩ⑻ IMUL BL
后,AX寄存器中的内容,并指出标志寄存器SF,ZF,AF,PF,CF及OF的状态。
解答
⑴AX=2B5CH,SZAPCO=001110B
ﻩ⑵ AX=2B5DH,ﻩSZAPCO=001010B
⑶AX=2C3DH,ﻩSZAPCO=001001B
⑷AX=5433H,SZAPCO=001110B
⑸AX=2B8DH,SZAPCO=00X100B
ﻩ⑹ AX=FFCFH,ﻩSZAPCO=10X100B
ﻩ⑺AX=D222H,ﻩSZAPCO=10X100B
ﻩ⑻ AX=3283H,SZAPCO=XXXX11B
3、若AL=78H,BL=87H,
⑴求执行指令
ﻩADDAL,BL
ﻩDAA
之后,AL=?
、标志AF=?
、CF=?
⑵若执行指令 SUBAL,BL与DAS后,AL=?
、标志AF=?
、CF=?
解答
⑴AL=65H,AF=1,CF=1。
⑵AL=91H,AF=0, CF=1。
4、指出下列指令中哪些就是错误的,并指出错在何处?
⑴ MOVDL,[DX]ﻩ⑵MOV ES,2000H
⑶SUB[BX],[SI]ﻩ⑷ADDAX,[BX+CX]
⑸XCHGDS,[2400H]ﻩﻩ⑹DEC15H
⑺INAL,DXﻩ⑻OUT300H,AX
解答
⑴错,DX不能作为间接寻址的寄存器。
ﻩ⑵错,立即数不能直接送给段寄存器。
⑶错,两个存储单元间内容不能直接相减。
ﻩ⑷错,CX寄存器不能作为变址寄存器。
⑸错,不允许段寄存器与存储单元内容进行交换
ﻩ⑹错,减1指令不能对段寄存器直接操作
ﻩ⑺对
⑻错,输出指令的地址若就是16位,必须用DX间址。
5、下列程序段执行后AX=?
设数据段有:
TABLEDW100,200,300,400
ﻩﻩﻩENTRYDWﻩ3
代码段对DS初始化
ﻩﻩﻩMOV ﻩBX,OFFSETTABLE
ﻩﻩMOVSI,ENTRY
ﻩMOVﻩAX,[BX+SI]
执行后 AX=2C00
6、将AL中的8位二进制数按倒序方式重新排列,即AL原来为D7D6…D0,倒序后AL=D0D1…D7。
参考答案
…
MOVCX, 8
L:
SHLAL,1
ﻩRCRBL,1
LOOPL
MOVAL,BL
…
7.若起始地址偏移量为2000H的内存单元存放有100个ASCII码字符,现给这些字符添加奇偶校验位(bit7),使每个字符中“1”的个数为偶数,在顺序输出到地址为100H的端口。
解答
ﻩMOVSI,2000Hﻩ
ﻩMOVCX,100
ﻩMOVDX,100H
NEXT2:
ﻩMOVAL, [SI]ﻩ;取字符串中字符送AL
ﻩANDﻩAL,0FFHﻩ;改变标志位
ﻩJPEﻩNEXT1ﻩﻩﻩﻩ;“1”的个数为偶,bit7不变
ORAL,80Hﻩﻩ;“1”的个数为奇,bit7变为1
NEXT1:
ﻩOUT DX, AL
ﻩﻩINCﻩSI
LOOPNEXT2
MOVﻩAH, 4CH
ﻩINTﻩ21H
8、若SS=1000H,SP=2000H,AX=1234H,BX=5678H,FR=2115,试说明执行指令
ﻩPUSHAX
ﻩﻩPUSH BX
ﻩﻩﻩPUSHF
ﻩﻩPOPﻩCX
ﻩﻩPOP DX
之后,SP=?
SS=?
CX=?
DX=?
并画图指出堆栈中各单元的内容。
解答:
SS=1000H
ﻩﻩSP=1FFEH
ﻩﻩCX=2115H
ﻩDX=5678H
栈中各单元内容如下所示:
ﻩﻩﻩ
地址
RAM
11FFAH
2115
11FFCH
5678
11FFEH
1234
12000H
第4章宏汇编语言
习题与思考题
1、画出以下变量在内存中存储的示意图。
D1DB‘A’,’123’,09H,45
D2DW ‘A’,’CD’,23H,4567H
D3 DD1234H,23456789H
2、设计子程序分别完成以下功能:
1)根据给定的参数值,判断该参数就是偶数还就是奇数。
2)把给定参数值的高、低数据位互换。
3、设计相应的宏完成以下功能:
1)把给定的参数按二进制显示。
2)求两个参数的与,并按十进制形式显示。
第5章汇编语言程序设计
习题与思考题
1.设数据段中有字节型单元NUMBER与FLAG,判断NUMBER与给定的X与Y的大小关系(X<Y),若NUMBER>Y,则置FLAG=1,若NUMBER<X,则置FLAG=-1,否则置FLAG=0。
解答:
、486
Datasegment
NUMBERdb?
FLAGdb?
Data ends
Codesegment
Assume cs:
Code,ds:
Data
Beg:
mov ax,data
Movds,ax
moval, X
Movbl,Y
CmpNUMBER,X
JncP1
Mov FLAG,0FFH
Jmpexit
P1:
cmpNUMBER,Y
JaP2
MovFLAG, 00H
Jmpexit
P2:
movFLAG,01H
Exit:
movah,4ch
Int21h
Codeends
EndBeg
2、计算1+2+3+…+100,并把与保存在SUM单元中。
、486
DATASEGMENT USE16
TT DB 1
SUM DW ?
DATA ENDS
CODESEGMENTUSE16
ASSUMECS:
CODE,DS:
DATA
BEG:
MOV AX,DATA
MOVDS,AX
MOV CX, 100
MOVAX, 0
START:
ADDAX,TT
INC TT
LOOPSTART
MOV SUM, AX
MOV AH, 4CH
MOV21H
CODE ENDS
END BEG
3、 对一个给定的N数据,用冒泡排序法进行排序。
解答:
.486
Datasegment
Bufdb‘abcd18437hj’
Lensequ$-buf
Count dblens
Flag db ?
Dataends
Codesegment
Assumecs:
code,ds:
data
Beg:
movax,data
Mov ds, ax
Again:
deccount
Jzdone
Movflag, 0
Movcx,count
Movsi,offsetbuf
Last:
moval,[si]
Movah, [si+1]
Cmpah,al
Jncnext
Mov [si],ah
Mv[si+1],al
Mov flag, 1
Next:
incsi
Looplast
Cmpflag,1
Jeagain
Done:
movbuf+lens,‘$’
Movah,9
Movdx, offsetbuf
Int21h
Mov ah,4ch
Int21h
Code ends
End Beg
4、由键盘输入任意的两个十进制数,然后转换成对应的压缩BCD码的形式在屏幕上显示。
、486
DATA SEGMENTUSE16
BCD DB?
BUF DB 3
DB ?
DB 3DUP(?
)
MESG1 DB ‘PLEASEINPUT:
’,0DH,OAH,’$’
MESG2DB‘ERROR!
NUMBERISFROM 0TO9、 PLEASEAGAIN!
$’
DATA ENDSﻩ
CODESEGMENT USE16
ASSUME CS:
CODE,DS:
DATA
BEG:
MOV AX ,DATA
MOVDS,AX
L1:
MOV DX,OFFSETMESG1
MOV AH,9 ;显示MESG1
INT 21H
MOVAH, 0AH
MOVDX,OFFSETBUF
INT 21H ;输入字符串
MOV AL,BUF+2
CMP AL,30H
JCERROR
CMP AL,3AH
JC NEXT ;判断第一个数输入就是否符合要求
ERROR:
MOVDX,OFFSETMESG2
MOV AH, 9
INT 21H
JMP L1 ;输入错误提示重新输入
NEXT:
SUB AL,30H
SAL AL, 4 ;求出十位数字
MOV BCD, AL
MOVAL, BUF+3
CMPAL, 30H
JC ERROR
CMP AL, 3AH
JNC ERROR ;判断第二个数输入就是否符合要求
SUBAL,30H
ORBCD,AL
MOV AH,4CH
INT 21H
CODE ENDS
ENDBEG
5、由键盘输入两个十六进制数,转换成等值的十进制数后在屏幕上显示。
CMPDISPMACRO NN ;用宏语句完成比较法二进制到十进制转换
LOCALLAST,NEXT
MOVDL, 0
LAST:
CMP NUM, NN
JC NEXT
INC DL
SUB NUM, NN
JMP LAST
NEXT:
ADDDL, 30H
MOVAH, 2
INT21H
ENDM
DATASEGMENT USE16
NUM DB ?
BUF DB 3
DB?
DB3DUP(?
)
DATA ENDS
CODE SEGMENTUSE16
ASSUMECS:
CODE,DS:
DATA
BEG:
MOVAX, DATA
MOVDS,AX
MOVAH, 0AH
MOVDX, OFFSET BUF
INT 21H
MOVAL, BUF+2
CMP AL, 39H
JNA L1 ;数字在0到9之间转
SUB AL,07H ;数字在A到F之间
L1:
SUBAL, 30H
MUL 16
MOVNUM, AL
MOV AL, BUF+3
CMP AL,39H
JNAL2
SUBAL, 07H
L2:
SUB AL,30H
ADD NUM, AL ;NUM中为十六进制数的二进制表示
CMPDISP 100
CMPDISP 10
CMPDISP 1
MOVAH, 4CH
INT 21H
CODE ENDS
END BEG
第6章接口技术
习题与思考题
1.什么就是接口?
两个部件或两个系统之间的连接。
微机接口,则涉及到微处理器与各外部设备之间的接口、微处理器与存储器之间的接口以及微型计算机之间的接口。
习惯上说到接口只就是指I/O接口,就是指微处理器与外设之间的接口称为I/O接口。
2.端口独立编址有哪些特点?
与统一编址的区别就是什么?
解答:
解答:
输入/输出指令与访问存储器的指令明显区分开,使程序清晰,可读性好;而且I/O指令长度短,执行的速度快,也不占用内存空间,I/O地址译码电路较简单。
不足之处就是CPU指令系统中必须有专门的IN与OUT指令,这些指令的功能没有访问存储器的指令的功能强;I/O端口数目有限。
另外,CPU要能提供区分存储器读/写与I/O读/写的控制信号。
3、DX间接寻址主要应用在什么情况?
与直接端口寻址的区别就是什么?
端口地址大于255的时候。
4.I/O端口地址译码电路有哪几种结构形式?
解答:
固定式译码与可选式译码。
5、CPU与I/O设备间的数据传送方式有哪些?
区别就是什么?
有4种。
无条件、查询、中断与DMA方式。
区别见书140页。
第7章中断技术
习题与思考题
1、什么就是中断?
什么就是中断优先级?
设置中断优先级的目的就是什么?
书143页。
2、中断处理的一般过程就是什么?
中断请求,中断判优,中断响应,中断处理,中断返回。
3、什么就是中断嵌套?
如何处理中断嵌套?
当前中断还未处理完毕,又有了新的优先级更高的中断请求,cpu转而去处理优先级更高的中断称为中断嵌套。
4、什么就是中断向量?
它与中断服务程序入口地址的关系就是什么?
中断向量即中断服务程序的入口地址。
5、什么就是中断类型号?
它的作用就是什么?
中断类型号就就是中断源的编号,在中断系统中用作中断源的识别。
6、可屏蔽中断与INTn中断的处理区别就是什么?
可屏蔽中断就是硬件中断而INTn中断就是软件中断。
7、不可屏蔽中断与可屏蔽中断各有何特点?
其用途如何?
不可屏蔽中断的优先级高于可屏蔽中断,不可屏蔽中断不受指令cli的影响,常用于紧急情况的故障处理,并由系统使用,一般用户不能使用。
8.PC微机的中断系统由哪几部分组成?
由CPU端的中断逻辑以及中断控制器8259组成。
9.80X86的异常有哪几个层次?
各层次的特点就是什么?
书148页
10、保护虚拟地址下的中断如何管理?
采用中断描述表IDT进行管理。
11.可编程中断控制器8259A协助CPU处理哪些中断事务?
书162页。
12.8259A具有哪些工作方式与中断操作功能?
指出与这些功能相对应的命令字(ICW/OCW)的内容?
书164页。
13、在什么情况下,才要求用户对8259A进行初始化?
在没有配置完善的操作系统的单板机上需要对8259初始化。
14、如何对8259A进行初始化编程(包括单片使用与双片使用)?
书176,177页。
15、什么就是中断响应周期?
在中断响应周期中CPU与8259A一般要完成哪些工作?
书165页
16.用户利用PC微机的中断系统资源进行中断传送时,要求用户对8259A的哪些命令进行编程使用?
17.中断结束命令安排在程序的什么地方?
在什么情况下要求发中断结束命令?
中断结束命令安排在中断返回指令iret前。
如果8259工作在非自动中断结束方式下则要求发送中断结束命令。
18、保护模式下中断服务程序怎样入口?
书157页。
第8章 常用I/O接口芯片
习题与思考题
1.可编程并行接口8255A面向CPU一侧的端口有几个。
4个。
分别就是1个控制子端口与3个数据口。
2.PC口按位置/复位字就是如何定义的?
PC口按位置/复位命令字用于PC引脚作输出单位控制或软件设定8255A的相应状态。
PC口按位置/复位命令字格式:
D7
D6
D5
D4
D3
D2
D1
D0
特征位值为0
未用
PC口位号选择
置/复位选择
其中:
D0为置/复位选择位:
D0=0表示相应位清0,D0=1表示相应位置1。
D3D2D1选择被置/复位的位号:
D3D2D1=000选择PC口第0位;
D3D2D1=001选择PC口第1位;
D3D2D1=010选择PC口第2位;
D3D2D1=011选择PC口第3位;
D3D2D1=100选择PC口第4位;
D3D2D1=101选择PC口第5位;
D3D2D1=110选择PC口第6位;
D3D2D1=111选择PC口第7位。
D6D5D4没有使用,一般让D6D5D4=000。
D7位为特征位,该命令字处D7=0。
3.如何对8255A进行初始化编程?
对8255A的编程涉及到两个内容:
一就是写控制字设置工作方式等信息;二就是使C口的指定位置位/复位的功能。
在8255A工作之前,首先要对其进行初始化,也就就是要写入控制字,来指定它的工作方式,指明就是否允许它的某组端口采用中断方式传送数据。
如果要改变某组端口的工作方式或中断允许情况,必须重新写入控制字。
前面讲过,控制字有两个,分别为方式命令字与按
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机原理及接口技术习题答案 微机 原理 接口 技术 习题 答案