微机原理基本概念复习_第1页
微机原理基本概念复习_第2页
微机原理基本概念复习_第3页
微机原理基本概念复习_第4页
微机原理基本概念复习_第5页
免费预览已结束,剩余19页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、字节,字概念,1字节=8位,2、字长概念:传微处理器一次送二进制数据的位数(总线宽度)。3、地址空间概念:16根地址线一64K,20根地址线一1M空间4、进制间的转换:将十进制数25.5转换为二级制数5、数值数据的表示:有符号数:补码,n位补码的范围无符号数:FFFFH=655356、BCD码:789的压缩BCD码789H7、ASCII码:789的ASC码373839H8、求补运算概念9、8086CPU从功能上来说分成两大部分:总线接口单元BIU(BusInterfaceUnit)和执行单元EU(ExecutionUnit)总线接口部件由下列4部分组成:4个段地址寄存器(CS、DS、ES、

2、SS)16位的指令指针寄存器IP(InstructionPointer)20位的地址加法器10辑段概念一一8086CPU的内部结构是16位的,即所有的寄存器都是16位的,而外部寻址空间为1M,需要20位地址线。为了能寻址1M空间。8086把1M字节空间划分成若干个逻辑段。11逻辑地址念2000H:5F62H,则其对应的物理地址:25F62H12堆栈指针:SP与段寄存器SS一起确定在堆栈操作时,堆栈在内存中的位置。SS和SP的初始值决定了堆栈区的大小13状态标志的意义:即SF、ZF、PF、CF、AF和OF148086弓唧:MN/MX、AD15AD0地址/数据分时复用引脚NMI(Non-Maska

3、bleInterrupt)不可屏蔽中断请求,输入、上升沿有效、INTR(InterruptRequest)可屏蔽中断请求,输入、高电平有效,有效时,表示请求设备向CPU申请可屏蔽中断,该中断请求是否响应受控于IF(中断允许标志)、可以被屏蔽掉INTARESET(复位)复位请求,输入、高电平有效,复位后CS=FFFFH、IP=0000H,所以自启动程序入口在物理地址FFFF0HINTA(InterruptAcknowledge)可屏蔽中断响应,输出、低电平有效,有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU进入中断响应周期。ALE(AddressLatchEnable)地址锁存允许

4、,输出、三态、高电平有效,脚高有效时,表示复用引脚:AD15AD0和A19/S6A16/S3正在传送地址信息,由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE引脚将地址锁存起来M/IO(InputandOutput/Memory)I/O或存储器访问,输出、三态,该引脚输出高电平时,表示CPU将访问存储器,这时地址总线A19A0提供20位存储器地址,该D?Do引脚输出低电平时,表示CPU将访问时地址总线A15A0提供16位I/O15多字节数据存放方式:图中0002H字”单元的内容为:0002H=1234H0002H号双字”单元的内容为:0002H=78561234H00008

5、H78H00005HI/O端口,这56H00004H口地址12H00003H34H00002H00001HOOOOOH因地址16物理地址和逻辑地址的转换例2.1设代码段寄存器CS的内容为1000H,指令指针寄存器IP的内容为2500H,即CS=1000H,IP=2500H,则访问代码段存储单元的物理地址为:段基值偏移量12S00物理地址港辑地址17指令周期:是指一条指令经取指、译码、读写操作数到执行完成的过程。若干总线周期组成一个指令周期18总线周期是指CPU通过总线操作与外部(存储器或I/O端口)进行一次数据交换的过程8086的基本总线周期需要4个时钟周期,4个时钟周期编号为11、12、13

6、和14总线周期中的时钟周期也被称作“T状态”,时钟周期的时间长度就是时钟频率的倒数当需要延长总线周期时插入等待状态Tw,CPU进行内部操作,没有对外操作时,其引脚就处于空闲状态Ti8086如果工作频率1MHZ,1个基本总线周期需要多长时间。19指令代码由操作码和操作数两部分组成寻址方式:立即数寻址MOVAX,14寄存器寻址:MOVDS,AX直接寻址:MOVAX,2000H,MOVBX,BUFFER寄存器间接寻址MOVAX,BX寄存器相对寻址MOVAX,SI+06H基址变址寻址方式MOVAX,BX+SI相对基址变址MOVAX,BX+DI+6隐含寻址MULBL;(AL)X(BL)一AX隐含了被乘数

