欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    微机原理与接口技术课件微机第三章.ppt

    • 资源ID:6161620       资源大小:351KB        全文页数:67页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微机原理与接口技术课件微机第三章.ppt

    第三章 8086寻址方式和指令系统,主要内容,8086指令系统,8086的寻址方式,指令的机器码表示方法,3-1 8086的寻址方式,寻址方式就是指令中用于说明操作数所在地址的方法,MOV AX,1234H;B8 34 12MOV AX,1234H;A1 34 12,一、8086的寻址方式说明,1有效地址EA(Effective Address)当操作数在内存中时,指令的操作数给出所访问的内存单元的逻辑地址。在寻址方式中,逻辑地址的形成是由多个分量组合而成,该组合地址又叫有效地址。,2、MOV数据传送指令 其格式为:MOV 目的操作数,源操作数目的操作数和源操作数均可采用不同的寻址方式,两个操作数的类型必需一致。,二、寻址方式介绍,1立即寻址(Immediate addressing)操作数就在指令中,紧跟在操作码后面,作为指令一部分存放在内存的代码段中,这种操作数称为立即数。,例:MOV AX,34EAH;B8 EA 34 MOV BL,20H;B3 20,2、寄存器寻址(Register addressing)操作数在寄存器中,指令中源操作数和目的操作数都可用这种寻址方式。,例:MOV AL,BL;88 D8MOV AX,1234H;B8 34 12MOV AL,AH;88 E0,3、直接寻址(Direct addressing)当指令中的源操作数或目的操作数,采用直接给出被访问内存单元的逻辑地址时,这种寻址方式称直接寻址。,例:MOV AX,3E4CH;A1 4C 3EMOV 1234H,AL;A2 34 12,两个概念,段超越:,MOV AX,3E4CH,MOV AX,ES:3E4CH,符号地址:,MOV AX,RESULT,如何区分RESULT是立即数还是符号地址?,如果 RESULT EQU 3E4CH;立即数 MOV AX,RESULT,如果 RESULT DW 3E4CH;符号地址 MOV AX,RESULT,4、寄存器间接寻址(Register indirect addressing)内存单元的逻辑偏移地址通过寄存器间接给出,例:MOV SI,61A8H MOV DX,SI,5、寄存器相对寻址(Register Relative Addressing)这种寻址方式中提出位移量的概念,即在寄存器间接寻址给出的偏移地址上,加一相对位移量。位移量是一带符号的16位二进制数。当使用BX或BP寄存器时,称基址寻址;使用SI或DI寄存器时,称变址寻址。,例:MOV CX,36HBXMOV 20BP,AL,6、基址加变址寻址(Based Indexed addressing)它的EA是由三部分组成的,基址寄存器BX或BP的内容加上变址寄存器的内容再加位移量。物理地址由基址寄存器按规则选择段寄存器,也可以使用段超越。,例:MOV AX,8AHBXSI该例中EA8AHBXSI物理地址DS10H8AHBXSI,的使用规定,立即数在 中表示直接地址,如1000H;,有相加的意思,下面几种写法是等价的 6BXSI,BX+6SI,BX+SI+6;,只有BX,BP,SI,DI可以出现在 内,它们 可以单独出现,也可以组合,但BX和BP 不允许出现在同一个,SI和DI也一样;,若 中含BP,则隐含使用SS来提供段基 址,其它均隐含用DS。均可以段超越。,7、其他A、隐含寻址 在指令中没有明显的标出,而指定寄存器参加操作,称之为“隐含寻址”。DAAMUL BLPUSH AX POP CX.,作业订正,1.若CS=A000H,求当前代码段在存储器中的物理地址范围是什么?若数据段位于52000H到61FFFH的64K范围内,问DS=?2.若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址,若此时入栈10个字节,SP内容是什么?若再出栈6个字节,SP为什么值?3.某程序数据段中存放了两个字1EE5H和2A8CH,已知(DS)=7850H,数据存放的偏移地址为3121H及285AH。试画图说明它们在存储器中的存放情况。若要读取这两个字,需要对存储器进行几次操作?,B、I/O(输入/输出)端口寻址(I/O port addressing)当操作数在外部设备时,使用I/O指令。此时有两种不同的寻址方式访问I/O端口。(1)直接端口寻址方式(2)采用DX寄存器间接寻址方式(3)输入指令中目的操作数可为AL或AX;输出指令中源操作数可为 AL或AX。例:IN AL,25H;E5 25HMOV DX,3E4H OUT DX,AL;EE,三、8086的指令格式及数据类型,指令由操作码和操作数(地址码)组成。8086的指令长度是可变的,一条指令一般由16个字节组成。,1.指令中的操作数,单操作数指令 指令助记符 指令的16进制代码 INC AX 40H INC BX 43H,双操作数指令 指令助记符 指令的16进制代码 MOV AL,04 B004H MOV AX,04 B80400,三个操作数指令 8086指令系统中,大多数指令中只有12个操作数,但也有少数指令中有3个操作数,不过有一操作数隐含在操作码中。例:ADC AX,BX 该指令完成操作数AX、BX和CF位相加。,2.指令中的数据类型,无符号数 带符号数 ASCII码 BCD数(压缩BCD和非压缩BCD),3-2 指令的机器码表示方法,一、机器语言指令的编码目的和特点,目的:用二进制编码表示各种操作和寻址方式。,特点:没有指令与机器语言的对照表,只有每种 基本指令类型的编码格式。,二、机器语言指令代码的编制,1.寄存器之间或寄存器与存储器之间数据传 送指令的编码格式,0:数据从寄存器传出1:数据传至寄存器,0:数据从寄存器传出1:数据传至寄存器,2.立即数寻址指令的编码,3.包含段寄存器的指令的编码,4.段超越前缀指令的编码,3-3 8086的指令集,8086指令系统按功能可分为6大类型:1、数据传输类2、算术运算类3、逻辑运算和移位类4、串操作类5、控制转移类6、处理器控制类,一、数据传送指令,数据传送指令又可以分成4种:l 通用数据传送l累加器专用传送指令l目的地址传送l 标志寄存器转送,指令的共同特点是:,1、通用数据传送指令,(1)MOV 传送指令 指令格式为:MOV 目的,源 功能:目的 源,(2)PUSH 进栈指令 指令格式为:PUSH 源(不能是立即数)其操作过程是:a、SP2,指示堆栈中可以存放数据的位置b、存源操作数,完成进栈操作。,(3)POP 出栈指令 指令格式为:POP 目的(不能是CS)其操作过程是:a、将SS:SP所指示的栈顶处的两个字节的数据,弹到目的操作数中;b、SP2,指示当前栈顶位置,完成出栈操作。,4)XCHG 交换指令 指令格式为:XCHG 目的操作数,源操作数操作数不能为立即数;源和目的不能同时为存储单元;段寄存器不能作为操作数。,2、累加器专用传送指令,1)IN 输入指令指令格式为:IN AL,n IN AX,n IN AL,DX IN AX,DX2)OUT 输出指令 指令格式为:OUT n,AL OUT n,AX OUT DX,AL OUT DX,AX,3)XLAT 换码指令指令格式为:XLAT 功能bxalal例:查表求n的平方。n:0-91、将09的平方表建立在偏移地址为2000H的内存中,如图。2、查表,完成求5的平方指令序列为:MOV BX,2000H;指向平方表的首地址MOV AL,5;将5换码成5的平方值XLAT;查表,平方值在AL中,3、目标地址传送指令 这类指令有:1)LEA 有效地址传送到寄存器2)LDS 将双字指针送到寄存器和DS3)LES 将双字指针送到寄存器和ES,Eg:LEA BX,1000H LDS SI,1000H LES DI,1000H,4、标志寄存器传送指令1)LAHF FR寄存器的低8位送AH2)SAHF AH 送 FR寄存器的低8位3)PUSHF FR寄存器推入堆栈4)POPF 从栈顶中弹出存入FR寄存器,二、算术运算指令,1)ADD 算术加法指令功能:目的目的操作数源操作数 2)ADC 带进位算术加法 指令功能:目的目的操作数源操作数CF,1、算术加法指令,两条指令的源操作数可以是寄存器、存储器或立即数;目的操作数只能是寄存器或存储单元。源和目的操作数不能同时为存储器且类型要一致。影响所有的标志位,5)AAA 对非压缩BCD数加法操作的结果进行 校正 指令功能:对AL寄存器的内容进行十进制调整,3)INC 加1指令指令功能:目的目的操作数1,目的操作数可以是通用寄存器或存储器。影响标志位,但CF除外。,4)DAA 对压缩BCD数加法操作的结果进行校正 指令功能:对AL寄存器的内容进行十进制调整,2、算术减法指令 1)SUB 算术减法指令功能:目的目的操作数源操作数2)SBB 带进位算术减法指令功能:目的目的操作数源操作数CF3)DEC 减1指令指令功能:目的目的操作数14)DAS 对压缩BCD数减法操作的结果进行校正指令功能:对AL寄存器的内容进行十进制调整5)AAS 对非压缩BCD数减法操作的结果进行校正指令功能:对AL寄存器的内容进行十进制调整6)CMP 比较指令指令功能:目的源操作数7)NEG 取补指令指令功能:0目的操作数,3)AAM 非压缩BCD数乘法操作结果校正指令功能:完成两个非压缩BCD数乘法结果的十进制数调整,3、算术乘法指令,1)MUL 无符号数乘法指令格式:MUL 源指令功能:AX AL源(DX,AX)AX源,源操作数可以是寄存器,也可以是存储器,但不能是立即数。是存储器时,需指明类型。,2)IMUL 带符号数乘法指令格式:IMUL 源指令功能:AX AL源(DX,AX)AX源,另外还有:CBW 带符号数字节扩展;CWD 带符号数字扩展;AAD 非压缩BCD数除法校正。,4、算术除法指令,1)DIV 无符号数除法 指令格式:DIV 源指令功能:AX/源AL:商,AH:余数 DXAX/源 AX:商,DX:余数,2)IDIV 带符号数除法 指令格式:IDIV 源指令功能:AX/源AL:商,AH:余数 DXAX/源 AX:商,DX:余数,三、逻辑运算和移位指令,(1)可以按二进制位进行操作;(2)逻辑运算指令按逻辑门电路的运算规则;(3)逻辑移位指令有左移和右移,移出的位都进入CF标志;(4)因移空位的补充方式不同有多种指令形式;(5)逻辑移位指令中,移动超过1次则用CL寄存器做计数器;(6)执行逻辑操作指令,CF均被清0。,属于位操作指令,其共同点是:,1、逻辑运算指令,1)NOT 逻辑求反 指令功能:将8位、16位寄存器或存储器内容求反。,2)AND 逻辑与操作 指令功能:将8位、16位寄存器或存储器内容和源操作数“与”,3)OR 逻辑或操作指令功能:将8位、16位寄存器或存储器内容和源操作数“或”,4)XOR 逻辑异或操作 指令功能:将8位、16位寄存器或存储器内容和源操作数“异或”,5)TEST 测试指令指令功能:将8位、16位寄存器或存储器内容和源操作数“与”,不产生运算结果,仅影响状态标志,AND 可以使指定位为0OR 可以使指定位为1XOR 可以使指定位为非,2、逻辑移位指令,2)SAL 算术左移 指令功能:将8位、16位寄存器或存储器内容左移,移空的位补0,1)SHL 逻辑左移指令功能:将8位、16位寄存器或存储器内容左移,移空的位补0。,3)SHR 逻辑右移 指令功能:将8位、16位寄存器或存储器内容右移,移空的位补0,4)SAR 算术右移指令功能:将8位、16位寄存器或存储器内容右移,移空的位由最高位补充。,5)ROL 不带进位循环左移指令功能:将8位、16位寄存器或存储器内容左移,移空的位由移出位补充。,6)ROR 不带进位循环右移指令功能:将8位、16位寄存器或存储器内容右移,移空的位由移出位补充。,7)RCL 带进位循环左移指令功能:将8位、16位寄存器或存储器内容左移,移空的位由CF位补充。,8)RCR 带进位循环右移 指令功能:将8位、16位寄存器或存储器内容右移,移空的位由CF位补充。,四、字符串处理指令,源操作数指针 DS:SI目的操作数指针 ES:DI 每操作一次SI,DI修改一次,方向由DF控制重复操作的退出CX控制条件控制(ZF标志),必须遵守的约定:,五、控制转移指令,转移指令循环控制过程调用中断控制,2)短转移指令JMP LABELIP+CBW(位移量)IP位移量(8bit)LABEL指令地址JMP地址2,1)段内直接转移JMP LABELIP+位移量IP位移量LABEL指令地址JMP地址3,1、无条件转移指令JMP 目标地址,3)段内间接转移JMP SIJMP WORD PTR,5)段间间接转移 JMP OPRD;OPRD:MEMoffest OPRD IP seg OPRD csJMP DWORD PTR SI,4)段间直接转移 JMP far LABELoffest LABEL IP seg LABEL cs,2、条件转移指令(段内短转移),1)单条件转移指令 JC;CF标志为1,则转移 JNC;CF标志为0,则转移 JE/JZ;ZF标志为1,则转移 JNE/JNZ;ZF标志为0,则转移 JS;SF标志为1,则转移 JNS;SF标志为0,则转移 JO;OF标志为1,则转移 JNO;OF标志为0,则转移 JP/JPE;PF标志为1,则转移 JNP/JPO;PF标志为0,则转移,例3-87 求AL和BL寄存器中的两数之 和,若有进位,则AH置1,否则AH清0,2)用于无符号数比较测试指令 JA/JNBE;高于/不低于等于转移,CFZF0 JNA/JBE;不高于/低于等于转移,CFZF1 JB/JNAE;低于/不高于等于转移,CF1 JNB/JAE;不低于/高于等于转移,CF0,P111 例3-89 设某个学生的英语成绩已存放在AL寄存器中,若低于60分,则打印F(FAIL);若高于或等于85分,则打印G(GOOD);当在60分和84分之间时,打印P(PASS)。,CMP AL,60JB FAILCMP AL,85JAE GOODMOV AL,PJMP PRINTFAIL:MOV AL,FJMP PRINTGOOD:MOV AL,GPRINT:,3)用于带符号数的比较测试指令 JG/JNLE;大于/不小于等于转移,(SFOF)ZF0 JGE/JNL;大于等于/不小于转移,(SFOF)0 JL/JNGE;小于/不大于等于转移,(SFOF)1 JLE/JNG;小于等于/不大于转移,(SFOF)ZF1,3、循环控制指令,2)另外还有:LOOPZ/LOOPE指令、LOOPNZ/LOOPNE指令、JCXZ指令。,1)LOOP指令 指令格式:LOOP 目标地址执行该指令,CX1,若CX0,转移到目标地址,即:IPIP8位位移量(带符号扩展到16位)。由于指令自动对CX寄存器做减1操作,故使用LOOP指令前,需将循环操作次数值赋给CX寄存器。,4、子程序调用和返回指令,1)CALL指令段内直接调用例:CALL LABLEa、IP栈 b、IP+位移量IP段内间接调用例:CALL WORD PTR SI 段间直接调用 例:CALL FAR 目标地址 段间间接调用 例:CALL DWORD PTR SI,2)、RET 子程序返回指令 和调用指令CALL 相对应的是返回指令RET。返回指令通常作为一个子程序或过程的最后一条指令,它用以返回到调用这个子程序的断点处。关于RET n 指令,这条指令称为带参数返回指令。,5、中断指令,(1)中断相关概念,什么是中断?,中断源及其分类,中断向量及中断向量表,(2)中断指令,INT n,INTO 溢出中断指令,IRET,六、处理器控制指令,1、标志控制指令 STC;使CF 置1CLC;使CF 清0CMC;使CF 取反STD;使DF 置1CLD;使DF 清0STI;使IF置1CLI;使IF 清0,2、外同步指令 HLT 处理器暂停指令WAIT 等待指令ESC 换码指令/交权指令LOCK 总线封锁指令NOP 空操作指令,七、指令的执行时间和软件延时,本章小结,在这一章中我们讨论了寻址方式和指令系统的概念,详细介绍了8086的各种寻址方式和指令系统中的几大类指令。重点掌握:1.寻址方式的概念及各种寻址方式得到操作数地址的过程;2.常用8086指令的形式及使用方法。,本章作业(一),1.已知:DS=1000H,BX=0200H,SI=02H,内存10200H10205H单元的内容分别为10H,2AH,3CH,46H,59H,6BH。下列每条指令执行完后AX的内容各是什么?(1)MOV AX,0200H(4)MOV AX,3BX(6)MOV AX,2BX+SI2.设DS=1000H,ES=2000H,SS=3500H,SI=00A0H,DI=0024H,BX=0100H,BP=0200H,数据段中变量名为VAL的偏移地址值为0030H,试说明下列源操作数字段的寻址方式是什么?物理地址值是多少?(2)MOV AX,VAL(4)MOV AX,ES:BX(8)MOV AX,VALBPSI3.写出下列指令的机器码(1)MOV AL,CL(2)MOV BX+100H,3150H,本章作业(二),1指出下列指令中哪些是错误的,错在何处?,(1)MOV DL,AX(3)MOV DS,0200H(5)MOV IP,0FFH(7)MOV AX,BXBP(9)MOV DL,SIDI(11)MOV AL,OFFSET TABLE(13)IN BL,05H,2 在数据段中有两个相邻的字节数据2BH和F5H,编程实现下列操作。(1)把它们当成带符号数相加后,结果存到RESULT单元中;(2)把它们当成无符号数相乘后,结果存到RESULT单元中。,3 编程将AX寄存器中的内容以相反的次序传送到 DX寄存器中,并要求AX中的内容不被破坏,然后统计DX寄存器中1的个数。,

    注意事项

    本文(微机原理与接口技术课件微机第三章.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开