微机原理知识点总结_第1页
微机原理知识点总结_第2页
微机原理知识点总结_第3页
微机原理知识点总结_第4页
微机原理知识点总结_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、第一章.辨析三个概念:微处理器、微型计算机、微型计算机系统微处理器:简称DP或MP(Microprocessor)是指由一片或几片大规模集成电路组成的具有运算器和控制器功能的中央处理器部件,又称为微处理机。微型计算机:简称DC或MC,是指以微处理器为核心,配上存储器、输入/输出接口电路及系统总线所组成的计算机(又称主机或微电脑)。微型计算机系统(主机+外设+软件配置)(Microcomputersystem)简称DCS或MCS,是指以微型计算机为中心,以相应的外围设备、电源和辅助电路(统称硬件)以及指挥微型计算机工作的系统软件所构成的系统。.微机系统结构(三种总线结构):数据总线,地址总线,控

2、制总线第三章内部结构由两部分组成:总线接口单元BIU(BusInterfaceUnit);执行单元EU(ExecutionUnit).总线接口单元BIU组成:4个16位的段寄存器(CS、DS、ES、SS);1个16位的指令指针寄存器IP;1个20位的地址加法器;1个指令队列(长度为6个字节);I/O控制电路(总线控制逻辑);内部暂存器。BIU的功能:根据EU的请求负责CPU与内存或I/O端口传送指令或数据。BIU从内存取指令送到指令队列当EU执行指令时,BIU要配合EU从指定的内存单元或I/O端口中读取数据,或者把EU的操作结果送到指定的内存单元或I/O端口去。(2)执行单元EU(Execut

3、ionUnit)组成:ALU(算术逻辑单元);通用寄存器组AX,BX,CX,DX(4个数据寄存器)BP(基址指针寄存器)SP(堆栈指针寄存器)SI(源变址寄存器)口1(目的变址寄存器)数据暂存寄存器标志寄存器FREU控制电路作用:负责执行指令,执行的指令从BIU的指令队列中取得;运算结果和所需数据,则由EU向BIU发出请求,经总线访问内存或I/O端口进行存取。4物理地址与逻辑地址有什么区别答:逻辑地址是指未定位之前在程序中存在的地址,由段地址和偏移地址组成。物理地址是实际访问存储器时的地址(通过20位地址总线传递)。5.在什么情况下8086的执行单元(EU)才需要等待总线接口单元(BIU)提取

4、指令答:EU在执行完转移、调用(包括子程序调用和中断调用)和返回指令时,因指令的执行顺序发生跳转,原来预取到指令队列中的指令将不再执行,需清空指令队列缓冲器。在此情况下,EU才需要等待BIU从新的地址重新开始提取指令。6存储器为什么要分段(段加偏移)答:有1M的存储空间,有20根地址线,而CPU的指令指针和堆栈指针都是16位的,只能直接寻址64KB的地址空间,为了能寻址1MB的空间,需要把存储器分为若干段。2存储器的分段的机制允许重定位,由于段寄存器里的段地址可以由程序来重新设定,因而使得程序和数据不需要进行任何修改,就能使他们重定位。7段地址和段基址概念辨析1)段地址:段寄存器的内容,出现在

5、汇编后的机器指令中。2)段基址:段地址左移4位后形成的20位段起始地址。8.8086CPU系统中为什么要用地址锁存器8086CPU由于引脚数量少,其地址总线采用了分时复用的双重总线,仅在总线周期的Tl时钟周期输出地址信号,而在整个总线周期中地址信号需保持不变,这就需用地址锁存器将T1周期发出的地址信号锁存起来以在整个总线周期中都能使用,为此8086CPU在T1周期提供地址锁存允许信号ALE(正脉冲),用ALE的下降沿将地址信息锁存在地址锁存器中(3分)共需3片73LS373芯片用作地址锁存器,锁存信息A19A0和BHE的最大工作模式和最小工作模式的区别答:最小工作方式即单处理器系统方式;在此方

