微机原理及应用课后答案.docx
- 文档编号:5333736
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:13
- 大小:22.89KB
微机原理及应用课后答案.docx
《微机原理及应用课后答案.docx》由会员分享,可在线阅读,更多相关《微机原理及应用课后答案.docx(13页珍藏版)》请在冰豆网上搜索。
微机原理及应用课后答案
第一章
1-1.微处理器、微型计算机和微型计算机系统三者之间有什么不同?
【解】微处理器(CPU),由运算器和控制器组成。
运算器完成算术运算和逻辑运算,控制器分析命令并指挥协调各部件统一行动完成命令规定的各种动作或操作。
微型计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成。
微型计算机系统包括微型计算机硬件和软件。
1-4.说明位、字节、字长的概念及它们之间的关系。
【解】
(1)位(bit)。
位是计算机所能表示的最基本最小的数据单位。
它只能有两种状态“0”和“1”,即二进制位。
(2)字(Word)。
计算机中作为一个整体参与运算、处理和传送的一串二进制数,是计算机中信息的基本单位。
(3)字长(WordLength)。
计算机中每个字所包含的二进制位数称为字长。
它们之间的关系:
字由位构成,字长指每个字所包含的位的个数。
1-5.32位机和准32位机区别
32位机指该机的数据总线宽度为32位,准32位机为芯片内部数据总线宽度是32位,
片外则为16位的cpu
第二章
2-1微型计算机由哪几部分组成,各部分的功能是什么?
【解】微型计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成。
运算器完成算术运算和逻辑运算;控制器分析命令并指挥协调各部件统一行动完成命令规定的各种动作或操作;存储器存放原始数据、中间结果和最终结果以及程序;输入设备、输出设备与外界交换信息。
2-2.CPU在内部结构上由哪几部分组成,CPU应具备什么功能?
【解】微处理器(CPU)由运算器和控制器组成。
CPU应具备的功能:
对数据进行处理并对处理过程进行控制。
2-34,6,8,1,9,7,2,5,10,3
2-7:
第16字为70A0:
DE05末物理地址为70A00+DE05=7E805
2-8.①通用数据寄存器。
四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。
用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。
AX(AH、AL)累加器。
有些指令约定以AX(或AL)为源或目的寄存器。
实际上大多数情况下,8086的所有通用寄存器均可充当累加器。
BX(BH、BL)基址寄存器。
BX可用作间接寻址的地址寄存器和基地址寄存器,BH、BL可用作8位通用数据寄存器。
CX(CH、CL)计数寄存器。
CX在循环和串操作中充当计数器,指令执行后CX内容自动修改,因此称为计数寄存器。
DX(DH、DL)数据寄存器。
除用作通用寄存器外,在I/O指令中可用作端口地址寄存器,乘除指令中用作辅助累加器。
BP、SP称为指针寄存器,用来指示相对于段起始地址的偏移量。
BP和SP一般用于堆栈段。
SI、DI称为变址寄存器,可用作间接寻址、变址寻址和基址变址寻址的寄存器。
SI一般用于数据段,DI一般用于数据段或附加段。
2-10状态标志根据算术逻辑运算结果由硬件自动设定,它们反映运算结果的某些特征或状态,可作为后继操作(如条件转移)的判断依据。
控制标志由用户通过指令来设定,它们可控制机器或程序的某些运行过程。
标志寄存器的内容如下:
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
OF
DF
IF
TF
SF
ZF
--
AF
--
PF
--
CF
CF(CarryFlag)进位标志,反映在运算结果的最高位有无进位或借位。
如果运算结果的最高位产生了进位(加法)或借位(减法)则CF=1,否则CF=0。
PF(ParityFlag)奇偶标志,反映运算结果中“1”的个数的奇偶性,主要用于判断数据传送过程中是否出错。
若结果的低8位中有偶数个“1”则PF=1,否则PF=0。
AF(AuxiliaryCarryFlag)辅助进位标志,又称半进位标志。
加减运算时,若D3向D4产生了进位或借位则AF=1,否则AF=0。
在BCD码运算时,该标志用于十进制调整。
ZF(ZeroFlag)零标志,反映运算结果是否为0。
若结果为零则ZF=1,否则ZF=0。
SF(SignFlag)符号标志,反映运算结果最高位即符号位的状态。
如果运算结果的最高位为1则SF=1(对带符号数即为负数),否则SF=0(对带符号数即为正数)。
OF(OverflowFlag)溢出标志,反映运算结果是否超出了带符号数的表数范围。
若超出了机器的表数的范围,即为产生溢出,则OF=1,否则OF=0。
控制标志:
DF(DirectionFlag)方向标志,用于串处理指令中控制串处理的方向。
当DF=1时,每次操作后变址寄存器SI、DI自动减量,因此处理方向是由高地址向低地址方向进行。
当DF=0,则SI、DI自动增量,处理方向由低地址向高地址方向进行。
该标志由方向控制指令STD或CLD设置或清除。
IF(InterruptFlag)中断允许标志,用于控制CPU是否允许响应可屏蔽中断请求。
IF=1为允许响应可屏蔽中断请求,IF=0则禁止响应可屏蔽中断请求。
该标志可由中断控制指令STI或CLI设置或清除。
TF(TrapFlag)陷阱标志,用于单步操作。
TF=1时,每执行一条用户程序指令后自动产生陷阱,进入系统的单步中断处理程序。
TF=0时,用户程序会连续不断地执行,不会产生单步中断。
2-11.最小工作模式(MN/=1):
把8086CPU的33引脚接+5V时,系统处于最小工作模式。
最小模式系统适用于单微处理器组成的小系统,系统中通常只有一个微处理器,所有的总线控制信号都直接由8086CPU产生,系统中的总线控制逻辑电路被减到最少。
2.最大工作模式(MN/=0):
当把8086的33引脚接地时,系统处于最大工作模式。
此时,系统中存在两个或两个以上的微处理器,其中有一个主处理器8086,其他处理器称为协处理器。
2-18:
复位信号是输入信号,高电平有效,8086要求复位信号至少维持四个时钟周期的高电平才有效,复位信号到来后,cpu结束当前操作,并对处理器的标志寄存器、ip、ds、ss、es及指令队列清零,而将cs置为FFFFH。
当复位信号变为低电平时,cpu从FFFF0H(起始工作地址)出开始执行程序,通常在该单元开始存放一条JMP指令,以转移到系统程序的实际开始处(如何自动进入系统程序),复位时地址总线浮空,直到cpu脱离复位状态,其他控制信号先变高一段时间,然后浮空,ALE,HLDA信号变为无效
。
第三章
3-18086的寻址方式有哪些啊?
1、立即寻址2、寄存器寻址3、直接寻址4、寄存器间接寻址5、基址寻址和变址寻址6、基址变址寻址7、I/O端口寻址8、串操作寻址
3-3
带位移量的基址变址寻址方式的有效地址如何计算
有效地址由基址寄存器的值+变址寄存器的值+位移量
例子:
若DS=3000H,BP=2000H,SI=1000H,[32000H]=00H,[32001H]=40H,SS=3000H,[31000H]=20H,[31001H]=60H,[33000H]=50H,[33001H]=60H,说明下列各条指令执行后,AX中的内容是什么?
并说明各条指令中源操作数的寻址方式。
(1)MOVAX,DS
(2)MOVAX,[2000H]
(3)MOVAX,[SI](4)MOVAX,[BP]
(5)MOVAX,[BP+SI]
【解】
(1)AX=3000H寄存器寻址
(2)AX=4000H直接寻址
(3)AX=6020H寄存器间接寻址
(4)AX=4000H寄存器间接寻址
(5)AX=6020H基址加变址寻址
2.指出下列指令中的非法指令。
(1)MOVBX,AL
(2)MOVCS,2000H
(3)PUSH4567H(4)XCHGVAR1,VAR2
(5)ADDAL,148H(6)MOVDS,2000H
(7)MOVBH,SI(8)SUB38H,AL
【解】非法指令:
(1)MOVBX,ALBX和AL的长度不一致
(2)MOVCS,2000HCS段寄存器不能作目的操作数
(3)PUSH4567H只能将寄存器或存储单元的内容压入堆栈,不能是立即数
(4)XCHGVAR1,VAR2两个存储单元之间不能直接交换数据
(5)ADDAL,148H运算溢出
(6)MOVDS,2000H立即数不能直接传送给DS段寄存器
(7)MOVBH,SIBH和SI的长度不一致
(8)SUB38H,AL目的操作数不能是立即数
3-29:
datasegment
numdb40dup(80)
totaldw?
averagedb?
dataends
codesegment
assumeds:
data,cs:
code
start:
movax,data
movds,ax
movcx,40
movsi,0
movbx,offsetnum
xorax,ax
next1:
addal,[bx+si]
incsi
adcah,0
loopnext1
movtotal,ax
movbl,40
divbl
movaverage,al
codeends
endstart
3-30要求编写程序比较两个最大长度为100个字符的字符串ALFA1和ALFA2是否相等,若相等则输出显示“AllRight!
”,否则输出显示“Error!
”。
【解】完成输出显示功能时,调用9号系统功能,功能是将指定的内存缓冲区中的字符串在屏幕上显示出来,缓冲区的字符串以“$”为结束标志。
LEN指定的内存中存储两字符串中长串的长度,否则,即使两串相等,由于字符串后面的随机字符,将影响判断结果。
程序代码如下:
DATASEGMENT;数据段开始
str1DB100DUP(?
)
Str2DB100DUP(?
)
RESULT1DB‘AllRight!
$’
RESULT2DB‘Error!
$’
LENDB100;字符串长度
DATAENDS;数据段结束
CODESEGMENT;代码段开始
ASSUMECS:
CODE,DS:
DATA,ES:
DATA
START:
MOVAX,DATA
MOVDS,AX;装填数据段
MOVES,AX;装填附加段
LEABX,str1;传送源串的地址
MOVSI,BX
LEABX,str2;传送目的串的地址
MOVDI,BX
CLD;清方向标志,使正向传送
XORCX,CX
MOVCL,LEN
REPNZCMPSB
JZEQQ;若ZF=1,说明两串相等,转EQQ
LEADX,RESULT2;输出显示“Error!
”
JMPOUT1
EQQ:
LEADX,RESULT1;输出显示“AllRight!
”
OUT1:
MOVAH,9
INT21H
STOP:
MOVAH,4CH
INT21H;返回DOS
CODEENDS;代码段结束
ENDSTART;源程序结束
第四章
4-1:
见课本p126
EQU不能对一个符号名进行重复定义,而=则可做到这一点。
.
4-13、
CODESEGMENT
ASSUMECS:
CODE
START:
MOVAH,01H;从键盘输入1个字符
INT21H
MOVBL,AL;保存在BL中
MOVDL,'-’;送‘-’号到DL
MOVAH,02H;显示字符‘-’
INT21H
MOVAL,BL;取回键盘输入的字符
CMPAL,'a';与‘a’比较
JBEXIT;低于转EXIT
CMPAL,'z';与‘z’比较
JAEXIT;高于转移到EXIT
SUBAL,20H;取大写字母
MOVDL,AL;输出
MOVAH,02H
INT21H
MOVDL,0AH;调用换行
MOVAH,02H
INT21H
MOVDL,0DH;调用回车
MOVAH,02H
INT21H
JMPSTART;无条件转
EXIT:
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
4-15
DSEGSEGMENT
XDB-3
YDB?
DSEGENDS
SSEGSEGMENTSTACK
STKDB10DUP(?
)
SSEGENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DSEG,SS:
SSEG
START:
MOVAX,DSEG
MOVDS,AX
MOVAL,X
CMPAL,0
JGCASE1
MOVBL,-1
MULBL
JMPEXIT
CASE1:
CMPAL,10
JGCASE2
ADDAL,10
JMPEXIT
CASE2:
CMPAL,15
JGEEXIT
MOVBL,5
IMULBL
SUBAL,2
EXIT:
MOVY,AL
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
ENDSTART;源程序结束
4-17
datasegment
countequ10
bufdbcountdup(?
)
maxdb?
mindb?
dataends
codesegment
assumecs:
code,ds:
data
start:
movax,data
movds,ax
movsi,0
movcx,count
deccx
moval,buf[si]
movmax,al
movmin,al
next:
incsi
moval,buf[si]
cmpal,max
jnabdy
movmax,al
jnznext1
bdy:
cmpal,min
jnbnext1
movmin,al
next1:
loopnext
movah,4ch
int21h
codeends
endstar
第五章
5-2.存储器有哪些主要技术指标
见P162-163
存储容量:
存储器可以容纳的二进制信息量称为存储容量。
见课本P178-179
5-12
解:
================
00101000000000002800h
00101111111111112fffh
5-13
输入端:
14根输出端:
8根
5-16
见作业
第六章
中断向量:
中断服务程序的入口地址 中断向量地址:
内存中存放中断服务程序入口地址的地址
中断类型号×4=存放中断子程序的首地址=中断向量
简述中断控制器8259A的内部结构和主要功能。
【解】8259A的内部结构见教材图7-11。
它由中断请求寄存器IRR(INTERRUPTRequestRegister)、优先权电路、中断服务寄存器ISR(IN—ServiceRegister)、中断屏蔽寄存器IMR(InterruptMaskRegister)、数据总线缓冲器、读写电路、控制逻辑和级连缓冲/比较器组成。
8259A的主要功能为:
(1)具有8级优先权控制,通过级连可扩展至64级优先权控制。
(2)每一级中断都可以屏蔽或允许。
(3)在中断响应周期,8259A可提供相应的中断向量号(中断类型号)。
(4)可通过编程来进行选择工作方式。
各自功能见课本。
6-15、8259A的初始化命令
(1)ICW1-芯片控制初始化命令
(2)ICW2-设置中断类型码的初始化命令
(3)ICW3-标识主片/从片初始化命令字
(4)ICW4-方式控制初始化命令字
2、8259A的初始化流程
在8259A进入正常运行之前,必须将系统中的每一片8259A进行初始化。
初始化就是将上述的初始化命令字按固定的次序写入8259A的指定端口。
对8259A初始化应注意以下几点:
(1)初始化命令字ICW1~ICW4的写入次序是固定不变的。
(2)ICW1写入偶地址端口,ICW2~ICW4写入奇地址端口。
(3)对每片8259AICW1,ICW2是必须设置的,16位微机系统,还必须设置ICW4,当系统为多片8259A级联时,要有ICW3。
(4)多片8259A级联时必须分别对主片和从片进行初始化,写入各自的ICW3。
(5)只有在8086/8088系统或者需要设置全嵌套方式、缓冲方式,中断自动结束方式等情况下,才需要ICW4,而是否需要ICW3,ICW4已在ICW1中预先明确了。
3、8259A的操作命令字
(1)OCW1-中断屏蔽操作命令字
(2)OCW2-优先级循环方式和中断
结束方式操作命令字
(3)OCW3-特殊屏蔽方式和
中断查询方式操作命令字
第七章
7-3
课本P234-235
8255A工作于方式1和方式0时有何区别
方式0可以工作于无条件传送方式,也可工作于查询传送(条件传送)方式,可由用户选择PCL和PCH中各一条线作为PA口和PB口的联络信号线,方式0不能工作于中断传送方式;
方式1可以工作于查询传送方式和中断传送方式,芯片规定了PC口中6条线作为PA口和PB口同外设之间的联络信号线以及同CPU之间的中断请求线。
7-6:
MOVDX,00F6H
MOVAL,90H
OUTDX,AL
17.试编写出只有一片8259A的8086系统中8259A的初始化程序。
8259A的地址为02C0H和02C1H,要求:
(1)中断请求采用电平触发。
(2)IRQ请求的中断类型是16。
(3)采用缓冲器方式。
(4)采用普通的EOI命令。
【解】
ICW1的内容:
1BH
A0
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
1
1
0
1
1
偶地址
8086/8088系统无效,置0。
识别位
电平触发
调用地址间隔为8
单片
8086/8088系统必须设ICW4。
ICW2的内容:
10H
A0
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
0
1
0
0
0
0
奇地址
中断类型
自动填入
ICW4的内容:
0DH
A0
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
0
0
1
1
0
1
奇地址
未定义,置0。
全嵌套方式
缓冲方式/主
正常EOI结束
工作于8086/8088系统
根据系统要求初始化编程如下:
MOVAL,1BH;设置ICW1为电平触发,单片8259A,需要ICW4。
MOVDX,02C0H
OUTDX,AL
MOVAL,10H;设置ICW2,类型码为10H(IR0)。
MOVDX,02C1H
OUTDX,AL
MOVAL,0DH;设置ICW4,全嵌套方式,缓冲方式,正常EIO
OUTDX,AL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 应用 课后 答案