《微型计算机技术》课程习题第四版Word格式文档下载.docx
- 文档编号:21014518
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:36
- 大小:48.60KB
《微型计算机技术》课程习题第四版Word格式文档下载.docx
《《微型计算机技术》课程习题第四版Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《《微型计算机技术》课程习题第四版Word格式文档下载.docx(36页珍藏版)》请在冰豆网上搜索。
2.5状态标志和控制标志又何不同?
程序中是怎样利用这两类标志的?
8086的状态标志和控制标志分别有哪些?
2.6总线周期的含义是什么?
8086/8088的基本总线周期由几个时钟组成?
如果一个CPU的时钟频率为24MHz,那么,它的一个时钟周期为多少?
一个基本总线周期为多少?
如主频为15MHz呢?
2.7在总线周期的T1、T2、T3、T4状态,CPU分别执行什么动作?
什么情况下需要插入等待状态Tw?
Tw在哪儿插入?
怎样插入?
2.8CPU启动时有哪些特征?
如何寻找系统的启动程序?
2.98086和8088是怎样解决地址线和数据线的复用问题的?
ALE信号何时处于有效电平?
2.10BHE#信号和A0信号是怎样的组合解决存储器和外设端口的读/写操作的?
这种组合决定了8086系统中存储器偶地址体及奇地址体之间应该用什么信号区分?
怎样区分?
2.11RESET信号来到后,CPU的状态有那些特点?
2.12在中断响应过程中,8086往8259A发的两个INTA#信号分别起什么作用?
2.13从引腿信号上看,8086和8088有什么不同?
2.14在编写程序时,为什么通常总要用开放中断指令来设置中断允许标志?
2.15T1状态下,数据/地址线上是什么信息?
用哪个信号将此信息锁存起来?
数据信息是什么时候给出的?
用时序表示出来。
2.16画出8086最小模式的读周期时序。
2.178086最多可有多少级中断?
按照产生中断的方法,中断分为哪两大类?
2.18非屏蔽中断有什么特点?
可屏蔽中断有什么特点?
分别在什么场合?
2.19什么叫中断向量?
它放在哪里?
对应于1CH的中断向量在哪里?
如1CH中断程序从5110H:
2030H开始,则中断向量应怎样存放?
2.20从8086/8088的中断向量表中可以看到,如果一个用户想定义某个中断,应该选择在什么范围?
2.21非屏蔽中断处理程序的入口地址怎样寻找?
2.22叙述可屏蔽中断的响应过程,对于16位微型机系统来说,一个可屏蔽中断或者非屏蔽中断响应后,堆栈顶部四个单元中是什么内容?
2.23一个可屏蔽中断请求来到时,通常只要中断允许标志为1,便可在执行完当前指令后响应,在哪些情况下有例外?
2.24在对堆栈指针进行修改时,要特别注意什么问题?
为什么?
2.25在编写中断处理子程序时,为什么要在子程序中保护许多寄存器?
有些寄存器即使在中断子程序中并没有用到也需要保护,这又是为什么(联系串操作指令执行时遇到中断这种情况来回答)?
2.26一个可屏蔽中断响应时,CPU要执行哪些读/写周期?
对一个软件中断又如何?
2.27中断处理子程序在结构上一般是怎样一种模式?
2.28软件中断有哪些特点?
在中断处理子程序和主程序的关系上,软件中断和硬件中断有什么不同之处?
2.298086的储存器空间最大可以为多少?
怎样用16位寄存器实现对20位地址的寻址?
2.30与前几代CPU相比,Pentium采用了那些主要的先进技术?
2.31从体系结构上,Pentium从哪几个方面进行了改进?
2.32阐述Pentium的主要部件机器功能。
2.33Pentium的总线接口部件BIU实现哪些功能?
2.34采用CISC技术和RISC技术的CPU分别有什么特点?
2.35什么是超标量流水线技术?
Pentium有哪两条流水线?
两条流水线有什么区别?
2.36分支预测技术的优点是什么?
2.37分支预测技术是基于怎样的规律而实施的?
叙述分支预测技术的实现原理。
2.38Pentium的指令流水线由哪些部件构成?
这些部件的主要功能分别是什么?
2.39Pentium的指令流水线是怎样运行的?
2.40Pentium有哪三种工作方式?
为什么要这样多工作方式?
2.41Pentium的实地址工作方式有什么特点?
2.42Pentium的实地址方式用于什么时候?
为什么说它是为建立保护方式作准备的方式?
实地址工作方式有什么特点?
2.43Pentium通常工作于什么方式?
能够一开机就进入这种方式吗?
2.44保护方式下有哪些特点?
保护方式下为什么要用3种地址来描述存储空间?
2.45Pentium虚拟8086方式有什么特色?
为什么要设置这种方式?
2.46实地址方式和虚拟8086方式都是类似于8086的方式,从使用场合和工作特点上看,这两种方式有什么主要差别?
2.47Pentium的标志寄存器中,哪些是状态标志?
哪些是控制标志?
哪些是系统方式标志?
2.48Pentium的段寄存器和8086有什么差别?
这种差别为Pentium的功能提高带来什么长处?
2.49Pentium在3种工作方式下,"
段"
的长度有什么差别?
2.50什么叫段基地址?
它有多少位?
什么叫选择子?
选择子用来选什么值?
2.51Pentium的段描述符寄存器中包含哪些内容?
2.52Pentium的逻辑地址,线性地址,物理地址分别指什么?
它们的寻址能力分别为多少?
2.53Pentium的系统地址寄存器指哪几个寄存器?
2.54Pentium采用片内两极管理有什么优点?
2.55Pentium采用拿几种描述符表?
这些表的设置带来什么优点?
2.56在非系统段描述符中,有ED/C作为描述本段扩展方向的段类型位,请说明“向上扩展”和“向下扩展”的含义。
2.57Pentium的主要信号分为哪几类?
2.58Pentium的寄存器分为哪几类?
2.59Pentium的标志寄存器和8086相比扩展了哪些标志位?
2.60Pentium的对外信号分为哪几类?
和16位微处理器相比,哪些信号有明显区别?
2.61Pentium有哪几种总线状态?
分别有什么特点?
2.62结合教材图2.34说明各总线状态之间的转换关系。
2.63流水线式和非流水线式的总线周期各有什么特点?
2.64结合教材图2.35说明非流水线式读/写周期的时序关系。
2.65结合教材图2.35说明流水线式读/写周期的时序关系。
2.66什么是突发式数据传输?
结合教材图2.37说明突发式读/写周期的时序关系。
2.67Pentium的中断机制和16位CPU有什么差别?
2.68Pentium的异常指哪些情况?
2.69Pentium的故障和陷阱有什么差别?
哪些异常是真正的异常?
2.70中断向量和中断描述符之间是怎样一种关系?
2.71Pentium的保护机制的思想是怎样的?
2.72Pentium的段级保护是怎样实现的?
Pentium的页级保护是怎样实现的?
2.73PentiumPro和PentiumⅡ分别在哪些方面作了技术改进?
2.74PentiumⅢ主要做了什么技术改进?
PentiumⅣ在哪些方面作了技术改进?
2.75Itanium采用了哪些新技术使性能在多方面得到提高?
第三章Pentium的指令系统
3.18086汇编语言指令的寻址方式有哪几类?
用哪一种寻址方式的指令执行速度最快?
3.2直接寻址方式中,一般只指出操作数的偏移地址,那么,段地址如何确定?
如果要用某个段寄存器指出段地址,指令中应如何表示?
3.3在寄存器间接寻址方式中,如果指令中没有具体指明段寄存器,那么,段地址如何确定?
3.4用寄存器间接寻址方式时,BX,BP,SI,DI分别针对什么情况来使用?
这四个寄存器组合间接寻址时,地址是怎样计算的?
举例进行说明。
3.5设DS=2100H,SS=5200H,BX=1400H,BP=6200H,说明下面两条指令所进行的具体操作:
MOV
BYTEPTR[BP],2000
WORDPTR[BX],2000
3.6使用堆栈操作指令时要注意什么问题?
传送指令和交换指令在涉及内容操作数时分别要注意什么问题?
3.7下面这些指令中哪些是正确的?
哪些是错误的?
如果是错误的,请说明原因。
XCHG
CS,AX
[BX],[1000]
BX,IP
PUSH
CS
POP
IN
BX,DX
BYTE[BX],1000
CS,[1000]
;
(以上由杨钧钧输入)
3.88086系统中,当对SS和SP寄存器的值进行修改时,有什么特殊规定?
这样做的原因是什么?
3.9以下是格雷码的编码表
0——00001——00012——00113——00104——0110
5——01116——01017——01008——11009——1101
请用换码指令和其他指令设计一个程序段,实现格雷码往ASCII的转换。
3.10用加法指令设计一个简单程序,实现两个16位十进制数的加法,结果放在被加数单元。
3.11为什么用增量指令或减量指令设计程序时,在这类指令后面不用进位标志CF作为判断依据?
3.12用乘法指令时,特别要注意先判断用有符号数乘法指令还是用无符号数乘法指令,这是为什么?
3.13字节扩展指令和字扩展指令用在什么场合?
举例说明。
3.14什么叫BCD码?
什么叫组合的BCD码?
什么叫非组合的BCD码?
8086汇编语言在对BCD码进行加、减、乘、除运算时,采用什么方法?
3.15用普通运算指令执行BCD码运算时,为什么要进行十进制调整?
具体讲,在进行BCD码的加、减、乘、除运算时,程序段的什么位置必须加上十进制调整指令?
3.16普通移位指令(带CF的和不带CF的两类)在执行操作时,有什么差别?
在编制乘法程序时,为什么常用移位指令来代替乘除法指令?
试编写一个程序段,实现将BX中的数除以10,结果仍放在BX中。
3.17串操作指令使用时特别要注意和SI,DI这两个寄存器及方向标志DF密切相关。
请具体就指令MOVSB/MOVSW、CMPSB/CMPSW、SCASB/SCASW、LODSB/LODSW、STOSB/STOSW列表说明和SI、DI及DF的关系。
3.18用串操作指令设计实现以下功能的程序段:
首先将100H个数从2170H处搬到1000H处,然后,从中检索相等于AL中字符的单元,并将此单元值换成空格符。
3.19在使用条件转移指令时,特别要注意它们均为相对转移指令,请解释“相对转移”的含义。
如果要往较远的地方进行条件转移,那么,程序中应该怎样设置?
3.20带参数的返回指令用在什么场合?
设栈顶地址为3000H,当执行RET0006后,SP的值为多少?
3.21用循环控制指令设计程序段,从60H个元素中寻找一个最大值,结果放在AL中。
3.22中断指令执行时,堆栈的内容有什么变化?
中断处理子程序的人口地址是怎样得到的?
3.23中断返回指令IRET和普通子程序返回指令RET在执行时,具体操作内容什么不同?
3.24断点中断是指怎样一种中断?
在程序调试中有什么作用?
断点中断指令有什么特点?
设置断点过程对应了一种什么操作?
这种操作会产生什么运行结果?
3.25HLT指令用在什么场合?
如CPU在执行HLT指令时遇到硬件中断并返回后,以下应执行哪条指令?
3.26总线封锁指令用在什么场合?
以飞机定票系统为例说明总线封锁指令的作用(设飞机定票系统为一个多处理器系统,每个处理器都是平等的)。
3.27设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?
当执行PUSHBX指令后,栈顶地址和栈顶2个字节的内容分别是什么?
3.28在DS段中有一个从TABLE开始的由160个字符组成的链表,设计一个程序,实现对此表进行搜索,找到第一个非0元素后,将此单元和下一单元清0。
3.29下面的程序段将ASCII码的空格字符填满100个字节的字符表。
阅读这一程序,画出流程,并说明使用CLD指令和REPSTOSB指令的作用,再指出REPSTOSB指令执行和那几个寄存器的设置有关?
CX,SEGTABLE
TABLE为字节表表头
ES,CX
DI,OFFSETTABLE
DI指向字节表
AL,'
'
CX,64H
字节数
CALL
FILLM
调用数子程序
...
FILLM:
JCXZ
EXIT
CX为0则退出
DI
保存寄存器
CX
CLD
REP
STOSB
方向标志清零
CX
重复填数
DI
EXIT:
RET
3.30下程序将一个存储块的内容复制到另一个存储快,进入存储段时,SI中为源区起始地址的偏移量,DI中为目的区起始地址的偏移量,CX中为复制的字节数。
阅读程序并说明具体的REPMOCSB指令使用与那些寄存器有关?
保存寄存器
SI
CMP
DI,SI
看源区和目的区的地址哪个高
JBE
LOWER
如目的区地址底,则转移
STD
如目的区地址高,则设方向标志为1
ADD
SI,CX
从最后一个字节开始复制
DEC
SI
调整源区地址
DI,CX
调整目的区地址
JMP
MOVEM
LOWER:
CLD
从第一个字节开始复制
MOVEM:
MOVSB
3.31下面的程序实现对两个存储区中的字进行比较。
如找到一对不同的字,则退出,此时,ZF为0,DI指向此字;
如两个存储区冲所有的字一一象同,则退出程序时,CX中植为0,ZF为1。
阅读这一程序段,并仿此设计一个比较字节块的程序段。
MATT:
SI,OFFSETSOURCE
源区首址
DI,OFFSETTARGET
目的区首址
CX,NUMBER
如CX为0,则结束
保存有关寄存器
清方向标志
REPE
CMPSW
JZ
MATCH
比较
PUSHF
ZF为1,则转移
SUB
DI,2
ZF为0,则DI指向次字
POPF
推出
MATCH:
恢复寄存器
3.32下面的程序实现在TABLE为起始地址的100个字符长度的表中检索“$"
字符。
分析程序,然后说明REPNESCASB指令的具体执行过程。
START:
表段地址送ES
ES,CX
表偏移量送DI
$'
检索的关键字
检索的字节数
保存起始地址
清除方向标志
REPNE
SCASB
检索
JNZ
NFOUN
如未找到,则转移
DI,1
找到,则指向次字符
EXIT
NFOUN:
恢复起始地址
RET
(以上由1007孙成长输入)
3.33下面的程序实现两个32位不带符号的想乘,被乘数在DX和AX寄辰器中,乘数在CX和BX寄辰器中,最后的64位乘积在DX,CX,BX,AX中。
图3-33说明乘法过程。
读懂程序段和附图,并自己设计一个程序,实现一个16位数和一个32位无符号数相乘。
STAT:
MUL64
HI0
DW
?
LO0
HI1
LO1
HI2
LO2
HI3
LO3
HI4
LO4
MUL64:
HI0,DX
保存被乘数
LO0,AX
MUL
BX
得部分乘积1
HI1,DX
保存部分乘积1
LO1,AX
AX,HI0
得部分乘积2
BX
HI2,DX
保存部分乘积2
LO2,AX
AX,LO0
得部分乘积3
HI3,DX
保存部分乘积3
LO3,AX
得部分乘积4
HI4,DX
保存部分乘积4
LO4,AX
AX,LO1
乘积的低16位在AX中
BX,HI1
乘积的次低16位在BX中
BX,LO2
ADC
HI2,0
BX,LO3
CX,HI2
乘积的次高16位在CX中
HI4,0
CX,LO4
DX,HI4
乘积的高16位在DX中
DX,0
3.34下面的程序实现两个32位带符号数的乘法,其中调用了题3.33中的非符号数相乘的程序MUL64,结果放在DX、CX、BX、AX四个寄存器中,进入程序时,DX、AX中为被乘数,CX、BX中为乘数。
读懂程序后再设计一个16位带符号数和32位带符号数相乘程序。
MULS64:
[1000],0
1000单元作为负数标志
DX,0
乘数为负数吗?
JNS
CHKK
否,则转CHKK
NOT
AX
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型计算机技术 微型计算机 技术 课程 习题 第四
![提示](https://static.bdocx.com/images/bang_tan.gif)