6、式下,全部控制信号由CPU本身提供,它适合于较小规模的应用。CPU工作于最大工作方式时,系统的控制信号由8288总线控制其提供,通常,在最大方式系统中一般包含两个或多个处理器。10.什么叫重定位答:重定位是指一个完整的程序块或数据块可以在存储器所允许的空间内任意浮动并定位到一个新的可寻址的区域。11.8086指令系统的特点答:8086与8088的指令系统由8位的80808085指令系统扩展而来的,同时又能在其后续的80 x86系列的CPU上正确运行。其主要特点是:采用可变长指令,指令格式比较复杂。寻址方式灵活多样,处理数据的能力比较强。有重复指令和乘、除运算指令。扩充了条件转移、移位/循环指令

7、。为加强软件中断功能和支持多处理器系统的工作,增设了有关的指令。总线周期概念:总线周期通常是指微处理器完成一次访存或I/O端口操作所需的时间。(类似于机器周期)在8086/8088中,一个最基本的总线周期由4个时钟周期组成,分别称为4个状态,即T1、T2、T3与T4这4个状态。由T1状态:CPU往多路复用总线上发送地址信息,以选中所要寻址的存储单元或外设端口的地址。由T2状态:CPU从总线上撤消地址,并使总线的低16位浮置成高阻状态,为传送数据做准备。由T3状态,多路总线的高4位继续提供状态信息,而其低16位(对8088CPU则为低8位)上将出现由CPU写出的数据或者CPU从存储器或端口读入的

8、数据。由说明:若访问设备未准备好,则CPU会在T3之后自动插入1个或多个附加的时钟周期Tw,这个Tw就叫等待状态(CPU在每个总线周期的T3状态开始对READY信号采样。)由T4状态:CPU采样数据总线,完成本次读/写操作,总线周期结束。(要对INTR信号进行采样)由说明:只有BIU与内存或I/O端口交换数据,以及填充指令队列时,BIU才执行总线周期。除此之外,既不需要填充指令队列,EU也没有向BIU发出总线周期请求时,系统总线就处于空闲状态,进入空闲周期,空闲周期由一个或几个Ti状态组成。RESET复位后,标志寄存器与指令队列缓冲器的原有信息被清除,IP与DS、SS和ES也被清零,而CS被置

9、为FFFFH。当RESET信号变为低电平时,CPU就从FFFF0H开始执行程序。在程序执行时,RESET线保持低电平。.指令数据在存储器中的存放若存放的信息为1个字时,则将字的低位字节放在低地址中,高位字节放在高地址中。(注:对存放的字,若低位字节从奇数地址开始存放,为非规则字;反之,为规则字。读一个规则字需要访问一次存储器,读一个非规则字需要访问两次存储器)当存放的是双字形式(这种数一般作为指针),其低位字是被寻址地址的偏移量;高位字则是被寻址地址所在的段地址。8086的存储器为什么要分段答案见6808昭088指令的分类8086咫088的指令按功能可分为大类:数据传送、算术运算、逻辑运算、串

10、操作、程序控制和CPU控制数据传送指令(细分成4类)通用数据传送指令MOV、PUSH、POP、XCHG、XLAT目标地址传送指令LEA、LDS、LES标志位传送指令LAHF、SAHF、PUSHF、POPFI/O数据传送指令IN、OUT传送指令:MOVDST,SRC执行操作:(DST)(SRC)说明:可实现一个字节或字的传送(例子见教材P66)。注意:DST、SRC不能同时为段寄存器MOVDS,ES立即数不能直接送段寄存器MOVDS,2000HDST不能是立即数和CSDST、SRC不能同时为存储器寻址*不影响标志位进栈指令:PUSHSRC汪思:堆栈操作必须以字为单位。不影响标志位不能用立即寻址方