7、AL和乘积AX20存储器寻址方式中的变量WVARDW1234H;定义16位变量WVAR,具有初值1234H21注意点1 .区别立即数寻址和直接寻址MOVAX,126MOVAX,1262 .区别寄存器寻址和寄存器间接寻址MOVAX,BXMOVAX,BX3 .双操作数指令中,不能同为存储器操作数。4 .CS不能为目的寄存器。 最基本的传送指令(MOV) 堆栈指令(PUSH,POP) 数据交换指令(XCHG) 换码指令XLAT非法指令的主要现象:两个操作数的类型不一致两个操作数都是存储器立即数直接送段寄存器目标操作数用立即数方式两个操作数都是段寄存器在绝大多数双操作数指令中,同为字量,或者同为字节量

8、,无法确定是字节量还是字量操作MOV2000H,3000HMOVDS,3000HMOV2000H,ALMOVDS,ES目的操作数和源操作数必须具有一致的数据类型,或者否则为非法指令两个操作数类型不一致MOVAL,050AH;非法指令,修正:;movax,050ahMOVSI,DL;非法指令,修正:;movdh,0;movsi,dx当无法通过任一个操作数确定是操作类型时,需要利用汇编语言的操作符显式指明MOVBX+SI,255;非法指令,修正:;movbyteptrbx+si,255;byteptr说明是字节操作;movwordptrbx+si,255;wordptr说明是字操作8086/808

9、8指令系统除串操作指令外,不允许两个操作数都是存储单元(存储器操作数)MOVbuf2,buf1;非法指令,修正:;假设buf2和buf1是两个字变量;movax,buf1;movbuf2,ax;假设buf2和buf1是两个字节变量;moval,buf1;movbuf2,al8086指令系统中,能直接对段寄存器操作的指令只有MOV等个别传送指令,并且不灵活MOVDS,ES;非法指令,修正:;movax,es;movds,axMOVDS,100H;非法指令,修正:;movax,100h;movds,axMOVCS,SI;非法指令;指令存在,但不能执行例3-13把BLOCK1地址开始的10个字节数据

