微机原理课后习题参考答案文档格式.docx
- 文档编号:5145808
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:41
- 大小:69.02KB
微机原理课后习题参考答案文档格式.docx
《微机原理课后习题参考答案文档格式.docx》由会员分享,可在线阅读,更多相关《微机原理课后习题参考答案文档格式.docx(41页珍藏版)》请在冰点文库上搜索。
2.28086CPU有哪些类型的寄存器?
有14个16位寄存器。
分为五类,通用寄存器组、指示器和变址寄存器组、段寄存器组、指令指示器、标志状态寄存器。
2.38086CPU段寄存器的作用是什么?
当前段的基址存放在段寄存器中。
代码段寄存器CS:
内容指出当前代码段基地址
堆栈段寄存器SS:
内容指出当前程序所使用的堆栈段的基地址
数据段寄存器DS:
指出了当前程序使用的数据段基地址,存放程序中的变量
附加段寄存器ES:
指出了当前程序使用的附加段,附加段用来存放数据或存放处理后结果。
2.4通用寄存器中,八位寄存器与对应十六位寄存器有什么关系?
如果AX=89ABH,AH、AL的内容各是什么?
16位通用的寄存器可以分成两个8位寄存器,即可将每个通用寄存器的高8位和低8位,作为独立的8位通用寄存器使用。
AH:
89HAL:
ABH
2.5标志寄存器各个位的作用是什么?
进位标志CF:
当进行加法运算时结果使最高位产生进位,或在减法运算时,结果使最高位产生借位,则CF=1,否则CF=0,也有其他一些指令会影响CF。
辅助进位标志AF:
当加法运算时,如果低四位向高位有进位,或者低四位向高位有借位,AF=1,否则AF=0。
奇偶标志位PF:
运算结果低8位所含1的个数为偶数,PF=1;
否则为0。
零标志位ZF:
运算结果为零时ZF=1;
符号标志SF:
运算结果为负SF=1,否则为0。
溢出标志OF:
当运算结果超出了本条指令数据长度所能表示的数据范围时,OF为1,表示溢出,否则为0。
方向标志DF:
串操作的地址变化方向控制标志,当DF=0,地址递增,DF为1,地址递减
中断允许标志IF:
如果IF=1,则允许微处理器响应可屏蔽中断,IF=0,则禁止可屏蔽中断。
陷阱标志TF:
若TF为1,则微处理器按单步方式执行指令,执行一条指令就产生一次类型为1的内部中断。
2.6指令指针的作用是什么?
如果CS内容为2000H,IP内容为0200H,下一条执行的指令码存放的对应物理地址是多少?
IP指向当前代码中下一条要执行的指令的偏移地址。
下一条指令物理地址为:
20200H
2.10什么是物理地址、逻辑地址?
逻辑地址2000:
2345H对应的物理地址是多少?
物理地址:
CPU对物理的存储器系统访问时,通过地址线给出在1M字节地址空间里每一个存储单元的唯一20位地址,称为该存储单元的物理地址。
逻辑地址:
编程结构里使用的地址。
22345H
2.128086CPU最大模式最小模式有什么区别?
为什么设置不同的模式?
当组成简单的微型计算机时,8086CPU处于一种最小结构,为最小模式;
当组成复杂的微型计算机系统时,8086处于一种最大结构,称为最大模式。
原因:
适用于不同环境下使用的微型计算机系统。
2.13什么是时钟周期、总线周期、指令周期?
它们有什么关系?
时钟周期:
时钟脉冲信号的一个周期时间叫一个时钟周期
总线周期:
经外部总线执行信息的输入/输出过程
指令周期:
执行一条指令所需要的时间
指令周期包含总线周期,总线周期包含时钟周期。
第3章Pentium系列微处理器的基本结构
课后答案:
3.3Pentium的寄存器组包括哪些类型的寄存器?
简要说明基本结构寄存器、系统级寄存器的用途是什么?
Pentium微处理器的寄存器组主要包括以下几个部分:
基本结构寄存器、系统级寄存器。
调试寄存器。
模型专用寄存器和浮点寄存器。
Pentium微处理器有16个基本机构寄存器,这16个寄存器按其用途可分为通用寄存器、专用寄存器和段寄存器三类。
通用寄存器有8个,即累加器EAX、机制寄存器EBX、计数寄存器ECX、数据寄存器EDX、堆栈指针ESP、基址指针EBP、源编制寄存器ESI以及目的变址寄存器EDI。
通用寄存器中,32位寄存器EAX、EBX、ECX、EDX、EBP、ESP、ESI和EDI,他们既可保存算术和逻辑运算中的操作数,也可保存地址。
专用寄存器有指令指针指示器和标志寄存器。
指令指针EIP是32位寄存器,他的低16位成为IP,用与兼容16位CPU,其内容是下一条要取入CPU的指令在内存中的偏移地址。
标志寄存器EFLAGS是32位寄存器,可分为三类:
状态标志,控制标志和系统标志。
段寄存器有两部分。
一部分是编程可见的6个16位选择符寄存器,即8086、80286处理器中有CS、DS、ES、SS四个段寄存器,80386以上的处理器中增添了FS和GS两个段寄存器。
在80286以上的处理器中,每一个段寄存器都有一个与之相对应的段描述符寄存器,用来描述一个段的段基地址、段限和段的属性。
系统级寄存器包括四个系统地址寄存器,用与控制分段存储器管理中数据结构的位置,所以也成为存储管理寄存器。
Pentium用这四个寄存器保存保护方式下时常使用的数据结构的基地址,界限以及相关属性保护起来,以便快速访问。
Pentium微处理器由于控制管理的需要,又配备了
和
控制寄存器,在这五个控制寄存器中保存着全局性和任务无关的机器状态。
3.4说明寄存器EAX、AX、AH、AL之间的关系。
累加器EAX既可以保存算术和逻辑运算的操作数,也可以保存地址。
它的名称来源于8086处理机的通用寄存器AX,所以,EAX的低16位可按原来的名字访问。
16位寄存器AX每个字节均有另一个名字,字节寄存器命名为AH(高字节)和AL(低字节),这些8位通用寄存器也可以按原来的名字访问。
3.5IP/EIP寄存器的用途是什么?
指令指针EIP是32位寄存器,它的低16位称为IP,用与兼容16位CPU,其内容是下一条要取入CPU的指令在内存中的偏移地址。
当一个程序开始运行时。
系统把EIP清零,每取入一条指令,EIP自动增加取入CPU的字节数目,所以称EIP为指令指针。
3.7Pentium段寄存器由哪几部分构成?
与8086段寄存器有什么区别?
段寄存器由两部分,一部分是编程课件的6个16位选择符寄存器,即8086、80286处理器中有CS、DS、ES、SS四个段寄存器,80386以上的处理器中增添了FS和GS两个段寄存器。
对应在另一部分的、是编程不可见的6个64位的描述符寄存器。
在80286以上的处理器中,每一个段寄存器都有一个与之相对应的段描述符寄存器,用来描述一个短的段基地址、段限和段的属性。
3.9Pentium有那几个系统地址寄存器?
为什么设置这些寄存器?
由于系统存储管理的需要,Pentium有4个系统地址寄存器,用与控制分段存储器管理中数据结构的位置,所以也称为存储管理寄存器。
他们分别是全局描述符表寄存器GDTR,中断描述符表寄存器IDTR,局部描述符表寄存器LDTR和任务状态寄存器TR。
Pentium微处理器用这四个寄存器保存保护方式下市场使用的数据结构的基地址、界限以及相关属性保护起来,以便快速访问。
3.10说明Pentium引脚
、
~
的作用。
ADS:
地址选通,有效时表示CPU启动1个总线周期,T1有效
BE7~BE0:
字节允许,对应每个字节,由地址A2-A0产生。
BRDY:
突发就绪,类似Ready,结束一个总线周期,此时外设准备好,将进入总线流水,可用于确定是否插入等待状态。
Cache:
Cache控制,指示目前处于Cache周期。
KEN:
Cache允许,有效时,指示进入突发读周期,将外部数据复制到内部Cache。
NA:
下一地址有效,用于支持地址流水线操作。
采样到NA有效的两个时钟周期后,CPU可送出新地址。
3.11说明INIT、RESERT信号的作用。
设置INIT的目的是什么?
Pentium复位后从什么位置开始执行程序?
INIT:
初始化,热复位,与RESET类似,不清0Cache、浮点寄存器。
RESET:
复位,冷复位,1)实地址方式;
2)A31-A20为FFFH(12个),3)CS=F000H,EIP=0000FFF0H;
4)清0Cache和浮点寄存器;
5)清0相关寄存器。
Pentium复位后从内存0FFFFFFFOH处开始执行软件。
3.12Pentium总线操作有几种时钟状态?
与一般的始终状态有什么区别?
Pentium微处理器总线操作有6中时钟状态:
Ti、T1、T2、T12、T2p、TD。
T12:
表示总线上有两个进行的总线周期,在第一个周期传输数据中启动了第二个总线周期。
T12对于第一个总线周期是T2,对于第二个总线周期是T1。
T2p:
表示总线上有两个进行的总线周期,两个总线周期都处于T2或后续的时钟状态。
TD:
表示总线上有一个在进行的总线周期。
这个总线周期的地址和状态信息在前面T12时钟送上总线,但由于从读操作到写操作,或者从写操作到读操作要一个时钟的缓冲,或者前一个总线周期的操作占用了数据线和BRDY,使得数据和BRDY信号不能再第二个周期在T1之后的时钟状态进入T2,这时插入一个时钟状态TD。
3.16说明Pentium实地址模式的特点。
8086的工作模式、Pentium是地址模式、Pentium虚拟8086模式之间的异同?
答:
Pentium实地址模式特点:
能有效地使用8086所没有的寻址方式、32位寄存器和大部分指令。
实地址方式,Pentium与8086兼容,基本体系结构相同。
虚拟8086方式与实地址方式的不同:
1)虚拟8086方式是一个程序的运行方式。
2)实地址方式是处理器的工作方式。
3.17说明Pentium保护虚拟地址模式特点。
为什么引入保护机制?
有几个特权级?
在保护方式下,逻辑地址由选择符和偏移地址两部分组成,选择符存放在段寄存器中,但它不能直接表示段基地址,而由操作系统通过一定的方法取得段基地址,再和偏移地址相加,从而求得所选存储单元的物理地址。
在程序运行过程中,应防止应用程序破坏系统程序、某一应用程序破坏其他应用程序、错误地把数据当做程序运行等情形的出现。
为避免出现这些情形,采取的保护机制。
Pentium微处理器有多种保护方式,其中最突出的是环保护方式。
环保护是在用户程序与用户程序之间、用户程序与操作系统之间实行隔离,通过特权级实现。
特权级:
4级,0~3(高~低),0级分配给操作系统核心。
第4章
4.2
DRAM的特点:
动态RAM是利用电容存储电荷的原理来保存信息的。
运行中需要不断刷新,单片存储容量高
刷新:
将存储单元的内容重新按原值设置一遍,而不是将所有单元都清零
为什么要刷新:
因为读/写操作本身是随机的,有可能某些存储单元长期得不到访问,无读出就无重写,原信息会丢失。
所以必须采用定时刷新的方法。
刷新的方法:
①利用动态RAM控制器来实现刷新的问题;
②在每个动态RAM芯片上设置刷新逻辑电路
4.3
SRAM的特点:
SRAM是用触发器存储信息,因此即使信息读出后,它仍保持其原状态。
但电源掉电时,原存信息丢失,故它属易失性半导体存储器。
运行中不需要刷新,速度快,功耗大
当微型计算机系统的存储器容量较小时宜采用SRAM芯片而不宜采用DRAM芯片
4.4
SRAM的引脚类型:
地址信号输入引脚、双向数据输入/输出信号引脚、输出允许信号、读/写控制信号输入引脚
8K*8存储器芯片有8根数据线,13根地址线
4.5
只读存储器的类型:
掩膜ROM:
适合于批量生产和使用
可编程的只读存储器(PROM):
只能实现一次编程不可修改
可擦除、可编程的只读存储器(EPROM):
长期保存信息,可多次擦除和重新编程
电可擦除的可编程只读存储器(EEPROM):
用加电的方法进行在线的擦除和编程,长期保存数据
快速擦写存储器:
整片擦除,擦除、重写的速度快
存储什么类型的信息适合使用只读存储器:
常用来保存固定的程序或数据
4.6
由于多个芯片连接需要选择,片选是CPU高位地址选择存储器芯片
4.7
①总线驱动能力②时序配合③数据线的连接④地址线的连接⑤读写控制线的连接⑥ROM与RAM在存储器中的地址分配⑦对多种宽度数据访问的支持
4.8
①高位地址信号(片选)②最低位地址信号(体选)③低位地址信号(自选)
4.9
RAM存放临时数据和当前的应用软件,非易失的ROM存放核心系统软件。
80X86微处理机复位后从物理地址高端开始运行,所以总是在物理地址空间的高地址位置使用只读存储器ROM。
4.11
(题目有问题。
。
今天问过您了~~)
4.13
当访问的数据是一个对准数据时,一个总线周期可以完成读写,如果访问的数据不是对准的数据时,要通过两个总线周期完成读写过程,因此编程时应当应尽量使数据对准存放。
4.14
高速缓存:
弥补主存速度,在CPU与主存之间设置的高速、小容量的存储器,构成Cache-主存存储层次,速度是Cache的,容量是主存的。
主存速度不够→引出Cache
不可以取代主存,此时引出虚拟存储器
4.15
①CPU访问存储器是通过主存地址进行的。
首先进行主存与Cache的地址变换。
②变换成功(Cache块命中),就得到Cache块号ncb,并由nmr直接送ncr以拼接成nc,这样,CPU就直接访问Cache
③ache块未命中(Cache块失效),就通过相关的Cache表,查看有无空余的Cache块空间,当有空余的Cache块空间,就从多字节通路把所需信息所在的一块调入Cache,同时把被访问的内容直接送给CPU
④Cache中无空余空间,就需根据一定的块替换算法,把Cache中一块送回主存,再把所需信息从主存送入Cache.
4.17
从Cache的地址和主存的地址可以看出,Cache的容量远远小于主存,一个Cache块要对应许多主存块,因此需要按某种规则把主存块装入Cache中
①全相联映像:
主存中的任意一块可装入Cache中的任意块称为全相联映像。
在Cache内,除了必须存放这每一个数据块的内容外,同时还需将每一块的主存储器地址全部记下,每当微处理器要存取一项数据时,Cache的地址映像变换机构将该项数据的地址与存在Cache的标记部分中的所有地址逐个相比,若找到相同的,即将那个Cache位置的内容送给微处理器。
②直接映像:
主存中每一块只能装入到Cache中唯一的特定块位置的方法称为直接映像
主存空间按Cache大小等分成区,每区内的各块与Cache的块一一对应,主存地址中直接产生Cache地址,标志表中比较区号,标志表存储器按地址访问。
③N路组相联映像:
把Cache增加到N路,且在主存的区与Cache的路之间实行全相联映像,在块之间实行直接映像
主存地址中直接产生Cache地址(2路对应地址相同),同时比较各路对应块标记
4.18
当新的一块数据装入Cache时,原存储的一块数据必须被替换掉,对于全相联映像和N路组相联映像技术需要一种替换算法,为了获得高速度,这种算法必须由硬件实现。
最常用的有以下3种算法:
①近期最少使用(LRU)算法:
每行设置一个计数器,Cache每命中一次,命中块计数器清零,其他个块计数器增1,当需要替换时,比较各特定块的计数值,将计数值最大的行换出。
②最不经常使用(LFU)算法:
每块设置一个计数器,新块建立后从0开始计数,每访问一次,被访问块的计数器增1,当需要替换时,对这些特定块的计数值进行比较,将计数值最小的块换出,同时将这些特定块的计数器都清零。
③随机替换:
从特定的块位置中随机地选取一块换出即可。
第五章作业
5.1设DS=3000H,SS=2000H,AX=2A2BH,BX=1200H,CX=889AH,BP=1200H,SP=1352H,
SI=1354H,(31350H)=35H,(31351H)=03CH,(31352H)=8FH,(31353H)=86H,(31354H)=52H,
(31355H)=97H,(326A4)=98H,(326A5H)=86H,(23150H)=88H,(23151H)=31H,(23152H)=99H
(23153H)=77H
下列指令在上述环境下执行,请填空;
(1)MOVAX,1352H;
AX=1352H
(2)MOVAX,[1352H];
AX=868FH
(3)MOV0150H[BX],CH;
(31350H)=88H(31351H)=03CH
(4)MOVAX,0150H[BP];
AX=3188H
(5)POPAX;
AX=7799H,SP=1354H
(6)ADD[SI],CX;
(31354H)=ECH,(31355H)=1FH,SF=0,
ZF=0,PF=0,CF=1,OF=1
(7)SUBBH,0150H[BX][SI];
BH=7AH,SF=0,
ZF=0,PF=0,CF=1,OF=0
(8)INCBYTEPTR0152H[BX];
(31352H)=90H,(31353H)=86H,
CF=不变
(9)INCWORDPTR0152H[BX];
5.2阅读下列程序段填空
(1)MOVBL,98H
MOVAL,29H
ADDAL,BL
DAA
AL=27HBL=98HCF=1
(2)MOVAX,BX
NOTAX
ADDAX,BX
INCAX
AX=0000HCF=0
(3)MOVAX,0FE60H
STC
MOCCX,98
XORCH,0FFH
SBBAX,CX
AX=0FEFEHCF=1
(4)MOVDX,0FFEEH
MOVCL,2
XARDX,CL
DX=FFFBHCF=1
5.3试指出下列指令中源操作数的寻址方式
(1)ADCCX,35[BX][SI]
(2)MOVAX,[3300H]
(3)ANDBX,[BX]
(4)INCWORDPTR[BX]
(5)MOVEAX,[EBX][ESI]
答案:
1.相对基址变址寻址
2.直接寻址
3.寄存器间接寻址
4.寄存器间接寻址
5.基址变址寻址
5.4按下列题意要求分别为每一小题写出相应的汇编语言指令
(1)以寄存器BX和SI作为基址变址寻址方式把存储器的一个字传送到CX寄存器
(2)以寄存器BX和位移量25H作为寄存器相对寻址方式把存储器的一个子和AX相加,把结果送回那个字单元中
(3)将一个字节立即数0B6H与偏移地址为867H的存储器字节单元内容相比较
(4)清除寄存器SI间接寻址的存储器字但愿,同时清零CF标志位
1.MOVCX,[BX+SI]
2.ADD[BX+25H],AX
3.CMPBYTEPTR[867H],0B6H
4.ANDWORDPTR[SI],0
5.5设X.Y.R.S.Z均为16位无符号数的变量。
按已给定的表达式Z(X+Y)/(R-S)→Z有程序如下,是在空格处填入适当的命令
MOVAX,X
____
MOVCX,R
SUBCX,S
MOVZ,AX
MOVZ+2,DX
HLT
ADDAX,Y
MULZ
DIVCX
5.6解释PUSHDI指令是怎样工作的
(1)SP←SP-1,调整SP指针。
(2)将DI内容的高8位压入堆栈指针SP所指的存储单元。
(3)SP←SP-1,调整SP指针。
(4)将DI内容的低8位压入堆栈指针SP所指的存储单元。
5.7Pentium在指令码中怎么区分数据是字(16位)还是双字(32位)?
1.通过指令操作码中的W位来区分。
2.通过操作数大小前缀和段描述符中D/B位联合区分。
5.88086存储单元寻址时,段的使用是怎么规定的?
8086对1M字节的主存空间,从16的倍数的地址开始(段的基地址),以最大64K字节为单位划分一些连续的区域,称为段。
内存一般分为4类逻辑段,分别称为代码段、数据段、堆栈段、附加段。
有效地址EA
CS、SS、ES
SS
基址BP指针
DI
无
ES
目的串变量
SI
DS
源串变量
数据变量
SP
堆栈操作
IP
CS
取指令
段内偏移量
超越段
隐含段
存储器操作类型
5.9由子程序标号的属性是FAR还是NEAR来确定。
5.10子程序调用指令是系统自愿调用的指令,中断指令是随机事件发生后才会调用的指令。
设置中断指令使操作系统能够对随机事件进行有效处理。
5.11当需要处理连续存放在存储器中的一些字节、字或双字数据时适合使用串操作指令。
要设置方向标志位DF和地址指针增量。
5.9子程序远返回和近返回的指令助记符都是RE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课后 习题 参考答案