11、式PUSH1234HDST不能是CSPOPCS并非局限在栈顶操作MOVAX,BPSI交换指令:XCHGOPRI,OPR2执行操作:(OPRI)(OPR2)汪思:不影响标志位不允许使用段寄存器不能在存储器单元之间交换换码指令:XLAT或XLATOPR(通过查表实现)执行操作:(AL)(BX)+(AL)例:MOVBX,OFFSETTABLE;(BX)=0040H(表预先建立在内存)MOVAL,3;索引值XLATTABLE指令执行后(AL)=3OH汪思:不影响标志位字节表格(长度不超过256字节)首地址(BX)需转换的代码位移量(AL)目标地址传送指令有效地址送寄存器指令:LEAREG,SRC执行操

12、作:(REG)SRC(存储器)指针送寄存器和DS指令:LDSREG,SRC执行操作:(REG)(SRC)(DS)(SRC+2)相继二字寄存器、DS指针送寄存器和ES指令:LESREG,SRC执行操作:(REG)(SRC)(ES)(SRC+2)相继二字寄存器、ES汪思:不影响标志位REG不能是段寄存器SRC必须为存储器寻址方式标志位传送指令标志送AH指令:LAHF执行操作:(AH)(FLAGS的低字节)AH送标志寄存器指令:SAHF*(置位/复位)执行操作:(FLAGS的低字节)(AH)标志进栈指令:PUSHF(转子/中断调用)执行操作:(SP)(SP)-2(SP)+1,(SP)(FLAGS)标

13、志出栈指令:POPF*(转子/中断调用)执行操作:(FLAGS)(SP)+1,(SP)(SP)(SP)+2*影响标志位二、算术运算类指令(共20条指令)加法指令ADD、ADC、INC减法指令SUB、SBB、DEC、NEG、CMP乘法指令MUL、IMUL除法指令DIV、IDIV、CBW、CWD执行REPMOVS之前,应先做好(初始化工作):源串首地址(末地址)fSI目的串首地址(末地址)fDI串长度fCX(最大64KB)建立方向标志(CLD使DF=0,STD使DF=1)一个串传送的例子:datasegmentmessldbpersonal_computer;字符数组dataendsextrase

14、gmentmess2db17dup()extraendscodesegmentmovax,data;不能:movds,data(X)movds,ax;立即数不能直接送段寄存器movax,extra;不能:leads,data(X)moves,ax;用于取变量的有效地址leasi,mess1;源串首地址leadi,mess2;目标串首地址movcx,17;串长度cld;建立方向标志(CLD使DF=0,STD使DF=1)repmovsb;串传送codeends例(续):把附加段中的10个字节缓冲区置为20Hleadi,mess2moval,20Hmovcx,10cldrepstosb比较例中两串是

15、否完全相同,若两串相同,则BX寄存器内容为0;若两串不同,则BX指向源串中第1个不相同字节的地址,且该字节的内容保留在AL寄存器中。CLDMOVCX,100MOVSI,2500HMOVDI,1400HREPECPMSB;串比较,直到ZF=0或CX=0JZEQQ;两串相同,置BX为0DECSI;将指针修改回第1个不相同字节处MOVBX,SIMOVAL,SIJMPSTOP;必须跳转,否则仍继续执行EQQEQQ:MOVBX,0STOP:HLT例:试比较两个无符号数80H和79H,则用下面的指令,即MOVAL,80HCMPAL,79HJAABOVE例:试比较两个有符号数80H和79H,则用下面的指令,

16、即MOVAL,80HCMPAL,79HJGGREATER第三章习题答案整理答:由两部分组成:总线接口单元BIU(BusInterfaceUnit),执行单元EU(ExecutionUnit).BIU的功能是根据执行单元的请求负责CPU与I/O端口或则存储器之间的数据传输。EU单元的作用是:负责执行指令,执行的指令从BIU的指令队列中取得;运算结果和所需数据,则由EU向BIU发出请求,经总线访问内存或I/O端口进行存取。答:组成:4个16位的段寄存器(CS、DS、ES、SS);1个16位的指令指针寄存器IP;1个20位的地址加法器;1个指令队列(长度为6个字节);I/O控制电路(总线控制逻辑);

