欢迎来到天天文库
浏览记录
ID:12290824
大小:168.00 KB
页数:17页
时间:2018-07-16
《第三章 8086cpu指令系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、教案用纸第三章第三章8086CPU指令系统内容提要:⒈寻址方式:立即寻址,寄存器寻址,直接寻址,寄存器间接寻址,基址寻址,变址寻址,基址加变址寻址,串寻址,端口寻址,隐含寻址。⒉8086指令系统:数据传送指令,算术运算指令,移位指令,程序控制指令,串操作指令,处理器控制指令,I/O指令,中断指令。学习目标:⒈掌握寻址方式;⒉掌握常用指令的功能和用法。难点:区别指令的正确与错误。 第17页吉林化工学院教案用纸第三章一 8086指令的一般格式⒈概述①指令:是计算机用以控制各部件协调动作的命令; ②指令系统:CPU可执行的指令的集合;③机器指令:是CPU仅能识别的指令的二进制代码,也称机
2、器码;⒉指令格式①组成由操作码和操作数两部分组成,有些指令无操作数。操作码规定了指令的操作性质,用助记符表示;操作数规定了指令的操作对象。②分类指令可分为无操作数指令、单操作数指令、双操作数指令。例:HLT无操作数DAA约定或隐含操作数INCAL单操作数MOVAL,BL双操作数,其中逗号前的操作数AL为目的操作数,逗号后的操作数BL为源操作数。③操作数类型立即数:出现在指令中的常数;寄存器操作数:操作数在寄存器中;存储器操作数:操作数在存储器中。④一般格式[标号:]操作码操作数;注释二8086寻址方式是指CPU在执行指令时寻找操作数或操作数地址的方式。⒈立即寻址直接放在指令中的常数称
3、为立即数,立即数只能是源操作数,立即数存放在指令操作码之后的存储单元中。例:MOVAL,50H⒉寄存器寻址存放在寄存器中的数据为操作数,寄存器操作数可以是源操作数,也可以是目的操作数。例:MOVAL,BL第17页吉林化工学院教案用纸第三章以下寻址方式3~8,操作数都在存储器中。存储器操作数具有类型属性,如字节(BYTE)、字(WORD)、双字(DWORD)等,反映了数据占用存储单元的字节数,指令书写中,约定用方括号内容表示存储器操作数的偏移地址;用类型名PTR偏移地址的形式说明指令中存储器操作数的类型,例:WORDPTR[1000H];用变量名DB/DW/DD数据序列的形式分别定义具
4、有“变量名”的字节、字或双字存储器操作数,如BUFDB10H,20H。⒊存储器寻址①直接寻址存储器操作数的16位偏移地址直接包含在指令的方括号中。例:MOVAL,[1000H]约定由DS提供段地址MOVAL,CS:[1000H];段超越,由CS提供段地址MOVAL,SS:[1000H];段超越,由SS提供段地址②寄存器间接寻址操作数所在的存储单元的偏移地址放在指令给出的寄存器中。可用于这种寻址方式的寄存器只能是SI、DI、BP和BX。其中,SI、DI、BX约定的段寄存器是DS,而BP约定的段寄存器SS。例:MOVAX,[SI];AX←DS:[SI]MOV[BX],AX;DS:[BX]
5、←AX③基址寻址操作数的有效地址是指令给定的位移量(8位或16位)与BX、BP内容之和,段寄存器约定同寄存器间接寻址,允许段超越。例:MOVAX,[BX+3AH];AX←DS:[BX+3AH]MOV[BP+4EB3H],AX;SS:[BP+4EB3H]←AX④变址寻址操作数的有效地址是指令给定的位移量与寄存器SI或DI内容之和,段寄存器约定在DS中,允许段超越。例:MOV[DI+12H],AX;DS:[DI+12H]←AXMOVBX,SS:[DI+45H];BX←SS:[DI+45H]⑤基址变址寻址操作数的有效地址是指令给定的位移量和一个基址寄存器(BX或BP)及一个变址寄存器(SI
6、或DI)的内容之和,段寄存器约定由基址寄存器决定,若为BX,段寄存器约定为DS;若为BP,段寄存器约定为SS,允许段超越。例:MOVBX,[DI+BP+45H];BX←SS:[DI+BP+45H]MOVAX,ES:[SI+BX+76H];AX←ES:[SI+BX+76H]注意:基址寄存器BX和BP不能同时出现在一个方括号内,变址寄存器DI和SI亦如此。⑥串寻址第17页吉林化工学院教案用纸第三章用于数据串操作指令,它隐含地运用:SI指出源串偏移地址,DI指出目的串偏移地址,指令执行后,SI和DI的内容自动加1或减1(操作数为字节类型时)、加2或减2(操作数为字类型时);约定源串段地址在
7、DS中,目的串段地址在ES中。不允许段超越。例:MOVSB;ES:[DI]←DS:[SI],SI←SI1,DI←DI1MOVSW;ES:[DI]←DS:[SI],SI←SI2,DI←DI2⑦端口寻址操作数在外设端口中。●直接端口寻址:指令中直接给出的8位常数是外设端口地址。例:INAL,34H;AL←[34H]OUT34H,AL;[34H]←AL●间接端口寻址:指令中外设端口的16位地址在DX中。例:MOVDX,280HINAL,DX;AL←[280H]O
此文档下载收益归作者所有