10、传送到BLOCK2地址开始的10个字节单元处。MOVCX,10MOVSI,OFFSETBLOCK1MOVDI,OFFSETBLOCK2NEXT:MOVAL,SIMOVDI,ALINCSIINCDIDECCXJNZNEXTHLT 进栈指令先使堆栈指针SP减2,然后把一个字操作数存入堆栈顶部用堆栈交换AX与CX的值。pushaxpushcxpopaxpopcx交换指令XCHG(xchgal,byteptrwvar+1数据段;ax=5599h,wvar=6611h;byteptrwvar+1”强制为字节量,只取高字节与AL类型交换,否则数据类型不匹配0例3-18内存的数据段有一张09的平方表,首地址

11、为TABLE,如图所示,用换码指令实现求数字4的平方。MOVBX,OFFSETTABLEMOVAL,4XLAT加法指令2、减法指令3、乘法指令4、除法指令O加法指令:ADD,ADC和INC0减法指令:SUB,SBB,DEC,NEG和CMP。他们分别执行字或字节的加法和减法运算,除INC和DEC不影响CF标志外,其他按定义影响全部状态标志位例3-32在数据段从BLOCK开始的存储单元中存放了两个8位无符号数,试比较它们的大小,将较大者传送到MAX单元。LEABX,BLOCKMOVAL,BXINCBXCMPAL,BXJNCDONEMOVAL,BXDONE:MOVMAX,ALHLT逻辑指令AND、O

12、R、XOR和TEST屏蔽AL寄存器的低四位。MOVAL,0FFHANDAL,0F0H例3:使某数的第4、5位置1。MOVAL,03HORAL,30HV例3-47判断DATA单元的数据是否为0。MOVAX,DATAORAX,AXJZZEROZERO:例4:使某数的D1、D0位取反,其它位不变。MOVAL,11HXORAL,03H一AND与TEST指令的关系,同SUB与CMP指令的关系一样例7:检测AL中的最低位是否为1,若为1则转移。MOVAL,dataTESTAL,01HJNZNextNext:MOVBL,0TEST通常用于检测一些条件是否满足,但又不希望改变原来操作数的情况,该指令后通常带有

13、条件转移指令。移位指令:移位指令的第一个操作数是指定的被移位的操作数,可以是寄存器或存储单元;后一个操作数表示移位位数:该操作数为1,表示移动一位该操作数为CL,CL寄存器值表示移位位数(移位位数大于1只能CL表示)SALSHLSARSHR。循环移位指令类似移位指令,但要将从一端移出的位返回到另一端形成循环。分为:ROLreg/mem,1/CLRORreg/mem,1/CLRCLreg/mem,1/CLRCRreg/mem,1/CL;不带进位循环左移;不带进位循环右移;带进位循环左移;带进位循环右移0循环移位指令按指令功能设置进位标志CF,但不影响SF、ZF、PF、AF标志,OF只当CNT=1

14、时有效,移位后当最高有效位发生变化时(如1变0)OF=1,否则OF=0。将DX.AX中32位数值左移一位shlax,1rcldx,1;将DX.AX中32位数值左移一位控制转移指令JMPJZJNZ例3.23判断是否为字母Y寄存器AL中是字母Y(含大小写),则令AH=0,否则令AH=-1cmpal,?y?;比较AL与小写字母yjenext;相等,转移cmpal,?Y?;不相等,;继续比较AL与大写字母Yjenext;相等,转移movah,-1;不相等,令AH=1jmpdone;无条件转移指令next:movah,0;相等的处理:令AH=0done:例3-68在内存中有一个首地址为ARRAY的数据区

15、存放了200个8位有符号数,统计其中正数、负数、0的个数,并分别将统计结果存入PLUS、MINUS和ZERO单元中。XORAL,ALMOVPLUS,ALMOVMINUS,ALMOVZERO,ALLEASI,ARRAYMOVCX,200CLDLLAB:LODSBORAL,ALJSMLABJZZLABINCPLUSJMPNEXTMLAB:INCMINUSJMPNEXTZLAB:INCZERONEXT:DECCXJNZLLABHLTLOOPlabel;循环指令IRET伪指令:DB,DW,byteptr例2:操作数可以是字符串,例如STRDB,HELLO汇编后的情况如图:某数据段定义为DATASEGM

16、ENTS1DB0,1,2,3,4,5S2DB12345'COUNTEQU$-S1S3DBCOUNTDUP(2)DATAENDS画出该数据段在存储器中的存储形式DOS系统功能调用介绍(1)从键盘输入一个字符(功能号=1)MOVAH,1INT21H<AL中有键入的字符>(1)在显示器.上显示一个字符(功能号=2)MOVAH,2MOVDL,<要显示白字符>INT21H例:在显示器上显示一个字符A'MOVAH,2MOVDL,'A'或MOVDL,41HINT21H(2)显示字符串(功能号=9)MOVAH,9LEADX,字符串INT21H注意:被显示

17、的字符串必须以?$?吉束。4.6.2分支程序设计4-31求符号字节数X的绝对值,X用补码表示DATASEGMENTXDB-50DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,X;取XTESTAL,80H;测试符号位JZDONE;若大于0,转doneNEGAL;若小于0,求补得到|x|MOVX,AL;保存DONE:MOVAH,4CHINT21HCODEENDSENDSTART关于存储器:O扩展存储器所需存储芯片的数量计算:若用一个容量为mKXn位的存储芯片构成容量为MKXN位(假设M>m,N>

18、n,即需字位同时扩展)的存储器,则这个存储器所需要的存储芯片数为(M/m)x(N/n)。RAM芯片的容量:为220X16b,问(1)该芯片地址线多少,(2)数据线多少SRAM与CPU连接:CPU数据总线不相同,连接不一样。8086CPU的16数据总线,其高8位数据线D15-D8接存储器的奇地址体。低8位数据线D7-D0接存储器的偶地址体,根据BHE(选择奇地址库)和八0(选择偶地址库)的不同状态组合决定对存储器做字操作还是字节操作存储器与CPU地址总线的连接:0低位地址线直接和存储芯片的地址信号连接作为片内地址译码o高位地址线主要用来产生选片信号(称为片间地址译码),以决定每个存储芯片在整个存

19、储单元中的地址范围,避免各芯片地址空间的重叠。片选(1)依犷克存储芯片的字(单元)数满足要求而位数不够,需要对每个存储单元的位数进行扩展。AgA0AgAo2114(2)I/O41/01d7-d4D3DoCE2114(1)I/O4I。2114容量194,2片扩展为1K*8位扩展:将每片的地址线、控制线并联,数据线分别引出。位扩展特点,存储器的单元数不变,位数增加。(2)字扩充P150而如果总的单元容量不足则需利用多个存储芯片扩充容量,用存储芯片的片选端对多个存储芯片(组)进行寻址;这种扩充简称为“地址扩充”或“字扩充”字扩展:芯片的位数满足要求而字(单元)数不够,需要对存储单元数进行扩展。扩展原

20、则:将每个芯片的地址线、数据线、控制线并联,仅片选端分别引出,以实现每个芯片占据不同的地址范围。74LS1JST3rnEPROin2716EPROKE2716PDPGMo.-a.LFDFGM-Lar盘口上二-%10TTKITDfT.KT.-工工工-工¥-:EFKOJD2714FDFGMOfO-1SEPRDILCPCBfiS将每个芯片的地址线、数据线、控制线并联,仅片选端分别引出,以实现每个芯片占据不同的地址范围。片选译码的几种方法: 全译码:所有的地址线全用上,无地址重叠。 部分译码:部分高位地址没有用,存在地址重叠。(3) 全译码,每个存储单元的地址都是唯一的,不存在地址重复,但译

21、码电路可能比较复杂、连线也较多CPU52KBRAM的速接全译H译码器I/O端口与存储器统一编址概念I/O端口独立编址概念3086采用独立编址首址:0000H03FFHO采用Intel2114,构成2KBRAM的连接结构图如下所示(既有位扩展,也有字扩展)第J6碇图:AlgAlOAgAOA0-A9选择端口图门电路树皮的地址译码电踣首址:mwijwmouMojooh1X1001Jllllimi07FFHI/O端口地址译码的一般原则:把CPU用于I/O端口寻址的地址线分为高位地址线和低位地址线两部分:例6-1,某8088最小系统,I/O接口译码电路如图0颂叽。颂0000。口000000.111111

22、1111J”第?题址询:AlAAlOAbAOAo-IO/MCPUWRAn-WE'-6DtCS,CPU和外设间的数据传送方式程序控制方式中断控制方式DMA方式程序控制方式无条件传送方式查询传送方式读状态查询传送方式CPU从接口中读取状态字就绪?CPU检测状态字传送数据数据交换数据端口数据输入设备一锁仔器数据缓冲器f选逋I|i+5VDQ二态缓冲器F房E呼总线r译码%状态端口WRa)查询式输入的算法:(1)用指令检测Ready:INAL,三态缓冲器(或状态寄存器)的地址(2)若Ready=0,返回(1)(3)若Ready=1,发出INAL,输入接口数据寄存器的端口地址。查询输入:MOVBX,

23、OFFSETSTOREIN_TEST:INAL,状态口地址TESTAL,80HJZIN_TESTINAL,数据口地址MOVBX,ALINCBX数据查询式输生的接口电路输出设备ACK数据锁存器选通信号数据总线>状态寄存器接至D7BUSYb)查询式输出:MOVBX,OFFSETSTOREOUT_TEST:INAL,100;状态端口TESTAL,80HJNZOUT_TESTMOVAL,BXOUT101,AL;数据端口INCBX中断概念:外部中断可屏蔽中断源CPU非屏蔽中断源非屏蔽中断A可屏蔽中断INTRINTA8259A中断控制器INTN指令INTO指令除法错误单步中断外设中断源内部中断:除法