17、内部暂存器。段寄存器和地址加法器:8086的内存空间为1M,地址线为20根,但是8086的内部寄存器只有16位,因此采用“段加偏移”技术来解决这一问题,由段寄存器提供段地址,左移4位形成段基址,通过地址加法器与有效地址相加得到20位物理地址。指令队列:指令队列由6字节的寄存器组成,最多可以存入6字节的指令代码,8086执行指令时,将从内存或则存储器中取出一条或则几条指令依次存入指令队列缓冲器里,他们采用“先进先出”的原则,顺序取到EU中去执行16位指令指针:IP的功能相当于8位CPU中的PC,正常运行时,IP中含有BIU要去的销一条指令的偏移地址,在程序运行时能自动加1修正,使之指向下一条指令

18、。答:并行操作方式是指EU和BIU着两部分同时工作,EU但愿从指令队列头中取指令,只要指令队列不是空,他就一直执行,无需等待。由于8086中的BIU和EU是分开独立设计的,因此,在一般情况下,CPU执行完一条指令后就可以立即执行下一条指令,无需等待。因此说8086可以并行操作。当EU在执行完转移、调用(包括子程序调用和中断调用)和返回指令时,因指令的执行顺序发生跳转,原来预取到指令队列中的指令将不再执行,需清空指令队列缓冲器。在此情况下,EU才需要等待BIU从新的地址重新开始提取指令。答:逻辑地址是指未定位之前在程序中存在的地址,由段地址和偏移地址组成。物理地址是实际访问存储器时的地址(通过2

19、0位地址总线传递)。为什么要引入段加偏移思想:有1M的存储空间,有20根地址线,而CPU的指令指针和堆栈指针都是16位的,只能直接寻址64KB的地址空间,为了能寻址1MB的空间,需要把存储器氛围若干段。2存储器的分段的机制允许重定位,由于段寄存器里的段地址可以由程序来重新设定,因而是的程序和数据不需要进行任何修改,就能使他们重定位。段加偏移的含义是:利用16位的段寄存器的内容确定20位起始地址的高16位,由IP或由EU按照寻址方式找出的16位偏移地址,然后将段基址与偏移地址相加得到一个20位的实际地址,以对存储单元寻址。答:指令队列缓冲器的作用是存放从内存或则存储器中取出的指令,供EU执行。8

20、086的指令队列由6字节的寄存器组成,8088的指令队列由4字节的寄存器组成。答:不同。段地址左移4位就得到了段基址;是;段寄存器中的内容左移4位得到段基址。答:当CPU取指或与I/O端口或者存储器交换数据的时候才执行总线周期。T1T4状态。如果存储器或则外设的速度比较慢,不能及时跟上CPU的速度时,存储器或则外设通过一个READY信号在T3启动之前发送一个“没有准备好”的信号,并且CPU会在T3启动后插入1个或多个Tw等待状态。答:ALE信号时地址锁存信号(AddressLockEnable),它通知地址锁存器8282当前地址为有效地址,可以锁存。不能。DT/R(非)控制8286的数据传输方

21、向。当DMA请求时,它被置于高阻状态。答:最大工作方式和最小工作方式。MN/MX(非)(非:就是对MX取反)引脚来控制。最小工作方式即单处理器系统方式;在此方式下,全部控制信号由CPU本身提供,它适合于较小规模的应用。CPU工作于最大工作方式时,系统的控制信号由8288总线控制其提供,通常,在最大方式系统中一般包含两个或多个处理器。答(1)立即数寻址(2)直接寻址(3)变址寻址(4)变址寻址(5)寄存器寻址(6)寄存器相对间接寻址(7)隐含寻址(8)寄存器寻址(9)I/O间接寻址(10)基址寻址(1)PA=(DS)*16+(DI)(2)PA=(DS)*16+(BX)+(SI)PA=(DS)*1

