微机原理与接口技术吉海彦主编机械工业出版社课后习题答案Word格式.docx
《微机原理与接口技术吉海彦主编机械工业出版社课后习题答案Word格式.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术吉海彦主编机械工业出版社课后习题答案Word格式.docx(23页珍藏版)》请在冰豆网上搜索。
用来暂时存放从存储器取出的指令的一组存放器
2.3:
实现地址线和数据线的复用
2.4:
节约引脚,降低复杂度
2.5:
输入MN/MX的状态决定了8086、8088的工作状态模式,影响COU的8个引脚的功能,当该信号为低电平时,说明CPU工作在最大模式,当信号为高电平时,CPU工作在最小模式下
最大模式:
将S2、S1、S0作为总线控制器8288的输入,进行译码后产生存储器、I/O的读写等控制信号。
最小模式:
M/IO存储器、输入输出控制信号,用于区分进行存储器访问还是I/O访问。
M/IO为高电平时,表示CPU访问存储器,低电平是,表示访问I/O端口。
2.6:
INTR〔interruptrequest〕
当INTR=1,IF=1时,CPU在当前指令结束后,立即转入中断响应周期响应中断。
2.7:
答:
8086为16位处理器,可访问1M字节的存储器空间;
1M字节的存储器分为两个512K字节的存储体,命名为偶字节体和奇字节体;
偶体的数据线连接D7-D0,“体选〞信号接地址线A0;
奇体的数据线连接D15-D8,“体选〞信号接BHE#信号;
BHE#信号有效时允许访问奇体中的高字节存储单元。
所以可以通过A0、BHE#取不同的值来实现对8086的低字节访问、高字节访问及字访问。
2.8:
为了用16为存放器实现对IBM存储空间的寻址,在8086、8088系统中,把1MB的存储空间分成很多逻辑段,每一段都在一个连续区域内,容量最大64KB,这样段内就可以采用16位寻址了。
2.9:
逻辑地址:
有段地址和偏移地址组成
物理地址:
存储单元的实际地址,在1MB的存储器里,每一个存储单元都有唯一的20位地址。
偏移地址:
此存储单元相对它所在段基地址的字节距离,偏移地址为16位无符号数,简称偏移量。
2.10:
0C00E0H+20C0H=0C21A0H
2.11:
1、32H:
00110010B23H:
00100011B
00110010B+00100011B=01010101B
CF=0AF=0PF=12F=0SF=00F=0
2\0AH:
00001010B34H:
00110100B
00001010B+00110100B=00111110B
CF=0AF=0PF=0ZF=0SF=00F=0
2.12:
首地址:
E2100H
最高地址:
E210H+FFFFH=1E10FH
2.13:
31000H+FFFFH-40FFH=3CF00H
64K*2-3CF00H
2.14:
1、8088的指令队列长度是4B队列中出现一个空闲字节时,BIU自动访问存储器取指令补充队列;
8086的指令队列长度为6B,队列中出现两个空闲字节时,BIU自动访问存储器取出指令补充指令队列。
2、8088的地址/数据复用总线为8条,即AD7~AD0,访问一个字需要两个读写周期,8086的地址/数据复用线为16条,即AD15~AD0,访问一个字要一个读写周期,访问一个非标准字需要两个读写周期。
3、8088中的存储器输入输出控制信号为M/IO,而8086为M/IO两者功能相同
4、8086的引脚BHE/S7在8088中为SS0与M/IO.DT/R一起决定最小模式的总线周期操作。
2.15:
时钟T是CPU的根本时间计量单位,它由计算机主频决定
总线T是CPU通过系统总线对外部存储器或者I/O口进行一次访问所需时间。
四个时钟周期组成一个根本总线周期
2.16:
〔课本54页〕由4个T状态和等待状态组成
1、T1状态:
CPU向地址/状态和地址/数据多路复用总线上发送地址信号,指出要寻址的存储单元或者I/O端口地址
2、T2状态CPU从总线上撤销地址,是总线的低16位悬空,置成高阻抗状态
3、T3状态
4、T4状态
5、TW等待状态
6、TI空闲状态
:
1、在被访问的存储器或者外设动作速度比拟慢情况下
2、取决于存储器或者外设的数据传输情况
2.18:
1、各个命令信号的出现,必须有严格的时间按先后顺序,这种严格的时间上的先后顺序就称作时序。
2、〔课本55页〕
2.19:
FR=0000H,DS=0000H,IP=0000H,SS=0000H,IF=0000H,CS=0FFFFH,ES=0000H,从FFFF0H处开始执行程序。
第三章
1、错AL为8位BX为16位,不等长
2、错不可立即赋值
3、错误要有BX
4、错误不可同时操作
5、错误范围超出
6、正确
7、错必须是8位或者16位
8、错误超出8位
9、错误不等长
10、错误赋值给CF
3.2无物理地址
3.31、MOVAX,0000H
ANDAX,0
XORAX,AX
2、MOVCL,4
RORRL,CL
3、
4、TEXTDX,0202H
START:
XORAL,AL
MOVZERO,AL
LEASI,BUFFER
MOVCX,100
CLD
CHECK:
LODSB
ORAL,AL
JZX2
X2:
INCZERO
NEXT:
LOOPCHECK
HLT
3.5:
第一条指令是把2000H直接赋给AX
第二条指令是把2000H里面的内容赋给AX
左移一位:
SHLAX,1
RCLDX,1
RCRAX,1
ROLAX,1
右移一位
SHRAX,1
RCRDX,1
RCLAX,1
RORAX,1
MOVAX,3000H
MOVDS,AX
MOVAX,6000H
MOVES,AX
MOVSI,1000H
MOVDI,1500H
MOVCX,1000
CLD
REPMOVESB
3.8:
SP=0FFCH
SS=1000H
CX:
2030H
30H
20H
34H
12H
78H
56H
CX=2030H
SP=1000H
3.9:
3FH的地址最高位为1时,AH为0
3.101、05H,31H,39H,43H,30H,46H,03H,0BH,08H,0AH
2、功能:
将内存区table里的数值和字符转化为ASSII码,循环五次
第四章
4.1
1、把11H赋给AL
2、把DATA2的偏移地址赋给BX
3、把STRING的偏移地址赋给SI
16H
16
W
O
R
D
?
3
2、
00
01
02
0FAH
0FFH
58H
02H
5N
50H
05H
07H
41H
00H
E
L
C
M
!
SECLE:
MOVAH,01H
INT21
COMAL,’Y’
JEYES
CMPAL,‘N’
COMAL,’n’
JENO
COMAL,’y’
JMPSECLE
YES:
…...
NO:
……
DATASEGMENT
MASCDB‘6’,’3’,’B’,’2’
MBINDB2DUP(?
)
DATAENDS
CODESEGMENT
ASSEMUCS:
CODE,DS:
DATA
BEGIN:
MOVAX,DATA
MOVCL,4
MOVCH,CL
LEASI,MASC
XORAX,AX
XORDX,DX
NEXT1:
LODSMASC
ANDAL,7FH
CMPAL,’0’
JLERROR
CMPAL,’9’
JGNEXT2
SUBAL,30H
JMPNEXT3
NEXT2:
CMPAL,’A’
CMPAL,’F’
JGERROR
SUBAL,37H
NEXT3:
ORDL,AL
RORDX,CL
DECCH
JNZNEXT1
MOVWORDPTRMBIN,DX
MOVAH,4CH
INT21H
CODEENDS
ENDBEGIN
解:
STRINGDB30,?
,30DUP〔?
〕
ASSUMECS:
CODE,DS:
START:
MOVAX,DATA
MOVDS,AX
LEADX,STRING
MOVAH,0AH
MOVCL,STRING+1
XORCH,CH
ADDCX,2
ADDDX,CX
MOVBX,DX
MOVBYTEPTR[BX],'
$'
LEADX,STRING+2
MOVAH,09H
MOVAH,4CH
ENDSTART
XORAL,AL
MOVRESULT,AL
MOVRESULT+1,AL
MOVRESULT+2,AL
LEASI,TABLE
MOVCX,90
CHECKLODSB
SUBAL,90
JSX1
INCRESULT
JMPNEXT
X1:
ADDAL,10
JSX2
INCRESULT+1
X2:
INCRESULT+2
LOOPCHECK
DATASEGMENT
TABLEDB100DUP(?
MAXDB?
DATAENDS
STACKSEGMENT
DB100DUP(?
STACKENDS
CODESEGMENT
ASSUMECS:
CODEDS;
DATA,SSSTACK
STARTMOVAX,DATA
MOVDS,AX
MOVAX,STACK
MOVSS,AX
LEASI,TABLE
MOVDX,0
MOVCX,99
MOVAL,[SI]
NEXT:
INCSI
CMPAL,[SI]
JNCCC
MOVAL,[SI]
CC:
DECCX
JCXNZNEXT
MOVMAX,AL
CODE:
ENDS
ENDSTART
STRINGDB100,SPACEDB0,LIDB0,GIDB0,NUMDB0?
100DUB(?
STRING1DB“PLEASEINPUTASTRING〞,0D,0A,$
STRING2DB“WRONG〞,0D,0A,$
STACKSEGMENT
DB100DUB(?
STACKENDS
ASSUMECSCODE,DS,DATA,SS:
STACK
MOVEAX,DATA
MOVDS,AX
MOVAX,STACK
MOVSS,AX
LEADX,STRING
MOVAH,09H
LEADX,STRING
MOVAH,0AH
MOVCX,STRING+1
LEASI,STRING
ADDSI,2
NEXT:
MOVAL,[SI]
CMPAL,7AH
JNCERROR
CMPAL,61H
JNZLTADD
CMPAL,5AH
CMPAL,41H
JNCGTADD
CMPAL,39H
CMPAL,30H
JNCNUMADD
CMPAL,20H
JZSPADD
JMPGOON
GOON:
INCSI
DEXCX
JNZNEXT
EXIT:
MOVAH,4CH
ERRO:
MOVDX,STRING2
MOVAH,09H
LTADD:
INCLI
GTADD:
INCGT
NUMADD:
INCNUM
SPADD:
INCSPA
JMPGOOG
ENDS
ENDSTART
BUFDB100,?
,100DUP〔?
X1PROCFAR
PUSHAX
PUSHDX
PUSHSI
PUSHCX
SUBAL,20H
MOVSI,AL
RET
X1ENDP
LEAST,BUF+2
MOVCL,BUF+1
CHECK:
LODSB
CMPAL,'
A'
JLNEXT
CMPAL,'
Z'
JGNEXT
CALLX1
LEADX,BUF+2
第五章
5.1RAM和ROM;
ROM为只读存储器,RAM可以读写的随机存储器,RAM掉电数据易失!
速度,ram比ROM快!
5.2DRAM的存储单元以电容来存储信息,电路简单,但是电容总存在漏电,时间长了存放的信息就丧失或者出现错误,需要对这些电容充电,即所谓刷新!
5.3内存地址范围是ֿy0:
00000H~01FFFH
Y3:
06000H~07FFFH
Y5:
0A000H~0BFFFH
Y7:
0E000H~0FFFFH
5.41、32片
2、64片
3、8片
4、4片
5.5
5.7在主存和CPU之间设子高速缓冲存储器,他是一种容量不是很大,但是速度几乎能够和CPU进行匹配的存储器;
作用是为解决存储器系统的容量、存取速度及单位本钱能之间的矛盾,采用Cache结构-主存储结构,把正在执行的指令代码单元附近的一局部代码或者数据从主存中存入Cathe中,供CPU在一段时间内使用由于存储器的访问局限性,有一定的Cache的条件下,可以做到是CPU大局部取指令代码及进行数据的读写操作都只要通过访问Csche,而不是直接访问主存,从而提高速度。
直接映像:
每个主存块映像到Cache中的一个指定块的方式成为直接映像
全相联映像:
他允许主存中的每一个字块映像到Csche存储器的任何一个字块位置上,也允许从确实被占满的Cache存储器中替换出任哟个旧字块,当访问一个块中的数据时,块地址要与Cache块表中的所有地址标记进行比拟以确定是否命中。
组相联映像方式是全相联映像和直接映像的一种折中方案,它将存储空间分为假设干组,各组之间是直接映像,而组之间是全相联映像,
5.9
通过分级来提高CPU对存储器的访问速度,协调存储器的速度,容量、本钱之间矛盾
第六章
6—1什么是接口?
为什么计算机内一定要配置接口?
接口:
指CPU和存储器、外部设备或者两种外部设备之间、或者两种机器之间通过系统中线进行连接的逻辑部件〔或称电路〕,它是CPU与外界进行信息交换的中转站。
外围设备的种类繁多,有机械式、电子式、磁电式以及光电式等。
其所处理的信息有数字信号、模拟信号、电压信号、电流信号。
不同的是外围设备出路信号的速度相差悬殊,有的速度慢,有的速度快。
另外,微型计算机与不同的外围设备之间所传送的信息格式和电平上下是多种多样的,这样就形成外设接口电路的多样化。
6—2接口电路有哪些功能?
接口与外设之间设置联络线的目的是什么?
答:
接口电路有以下功能
(1)主机与外设的通信联络控制功能。
(2)设备选择功能微机系统中一般有多个外设,主机在不同时刻可能要与不同的外设进行信息交换,I|O接口必须能对CPU送来的外设地址进行译码以产生设备选择信号。
(3)数据缓冲功能解决高速主机与低速外设的矛盾,并且采用数据缓冲或锁存也有利于增大驱动能力。
(4)信号格式转换功能外设直接输出的信号和所需的驱动信号多与微机总线信号不兼容,因此I|O接口必须具有实现信号格式转换的功能。
(5)错误检测功能常见的有传输线路上噪声干扰导致的船速错误和接受与发送速率不匹配导致的覆盖错误。
(6)可编程功能表达I|O接口具有较强的通用性、灵活性和可扩充性。
(7)复位功能接收复位信号,从而使接口本身以及所连的外设进行重新启动
接口与外设之间设置联络线的目的是能够解决两者之间的时需配合问题。
6—3I|O接口有几种编址方式?
各有什么特点?
8088CPU采用何种?
端口有两种编址方式,一种是端口地址和存储器地址统一编址,即存储器映射方式;
另一种是I/O端口地址和存储器地址分开独立编址,即I/O映射方式。
(1)存储器映像编址又称为统一编址,
此编址的优点:
CPU对外设的操作可使用全部的存储器操作指令,寻址方式多,使用方便灵活,且可寻址的外设数量多
缺点:
I|O端口占用了主存地址,相对减少了主存的可用范围,同时,程序的可读性下降。
(2)I|O接口独立编址
优点:
这种系统中主存和I|O端口的地址可用范围都比拟大,容易掌握编出的程序,可读性好
缺点:
I|O指令的功能一般比拟弱,在I|O操作中必须借助CPU存放器进行中转,可寻址的范围较小,还必须有相应的控制线来区别是寻址还是外设。
8088CPU采用的是I|O端口独立编址的方式。
6—4CPU与外设数据传送的方式有哪几种?
何谓程序控制方式?
它有哪两种根本方式?
请分别用流程图的形式描述出来。
传送的方式有:
程序控制、中断控制、直接存储器存取〔DMA〕控制和通道控制等几种方式
程序控制方式:
指完全由程序来控制CPU与外设之间数据传送的时序关系,又分为同步式〔无条件式〕程序控制方式和查询方式〔条件式〕程序控制方式。
6—5什么是中断?
什么是中断源?
8086系统中有哪些中断源?
中断:
指CPU在正常执行程序时,由于内部或外部事件或程序的预先安排引起CPU暂时终止执行现行程序,转而去请求CPU为其效劳的效劳程序,待该效劳程序执行完毕,又能自动返回到被中断的程序继续执行。
中断源:
微型计算机中能引起中断的外部设备或内部原因称为中断源。
通常的中断源包括一般的输入|输出设备、实时时钟、故障源、软件中断
8086包括的中断源有
〔1〕硬件中断其中又包括不可屏蔽中断〔NMI〕和可屏蔽中断〔INTR〕
〔2〕软件中断其中包括除法出错中断、单步中断、溢出中断、指令中断
6—6什么是中断向量?
请表达中断向量号〔中断类型〕、中断向量表和中断效劳程序入口地址三者之间的关系?
中断向量:
中断向量即中断源的识别标志,可用来存放中断效劳程序的入口地址或跳转到中断效劳程序的入口地址。
关系:
每种中断都制定一个中断矢量号,每一种中断矢量号都与一个中断效劳程序相对应。
中断效劳程序的入口地址存放在内存储器的中断矢量表内。
中断矢量表是中断矢量号与它相应的中断效劳程序转换表。
8086以中断矢量为索引号,从中断矢量表中取得中断效劳程序的入口地址。
6—7简述8086CPU对中断的响应和处理过程。
中断响应过程:
CPU接受到外设的中断请求信号时,假设为非屏蔽