24、错中断A指令中断溢出中断中断向量表是存放中断向量的一个特定的内存区域。中断向量,就是中断服务子程序的入口地址。中断向量表:中断服务程序的入口地址(首地址)逻辑地址含有段地址CS和偏移地址IP(共32位),其中低字是偏移地址、高字是段地址08086微处理器从物理地址00000H开始,依次安排各个中断向量,向量号也从0开始0256个中断占用1KB区域,就形成中断向量表8259:完全嵌套方式(默认工作方式):中断请求按优先级IR0IR7处理,IR0优先级最高,IR7最低。当有中断发生时,如果有更高级的中断请求到来,会发生中断嵌套。中断结束命令(1)自动中断结束模式(AEOI)自动结束方式一进入中断就

25、将ISR中对应的状态标志清除,因为ISR是优先仲裁的依据,所以这种方式只能用在不会出现嵌套的简单场合。(2)非自动中断结束方式(EOI)一般结束方式:当发出中断结束命令后,用结束指令把当前中断服务寄存器(ISR)中优先级最高的(正在处理的)IS位清除。(最常用)IHTKIROHTTIMTAhitACPU8259A主片IR7工R0IR2IR7CPU与8259a连接图8259初始化:(2)ICW2(中断向量命令字)向8259A写入ICW1命令字后,应立即向8259A送ICW2。ICW2用于确定8259A每根IR线上的中断向量号;(其实确定的是IR0线上的中断向量设置中断向量号命令字中,T7T3为中断向量号的高5位,低3位设为0根据此命

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论