22、6+8+(BX)+(DI)PA=(ES)*16+(BX)PA=(DS)*16+2400HPA=PA=(DS)*16+(BX)+(DI)+1200HPA=(SS)*16+(BP)+(SI)PA=(DS)*16+(BX)+(DI)+1200HIP不可编程访问,或IP不可作为源操作数出现在普通指令中。(CS,IP,FLAG等都不可编程访问)(2)cs不可编程访问。(3)SI+2是对寄存器的非法使用(应为SI+2)(4)MOV指令的目标操作数不能为立即数(5)PUSH指令的操作数不能为立即数(6)未指明数据长度(可以改为INCWORDPTRBX)(7)乘数不能为立即数且MUL只能完成无符号数的乘法(8

23、)未知名数据长度(可改为ADDWORDPTR2400H,2AH)(9)MOV指令的两操作数不能同时为存储器操作数(10)数据类型不匹配(可改为MOVSI,AX)(1)AX=0ABCH(2)AX=0ABBH(3)AX=00BBH(4)CL=04H(5)AL=76H(6)CL=76H(7)CL=EEH(8)AX=0076HBX=0076H(2)PA=(DS)*16+list+(bx)+(si)=11950HANDAH,0FHXORAL,F0HMOVCL,4SHRAL,CLMOVCL,4SHLAL,CL3.50ADDAX,AX;AX=6264HJZDONESHLCX,1;CX=0008HRORAX,

24、CX;AX=6462HDONE:ORAX,1234HAXDONE:ORAX,1234HAX=7672H3.57AX+DX=000B所以CF=0,AF=1,SF=0ZF=0,OF=0PF=1MOVAL,BLCBWIDIVCLMOVDL,2IMULDLMOVDX,AX3.70(5)ANDBP,CX(6)ANDBYTEPTRWAIT1,AL(3)ORSI,DX(5)ORBP,CXORDI,001FMOVSI,DIMOVCL,3SHRDI,CLSHLAL,11)JMPDI:该指令为段内间接转移。DI中的内容为指向存储单元的偏移地址,从该地址开始的2个字节中存放着要跳转到的指令的偏移地址,执行指令时,将

25、该偏移地址(DS:DI和DS:DI+1)中的内容送IP,段地址不变。2)JMPFARPTRDI:该指令为段间间接远转移。DI中的内容为指向存储单元的偏移地址,从该地址开始的4个字节中存放着要跳转到的指令的目标地址,其中,前2个字节为偏移地址,后2个字节为段地址。执行指令时,将该偏移地址送IP,段地址送CS。CLDMOVCX,100MOVSI,6180HMOVDI,2000HREPMOVSBDECDISTD;也可直接用MOVDI,2000HMOVCX,100SCAN:SCASBJNZNEXTINCDIMOVBYTEPTRDI,(或20H)DECDINEXT:LOOPSCANMOVAH,4CH;终

26、止程序,返回DOSINT21H答:答案参见p95RET弹出值p99IRET第四章第四章17汇编语言是直接面向微处理器编程的程序设计语言,具有执行速度快和易于实现对硬件的控制等独特的优点,所以至今仍然是使用得较多的编程语言。特别是在对于程序的空间和时间要求很高的场合,以及需要直接控制设备的应用场合,汇编语言更是必不可少。18汇编语句的4个字段是:1)名字或标号;2)操作码(指令助记符)或微操作命令;3)操作数表(操作数或地址)4)注释汇编语句的种类:(3种):指令语句,伪指令语句,宏指令语句20.指令性语句格式:标号:前缀指令助记符操作数表;注释21伪指令性语句格式:名字伪指令参数表;注释22.

