微机原理知识点整理.docx
- 文档编号:30099136
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:12
- 大小:22.93KB
微机原理知识点整理.docx
《微机原理知识点整理.docx》由会员分享,可在线阅读,更多相关《微机原理知识点整理.docx(12页珍藏版)》请在冰豆网上搜索。
微机原理知识点整理
8086/8088微处理器的编程结构
编程结构:
是指从程序员和使用者的角度
看到的结构,亦可称为功能结构。
从功能
上来看,8086CPU可分为两部分,即总线
接口部件BIU和执行部件EU。
总线接口部件(BIU
组成:
①段寄存器(DS、CS、ES、SS②16
位指令指针寄存器IP(指向下一条要取出
的指令代码;③20位地址加法器(用来
产生20位地址;
④6字节(8088为4字节指令队列缓冲器;
⑤总线控制逻辑。
功能:
负责从内存中取指令,送入指令队列,实现CPU与存储器和I/O接口之间的数据传送。
执行部件(EU
组成:
①ALU(算术逻辑单元;②数据寄存器(AX、BX、CX、DX;
③指针和变址寄存器(BP、SP、SI、DI;④标志寄存器(PSW;⑤EU控制系统。
功能:
负责分析指令和执行指令。
BIU和EU的动作协调原则
BIU和EU按以下流水线技术原则协调工作,共同完成所要求的任务:
①每当指令队列中有两个空字节,BIU就会自动把指令取到指令队列中。
其取指的顺序是按指令在程序中出现的前后顺序。
②每当EU准备执行一条指令时,它会从BIU部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。
在执行指令的过程中,如果必须访问存储器或者I/O端口,那么EU就会请求BIU,进入总线周期,完成访问内存或者I/O端口的操作;如果此时BIU正好处于空闲状态,会立即响应EU的总线请求。
如BIU正将某个指令字节取到指令队列中,则BIU将首先完成这个取指令的总线周期,然后再去响应EU发出的访问总线的请求。
③当指令队列已满,且EU又没有总线访问请求时,BIU便进入空闲状态。
④在执行转移指令、调用指令和返回指令时,由于待执行指令的顺序发生了变化,则指令队列中已经装入的字节被自动消除,BIU会接着往指令队列装入转向的另一程序段中的指令代码。
8086/8088内部的寄存器可以分为通用寄存器和专用寄存器两大类,
通用寄存器包括数据寄存器、指针和变址寄存器,
数据寄存器(AX、BX、CX、DX:
可以存放16位的操作数,也
可分为8个8位的寄存器(AL、AH;BL、BH;CL、CH;DL、DH
来使用。
其中AX称为累加器,BX称为基址寄存器,CX称为
计数寄存器,DX称为数据寄存器,这些寄存器在具体使用上
有一定的差别。
指针寄存器:
SP和BP,其中SP是堆栈指针寄存器,由它和
堆栈段寄存器SS一起来确定堆栈在内存中的位置;BP是基
数指针寄存器,通常用于存放基地址。
变址寄存器:
系统中有两个16位的变址寄存器SI和DI,其
中SI是源变址寄存器,DI是目的变址寄存器,都用于指令的变址寻址方式。
专用寄存器包括段寄存器、指令指针和标志寄存器。
段寄存器:
系统中共有4个16位段寄存器,即代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS和附加段寄存器ES。
这些段寄存器的内容与有效的地址偏移量一起,可确定内存的物理地址。
通常CS划定并控制程序区,DS和ES控制数据区,SS控制堆栈区。
指令指针寄存器
指令指针寄存器IP:
用来控制CPU的指令执行顺序,它和代码段寄存器CS一起可以确定当前所要取的指令的内存地址。
顺序执行程序时,CPU每取一个指令字节,IP自动加1,指向下一个要读取的字节;当IP单独改变时,会发生段内的程序转移;当CS和IP同时改变时,会产生段间的程序转移。
标志寄存器PSW:
用来存放CPU在工作过程中的状态。
共有9个标志位。
可分成两类:
一类为状态标志,一类为控制标志。
其中状态标志表示前一步操作(如加、减等执行以后,ALU所处的状态,后续操作可以根据这些状态标志进行判断,实现转移;控制标志则可以通过指令人为设置,用以对某一种特定的功能起控制作用(如中断屏蔽等,反映了人们对微机系统工作方式的可控制性。
10.8086CPU由哪两部分组成?
它们的主要功能各是什么?
它们之间是如何协调工作的?
11.8086CPU中有哪些寄存器?
各有什么用途?
标志寄存器PSW有哪些标志位?
各在什么情况下置位?
12.8086系统中储存器的逻辑地址和物理地址之间有什么关系?
表示的范围各为多少?
13.已知当前数据段位于储存器的A1000H到B0FFFH范围内,问DS=?
14.某程序数据段中存有两个数据字1234H和5A6BH,若已知DS=5AA0H,它们的偏移地址分别为245AH和3245H,试画出它们在储存器中的存放情况。
立即寻址方式
MOVAH,80HADDAX,1234H
MOVECX,123456HMOVB1,12H
MOVW1,3456HADDD1,32123456H
寄存器寻址方式
MOVAX,BX;MOVCL,DL;
MOVESI,EDI;INCCX;
ROLAH,1;
直接寻址方式
若DS=4000H,则此指令式将数据段中物理地址为42000H单元的内容传送AL寄存器。
例:
MOVAL,[2000H];[DS*10H+2000H]送AL;
MOVAX,[2000H];[DS*10H+2000H]送AL,[DS*10H+2000H+1]送AH;
MOVAL,ES:
[2000H];
这里ES是段超越前缀,所以源操作数是在ES*10H+2000H的内存单元中。
MOV[3000H],AL;
目的操作数采用直接寻址,将AL送[DS*10H+3000H]的内存单元。
立即寻址MOVAX,3069HMOV40H,AL(×MOVAH,3064H(×
寄存器寻址MOVAL,BHMOVAH,BX(×MOVCS,AX(×
直接寻址MOVAX,[2000H]MOVAX,VALUE(×MOVAX,WORDPTRVALUE(
寄存器间接寻址MOVAX,[BX]MOVAX,[CX](×
寄存器相对寻址MOVAX,COUNT[SI]MOVAX,[COUNT+SI]
基址变址寻址MOVAX,[BP][DI]MOVAX,[BX][BP](×MOVAX,[SI][DI](×
相对基址变址寻址MOVAX,MASK[BX][SI]
MOVDS,ES(×MOVDS,2000H(×
(1MOVCS,1000H(2ADCBX,25H(3ADD[BX],20(4MULAX,BL(5PUSHCS(6MOVDX,2000H(7ADD[BX+SI],30H(8POPCS(9INC[SI](10MOV[BX],[SI]
解:
(1错误(2正确(3错误(4错误(5正确
(6正确(7错误(8错误(9错误(10错误
①屏蔽AL的第0、1两位②置AL的第5位为1③使AL的第0、1位变反④测试某些位是0是1ANDAL,0FCHORAL,20HXORAL,3TESTAL,1JZEVEN
有100个学生的计算机课程成绩存放在COMPUT缓冲区中,编写指令序列统计85分以上、60~85分、60分以下各有多少人,并把统计结果存入ORDER开始的三个字节单元中。
解:
LEASI,COMPUTAGAIN:
MOVAL,[SI]GE85:
CMPAH,5MOVCX,100CBWJGERANGE1
MOVBL,10IDIVBLRANGE2:
INCDLMOVBH,0CMPAL,9JMPNEXT
MOVDX,0JGERANGE1RANGE1:
INCDH
CMPAL,8JEGE85NEXT:
INCSI
CMPAL,6JGERANGE2LOOPAGAIN
INCBHMOVORDER,DH
JMPNEXTMOVORDER+1,DL
MOVORDER+2,BH
HLT
编写子程序,将从键盘输入的小写字母用大写字母在屏幕显示出来,如不是字母则结束。
解:
CODESEGMENTNEXT:
MOVAH,1MOVDL,AL
ASSUMECS:
CODEINT21HMOVAH,02H
KEYINPROCFARCMPAL,61HINT21H
PUSHAXJBEXITJMPNEXT
PUSHDXCMPAL,7AHPOPDX
JAEXITPOPAX
SUBAL,20HRET
KEYINENDP
CODEENDS
ENDKEYIN
6.13编写子程序,要求从键盘输入一个4位的十六进制数,然后将其转换成二进制数并在屏幕上显示出来。
1、DATPROSEGMENT
2、START:
MOVAX,DATPRO
3、AGAIN:
MOVAL,[SI]
BUFFDB5MOVDS,AXCMPAL,30H
DB?
LEADX,BUFFJBEXIT
DB5DUP(?
MOVAH,0AHCMPAL,39H
DATPROENDSINT21HJBEDECI
PROSEGSEGMENTMOVBL,[BUFF+1]CMPAL,61H
ASSUMECS:
PROSEG,DS:
DATPROLEASI,BUFF+2JBEXIT
CMPAL,66HJAEXIT
4、SUBAL,27H
DECI:
SUBAL,30HDISPL:
PUSHAX
MOVCL,4MOVAH,2
SHLAL,CLINT21H
MOVCX,4POPAX
LOOP1:
SHLAL,1LOOPLOOP1
JCONEINCBL
MOVDL,30HINCSI
JMPDISPLCMPBL,0
ONE:
MOVDL,31HJNZAGAIN
EXIT:
MOVAH,4CH
INT21H
PROSEGENDS
ENDSTART
7.1什么是中断?
中断有什么作用?
解:
中断是指在计算机执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的时间处理程序。
待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。
利用中断,计算机可以较好的实现CPU与外部设备之间的同步工作,进行实时处理,可以大大提高CPU的工作效率。
7.28086/8088系统中,中断分为哪几类?
解:
硬件中断(外部中断;软件中断(内部中断。
硬件中断又可分为:
非屏蔽中断、可屏蔽中断。
7.38086/8088CPU上中断请求和中断响应信号是什么?
解:
INTA
7.4中断标志IF的作用是什么?
解:
IF中断标志位,IF=1表示允许CPU响应可屏蔽中断。
7.5什么是中断向量?
中断向量表?
解:
中断向量是中断服务程序的人口地址。
中断向量表是将各个中断服务程序的入口地址有次序地存放在内存一片连续区域中,所形成的地址表被称为中断向量表,也称为中断服务程序的入口地址表。
7.6中断类型码为50H,则其对应的中断向量存放在哪几个存储单元?
解:
500H
7.7设78H号中断的中断向量为1000:
2340H,写出该中断向量在内存中的具体存放情况。
解
10H
00H
23H
40H
7.9一片8259A可提供多少个中断类型码?
解:
8个
7.108259A的设定中断优先级方式有几种?
各有什么特点?
解:
全嵌套方式:
固定优先级,IR0最高,IR7最低。
特殊全嵌套:
响应同级中断请求。
优先级自动循环:
某级被响应后,降为最低。
优先级特殊循环方式:
编程指定最低优先级。
7.128259A屏蔽中断源的方式有几种?
各有什么特点?
解:
(1普通屏蔽方式:
IMR某位置1,对应的中断被屏蔽;IMR某位置0,允许该级中断产生。
(2特殊屏蔽方式:
IMR某位置1,同时使ISR的对应位复位以屏蔽本级中断,开放较低级别中断。
7.138259A连接数据总线的方式有几种?
各有什么特点?
解:
缓冲方式:
在多片8259A级联的大系统中,8259A通过总线驱动器与系统数据总线相连。
非缓冲方式:
在只有单片8259A或片数不多8259A时,将8259A直接于数据总线相连。
7.148259A的中断请求触发方式有几种?
各有什么特点?
解:
边沿触发方式:
上升沿作为中断请求信号,IR出现上升沿信号后,可一直保持高电平。
电平触发方式:
高电平作为中断请求信号,但必须在EOI命令或CPU开放中断之前撤除高电平。
7.15在8259A中,通过奇地址访问的寄存器有几个?
通过偶地址访问的寄存器有几个?
解:
(1奇地址四个:
ICW2、ICW3、ICW4、OCW1
(2偶地址三个:
ICW1、OCW2、OCW3
7.168259A初始化时设置为非中断自动结束方式,编写中断服务程序时应注意什么?
解:
需要8086发命令清除ISR中级最高的位或其他指定的位,才可以产生中断。
7.178259A初始化的过程如何?
解:
(1顺序逻辑复位,准备按ICW2,ICW3,ICW4的顺序接收初始化字;
(2清除ISR和IMR;
(3指定优先级次序为IR0、IR1……;
(4从片的地址设置为7;
(5设定为普通屏蔽方式;
(6设置为非自动中断结束方式;
(7状态读出电路预置为IRR。
7.18外设向CPU提出中断申请,但没有得到响应,其原因有哪些?
解:
(1中断请求被屏蔽
(2中断不是开放的或者是允许的
(3在现行指令的结束后才响应中断
7.20写操作命令字实现禁止8259A的IR0和IR7引脚的中断请求,然后撤消这一禁止命令。
设8259A的端口地址为200H、202H。
解:
MOVAL,110000001B
MOVDX,200H
OUTDX,AL
MOVAL,100000000B
OUTDX,AL
一个完整的中断过程包括那几个阶段?
其中哪些步骤由系统自动完成?
哪些环节由用
户完成?
解:
一个完整的中断过程由中断请求、中断响应和中断处理3个阶段组成。
一次中断处理过程通常要经过如下几个步骤完成:
1中断请求:
由中断源发出并送给CPU的控制信号。
2关中断:
保证在此之后的一小段时间内CPU不能响应新的中断请求。
3保存断点,保护现场:
用中断隐指令实现。
断点和现场信息一般保存在堆栈中,保存信息一定要
3保存断点,保护现场:
用中断隐指令实现.断点和现场信息一般保存在堆栈中,保存信息一定要保存断点,保护现场:
用中断隐指令实现.断点和现场信息一般保存在堆栈中,保存信息一定要完整完成,以保证被停下来的程序得以继续正常运行.完整完成,以保证被停下来的程序得以继续正常运行.4判别中断源,转中断服务:
找出中断服务程序的入口地址.多个中断源时找出中断优先级最高的判别中断源,转中断服务:
找出中断服务程序的入口地址.多个中断源时找出中断优先级最高的中断源.中断源.5开中断,以便尽快地进入可以响应更高级别中断请求的运行状态.开中断,以便尽快地进入可以响应更高级别中断请求的运行状态.6若有更高级别中断请求到来,则进行新的中断响应过程.若有更高级别中断请求到来,则进行新的中断响应过程.7执行中断服务程序,完成后准备返回主程序,为此,执行关中断.执行中断服务程序,完成后准备返回主程序,为此,执行关中断.8恢复现场,恢复断点.恢复现场,恢复断点.9开中断.关中断和开中断是为了保证能完整的恢复现场的操作.开中断之后,若有更高级别中断开中断.关中断和开中断是为了保证能完整的恢复现场的操作.开中断之后,若有更高级别中断请求来到,则进入新的中断响应过程.请求来到,则进入新的中断响应过程.10返回断点.返回断点.步由系统自动完成,,,,,,步由用户完成.其中第3与第8步由系统自动完成,2,4,5,7,9,10步由用户完成.9.11设8255A的地址范围是100H~103H,试编写分别完成下列功能的初始化程序.(1A口工作于方式0,输入;B口工作于方式0,输出;PC7输入,PC0输出.(2A口工作于方式1,输出,PC7,PC6输入;B口工作于方式0,输入;PC2输入.(1解:
MOVAL,98H((2MOVAL,0ABHMOVDX,103HMOVDX,103HOUTDX,ALOUTDX,AL使用8255A与打印机接口的示意图如图9-38所示.当A15~A2=10100011010101时,译码器输出为0.编写程序将存储单元BUF的内容送打印机打印.(BUSY为1表示打印机忙,PC7输出一个负脉冲启动打印.MOVDX,0A357H解:
MOVAL,10000001BOUTDX,ALMOVAL,00001111BOUTDX,ALPRINTCPROCPUSHAXPUSHDXPRN:
MOVDX,0A356HINAL,DXANDAL,04HJNZPRNMOVDX,0A354HMOVAL,AHOUTDX,ALNOPNOPMOVAL,00001111BOUTDX,ALPOPDXPOPAXRETPRINTCENDP6
例子:
例子:
7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 知识点 整理
![提示](https://static.bdocx.com/images/bang_tan.gif)