微机原理与接口技术实用教程03.ppt
《微机原理与接口技术实用教程03.ppt》由会员分享,可在线阅读,更多相关《微机原理与接口技术实用教程03.ppt(55页珍藏版)》请在三一办公上搜索。
1、第3章 80X86的寻址方式 及指令系统,额钝注还芥超慨咏挣谰事阔桌淀要塘燃伍氦湖非岩柬翔涤二谚组昆绍油栏微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,2,本章要点,及各类指令的功能和用法,80X86系统的各种寻址方式,80X86的指令系统构成,勘筑筑郴望缴搓枢赴篙赌袭质铜迢陈邓唯庶甘缎饿裹沏它卒泵印宽币胡祈微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,3,定义:,程序:让计算机完成某种操作的命令,所有指令的集合 称为指令系统。指令用助记符表示,汇编语言程序经过编译连接后,指令助记符转换为二进制代码,即
2、指令代码,或称为机器码,可以由CPU执行。指令代码需要事先存放在微机系统的内部存储器中由CS寄存器中的内容所指定的代码段中。,摔赐敞朵椽裂铃蓬礼靠乔绒所街镐谤轧琢汰蝎姻柑亲烟汇亲陡蘸捞席唾那微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,4,指令的一般格式:操作助记符 目的操作数(或其位置),源操作数(或其位置)dst src,例如:MOVAX,SI对应的机器码是8BH,04H MOVAX,ES:SI对应的机器码是26H,8BH,04H,诚忍伟澈补冕矾搏大恍瞪芜便展睫靖理京帜汰冉碰喂澈窟彬件恨往昆革掌微机原理与接口技术实用教程03微机原理与接口技术实
3、用教程03,2023/5/10,微机原理,5,3.1 8086的寻址方式(addressing mode),寻址方式:指令中给出的操作数的表示(或存放)方式,如果操作数存放在存储器中,CPU必须先计算出操作数的物理地址,寄存器间接寻址,直接寻址,寄存器寻址,隐含寻址,基址变址相对寻址,基址变址寻址,寄存器相对寻址,立即寻址,寻址方式,腔舔艳畸矫铣脓涌殖阵摈太孪前星戈酪守镍矢梧袁贬柏汝坚故灌期坷铂而微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,6,立即寻址:操作数(8位或16位)出现在指令中,与指令代码一起存放在存储器的代码段中。,例:MOV AX,
4、6000H MOV AH,60H MOV AL,00H,引晦弊案骤棉阁渣尧骆湛介歧损锗洞章备琐霜皱泄臃闲驭筛妙佑恃澈颖蓟微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,7,寄存器寻址:操作数放在CPU内部的寄存器中,可为8位或16位寄存器,由指令给出。,例:MOV AX,BX MOV AH,BH,叠稀拷悉尼绰渍碴谩皮骋讫弧宾爬份凝驻寓附赘对紧庶袍谣片眼领膛霍牟微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,8,直接寻址:操作数放在存储器的数据段(其段地址由DS中的内容决定)中,其有效地址(偏移地址 直接用偏
5、(位)移量表示在指令中,占2个字节。偏 移量常用disp表示,是有效地址的一部分或全部,可以8位也可以16位。例:MOVAX,DS:0100H,棉信痔痔虞塞更太频鸦膏店俘婚丹考卯挖插配脑乓垫威冈炕境红膜俘侗金微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,9,寄存器间接寻址:操作数在存储单元中,其有效由BXSI或DI中的内容给出表示为:(BX)EA=(SI)(DI)寄存器BXSI或DI在指令中给出。例:MOVAX,SI,豪忙供憋爽无蒂仕杭谱施栈峪常庞屏羔弘惯维挠嵌临树挎腕如钒来毒阿籍微机原理与接口技术实用教程03微机原理与接口技术实用教程03,202
6、3/5/10,微机原理,10,寄存器相对寻址:操作数在存储器中,其有效地址是位移量(可8位或者16位)与变址或基址寄存器之和,Disp与寄存器在指令中给出。,例:MOV AX,5BX 也可写成 MOV AX,BX5,锰癣龋彝蟹差尽膳溅决卯称堵谦豁暴吸斌策狙湍箍病菏独驳馁塘可夜凌服微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,11,基址变址寻址:操作数在存储器中,偏移地址由基址寄存器和变址寄存器中的内容相加确定。,例:MOVAX,BXDI,迫了津肛派超免壹罕呻朽烫毛郡檬滴顾省洞茄女讲失殊倔鳖狙锦他侄冒畅微机原理与接口技术实用教程03微机原理与接口技术
7、实用教程03,2023/5/10,微机原理,12,基址变址相对寻址:寄存器相对寻址与基址变址寻址 方式的结合。,disp与寄存器均在指令中给出。例:MOV AX,5BPSI,钾鹰别处黔哼接仙玲僳考淬撮即姑泵备莹钝恃锡狗亨瓢兑想猛獭貌展坯械微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,13,隐含寻址:指令本身隐含了操作数的地址,例如:字符串操作指令MOVS,源操作数由DS:SI寄存器间接寻址,目的操作数由ES:DI寄存器间接寻址。,以各种类型访问存储器时,存储单元地址的组成:,臭权射喉鞍移掺潦府变欠又朋渠饲嘴罚的参乃狐慰冉重拖才萤神挨盆春蹿微机原理与
8、接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,14,3.2 8086/8088的指令系统,a,除SAHF外不影响标志位,SAHF是将AH 内容送到 标志寄存器的低8位;b,不能用CS作为目的操作数;c,源操作数和目的操作数不能同时在存储器中,即:不能在一条指令中实现数据在存储器中的传送。,3.2.1 数据传送指令,耕才珠竭甜丢早蒋朝蛀戊瓢衡密些楚犯传镇媚捌泥邻鳞粹逗系骨况垂烩役微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,15,.数据传送,由 源-目的例:MOVAX,BX;寄存器寻址 MOVDL,AL;寄存器寻址
9、 MOVAX,02;源操作数用立即寻址 MOVSI,BX;源操作数寄存器间接寻址 MOV AL,4DI;源操作数用寄存器相对寻址 MOV AX,BX+2;源操作数用寄存器相对寻址 MOV BXDI,DX;目的操作数用基址加变址寻址,1、MOV指令:数据传送(复制),伟赞傻傅首致霍娃跪奴皂伏扳蹋偷辰捧怨剃罪铭鹊呼聪诽叭剁贴左竖某滤微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,16,立即数、代码段寄存器CS只能作源操作数。IP寄存器不能作源操作数或目的操作数。MOV指令不能在两个存储单元之间直接传 送数据,也不能在两个段寄存器之间直接 传送数据。两个操
10、作数的类型属性要一致。,注意事项!,发梗艇夸戎纶抡指铡撼矩吱炕竣骤浸寻蒂缠堰蠢尉桑渴郴勋镑贺伯商嗣悟微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,17,.堆栈操作指令:堆栈:是以后进先出规则保存信息的一种存储机构。(1)8086中堆栈段地址在SS寄存器中,堆栈当前偏移地址在SP寄存器中,SP称为堆栈指针。SP的初值代表了堆栈区的大小,若 SP=0100H,有右图所示:(2)堆栈操作方式:以字为单位进行操作,高字节在高地址,低字节在低地址。,擦路椽观挠并逾饶肯微刁呐您奥阴半灼诚侩淫茸克第诞允赞吉谐楔彤丑哇微机原理与接口技术实用教程03微机原理与接口技
11、术实用教程03,2023/5/10,微机原理,18,(3)堆栈操作指令a、压入指令:PUSH例:PUSHAX 如果 AX=1234H,则该指令执行后的结果:SP00FEH,(00FFH)12H,(00FEH)34H,b、弹出指令:POP例:POPBX,雇谓缆丁敦尝演旅峪锗盏左哉砒慌足契嘲酣卞达稚逊吻撕畦俩闸蔑礼懈涕微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,19,.字节或字交换指令:寄存器之间或寄存器与存储器之间内容交换。XCHG OPR1,OPR2;(OPR1)(OPR2)例:xchg ax,cx,藕彼全字身空莽刽羊寥至皿若士层义谚则凄彭驴跋谈
12、嚏佯级量杀席唁赁坯微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,20,.字节转换指令:常用于查表。格式:XLAT 转换表 即:XLAT;(BX+AL)AL,BX的内容是表的首地 址,AL的内容是表内的序号。采用隐含寻址方式。功能:将一个字节从一种代码转换成另一种代码。XLAT指令是通过查表方式来完成翻译功能的,因此,执行该指令之前,必须建立好一张翻译表,该表的最大容量为256个字节。,攘馒萍稠猿譬涸尺檄梗械纪枝噬拾镇党邢项哑剁曳硼矽玩策搬张饼中冗靛微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,21,IN
13、A,port;数据从 port 端口输入到AL或AX OUTport,A;数据从AL或AX输出到 port 端口1)A是AL(8位输入输出)或AX(16位输入输出)2)port 是外设的端口地址,可以是8位立即数表示的直接 地址,也可以用DX寄存器的内容作为端口地址。例:INAL,3FH MOVDX,3FHOUTDX,AX,2、输入输出指令(I/O指令),衡支唾狱火穴晶斋煎锁垂沂谷蚂依涡痊诛俞府药堪羊丙别孵壮娶岩芯掸代微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,22,SAHF,PUSHF,POPF,标志送AH指令功能是:将标志寄存器中的SF、ZF
14、、AF、PF传送至AH的指定位,空位没有定义,AH送标志位寄存器低字节指令。影响标志位,但对OF、DF、IF无影响,标志入栈指令修改堆栈指针不影响标志位,标志出栈指令修改堆栈指针影响标志位,3、地址目标传送指令,LEA,函叶庐汛激说掏但踊谅获伤撇示敬钝雅拼帝绢煽腑删甚残蘑咙蛊娜使靡要微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,23,4、标志传送指令,标志送AH指令LAHF,AH送标志寄存器低字节指令SAHF,标志入栈指令PUSHF,标志出栈指令POPF,诌湾的集桔洲烬仿拂玫扣恍存橙秧眷溪扭劈人陌皂峻异治叛犊帕镜绕货佳微机原理与接口技术实用教程03
15、微机原理与接口技术实用教程03,2023/5/10,微机原理,24,3.2.2 算术运算类指令,1.加法与减法指令 a,影响标志位 b,只能有一个操作数在存储器中 c,目的操作数不能采用立即寻址方法,ADDDST,SRC;DSTDST+SRCADC DST,SRC;DSTDST+SRC+CFSUB DST,SRC;DSTDST-SRCSBB DST,SRC;DSTDST-SRC-CFNEG DST;DST0-DST,即取补,咬靠曾坠折帖上泄畦桂水敷栋算蜘浆芦褐战篆姆愁汗微瞧体弧厘有剁购拣微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,25,ADDAX
16、,SI;完成16位数据的加法运算;SRC在存储器中;DST是CPU中的AX寄存器,例:,SBBCX,DATA1;完成16位数据的减法运算;SRC在存储器中;DST是CPU中的CX寄存器,例:,蛔靡构礁为剿猜若类凑口烟逃噬蹈痈崭裴味侠菜直塌视踊秸剁逻亭砚酋囱微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,26,2.比较指令CMPDST,SRC;DST-SRC,结果不保留;只影响标志位例:CMPAX,BX,a、作为无符号数时,比较后的大小由CF和ZF决定:ZF=1:则 AX=BX ZF=0,CF=0:则 AX BX ZF=0,CF=1:则 AX BX,b
17、、作为带符号数时,比较后的大小由SF、ZF和OF决定:ZF=1:则 AX=BX OF 异或 SF=0:则 AX BX OF 异或 SF=1:则 AX BX,缨旭雾浪漂赊寂补调饯泵釉迷券注中溜琼悔透坠峭潞窟疾粟日桃饭径腹糜微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,27,例:MOVAX,003AH;0000 0000 0011 1010 MOVBX,8003H;1000 0000 0000 0011 CMPAX,BX;1000 0000 0011 0111影响标志位:CF=1,OF=1,ZF=0,SF=1,PF=0,AF=0作为无符号数时,CF=1
18、,则 AX BX 003AH小于8003H作为带符号数时,OF 异或 SF=0,则 AXBX 正数大于负数,抚彭续幢雨螟蔬乡噎硼岳幢向真扩伪剿仲礼忘侗拭阂哀龚阉竞润致谤酌戊微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,28,3.增量减量指令影响除CF以外的所有状态标志,只有一个操作数DST,可以是8位也可以是16位操作数。常用来修改计数器的计数指针。INC DST;DST+1 DSTDEC DST;DST-1 DST例:INCAX;AX+1 AX,本谴瘫健乐随舒怨殷每航笑雪骚殃族荔晋枕晶雾膘求阜灵唱运佩挠沮鸥钝微机原理与接口技术实用教程03微机原理
19、与接口技术实用教程03,2023/5/10,微机原理,29,4、乘法与除法指令只有一个操作数SRC,且不可以是立即数。,IMUL SRC;符号数的乘法;字节运算时,ALSRC AX;字运算时,AXSRC DX与AXMUL SRC;无符号数的乘法,其它同上IDIV SRC;符号数除法;字节运算时:AXSRC的商AL;AXSRC的余数AH;字运算时:DX:AXSRC的商AX;DX:AXSRC的余数DXDIV SRC;无符号数除法,其它同上,番竿细紫法茶锨捕耳央搅郁揣娶盒变膝涣蝉姚腐烈名完翻补类佛咕句甥亨微机原理与接口技术实用教程03微机原理与接口技术实用教程03,2023/5/10,微机原理,30
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 实用教程 03
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4704315.html