27、表达式的求值是由汇编程序完成的。23逻辑运算符出现在操作数中时为微操作,其功能在汇编时完成例如MOVAX,75A6HAND2465H关系运算符:EQ、NE、LT、GT、LE、GE。说明:关系运算的结果是一个常数(布尔值)。关系成立,结果为0FFFFH,否则,为0。变量的定义:1)VARDB12;2)VARDB12DUP(0)(字节串/字符串)VARDW12DUP()(字串)4)VARDB125DUP(5)(字节串,只给部分字节赋值)分析运算符:分析运算符用来把存储器操作数(变量或标号)分解为它的组成部分(段地址、偏移值、类型、数据字节总数、数据项总数等),并以数值形式回送给变量或标号(例子见教

28、材P136)。SEG回送变量或标号的段地址;OFFSET回送变量或标号的偏移量;TYPE回送反映变量或标号类型的一个数值;SIZE回送变量数据区的字节总数;LENGTH回送变量数据区的数据项总数;HIGH取地址表达式或16位绝对值的高8位;LOW取地址表达式或16位绝对值的低8位;$地址计数器假定进行汇编时,为VAR分配的偏移地址为0074H那么汇编伪指令:VARDW1,2,$+4,3,4,$+后4,该存储区的存储情况如何在指令中引用$时,$就表示该指令首地址,与$本身所指向单元无关。比如指令:JNZ$+6该指令的转移地址是JNZ指令的首地址加上6。当然,$+6必须是某一条指令的首地址,这样才

29、能达到正确转移的目的。及BIOS中断调用前七个第四章习题整理第四章习题整理AX=0020HBX=0202HCX=0220HDATASEGMENTXDBYDBKDBDATASEGMENTCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAL,XMOVBL,YCMPAL,0JEABEJGABCJLBBC;落在坐标轴上;落在第1、4象限;落在第2、3象限ABC:CMPBL,0JEABEJGABD;Y0,则落在第1象限MOVK,4;Y0,则落在第2象限MOVK,3;Y0,则落在第3象限ABD:MOVK,1BBD:MOVK,2ABE:MOVK,0CODEENDSENDST

30、ARTDATASEGMENTCHAR1DBabcdefNEQU$-CHAR1CHAR2DBNDUP(0)CODESEGMENTASSUMECS:CODE,DS:DATASTART:CLDMOVCX,NLEASI,CHAR1LEADI,CHAR2NEXT:LODSBSUBAL,32;或20H,因小写字母的ASCII码值比大写字母大32STOSBLOOPNEXTCODEENDSENDSTARTDATASEGMENTBUFDB100DUP()NEQU$-BUFLENDWCODESEGMENTASSUMECS:CODE,DS:DATASTART:CLDMOVAX,DATAMOVDS,AXMOVCX,N

31、MOVDI,OFFSETBUFMOVAL,AREPNESCASBDECDILEASI,BUF;有这两句更好一点SUBDI,SI;有这两句更好一点MOVLEN,DIMOVAH,4CHINT21HCODEENDSENDSTART(1)BX=54CBH(2)BX=54EBH(3)BX=0000H(4)543BH(5)BX=545CH(6)BX=54A3HPLENTH的值是34,其物理意义:变量P1和P2共占用了34字节的内存空间。P151冒泡排序法datasegmentbufdb11,-22,33,05,-7(当然也可这样:bufdb10dup()NEQU$-bufmindbmaxdbdataendscodesegmentassumecs:code,ds:datastart:movax,datamovds,axmovcx,N-1;比较次数(找最大数和最小数)movsi,0moval,bufsi;大数放入AL寄存器movbl,bufsi;小数放入BL寄存器next:cmpal,bufsi+1jgesto1moval,bufsi+1sto1:cmpbl,si+1jlesto2movbl

温馨提示

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

评论

0/150

提交评论