单片机指令的应用.pptx
《单片机指令的应用.pptx》由会员分享,可在线阅读,更多相关《单片机指令的应用.pptx(53页珍藏版)》请在咨信网上搜索。
11 1实验目的实验目的(1)掌握指令格式及表示方法:助记符表示和机器码表示。(2)了解人工汇编与机器汇编的方法。(3)了解寻址方式的概念。(4)掌握常用指令的功能及应用。实验实验3 3 指令的应用指令的应用2 2实验引入实验引入MOVP1,#55HMOVP1,55H请比较以上两条指令执行请比较以上两条指令执行后后P1P1口的状况口的状况?为什么为什么?23 3实验表格实验表格表3.1 实验表格题号助记符指令机器码指令检查数据发光二极管状态MOV P1,#55H MOV 20H,#0F0H(20H)=MOV P1,20H MOV A,#0F0HA=MOV P1,AMOV R4,#0FHR4=MOV P1,R4MOV 20H,#0AAH(20H)=MOV R0,#20HR0=MOV P1,R0MOV A,#55H A=MOV P1,A AND A,#0FHA=MOV P1,A 3MOV A,#55H A=MOV P1,AAND A,#0FHA=MOV P1,A OR A,#0F0HA=MOV P1,A CLR A A=MOV P1,ACPL AA=MOV P1,AMOV A,#01H A=MOV P1,A RL AA=MOV P1,ARL AA=MOV P1,A 44.4.实验分析与总结实验分析与总结 在实验中看到以下现象:往P1口传送数据的指令中,数据的来源不尽相同。数据是指令的操作对象,叫做操作数。指令必须给出操作数所在的地方,才能进行数据传送。寻找操作数地址的方法,称为寻址方式。寻找操作数到底有多寻找操作数到底有多少种方式呢少种方式呢?5指令概述指令概述操作码操作码操作码操作码7 07 07 07 0数据或寻址方式数据或寻址方式数据或寻址方式数据或寻址方式7 07 07 07 0双字节指令:双字节指令:双字节指令:双字节指令:标号:标号:标号:标号:操作码操作码操作码操作码操作数或操作数地址操作数或操作数地址操作数或操作数地址操作数或操作数地址;注释;注释;注释;注释单字节指令:单字节指令:单字节指令:单字节指令:操作码操作码操作码操作码7 07 07 07 0三字节指令:三字节指令:三字节指令:三字节指令:操作码操作码操作码操作码7 07 07 07 0数据或寻址方式数据或寻址方式数据或寻址方式数据或寻址方式7 07 07 07 0数据或寻址方式数据或寻址方式数据或寻址方式数据或寻址方式7 07 07 07 0指令按字节长度可以分为三种:指令按字节长度可以分为三种:指令按字节长度可以分为三种:指令按字节长度可以分为三种:指令格式指令格式指令格式指令格式指令的格式:指令的格式:指令的格式:指令的格式:例如:例如:例如:例如:MOVAMOVA,R0R0例如:例如:例如:例如:MOVAMOVA,30H30H例如:例如:例如:例如:MOVDPTRMOVDPTR,#2010H#2010H6一、寻址方式一、寻址方式(找信找信找信找信方式方式方式方式)我的信在他我的信在他我的信在他我的信在他那那那那!找信找信找信找信去去去去!注:找信是寻找信的“地址”!你能说出第你能说出第你能说出第你能说出第二封信的二封信的二封信的二封信的“地址地址地址地址”吗?吗?吗?吗?7目的地目的地目的地目的地#XXHXXH操作数操作数MOVP1,MOVP1,#55H55HMOVA,MOVA,#01H01H#55H55H目的地目的地信信寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址8目的地目的地目的地目的地寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址内部内部内部内部RAMRAM或或或或SFRSFR区区区区操作数操作数XXHXXHMOVP1,20HMOVP1,20H20H20H目的地目的地20H20H注:寻址是寻操作数的“地址”!直接给出地址直接给出地址20H20H直接寻址直接寻址直接寻址直接寻址9目的地目的地目的地目的地寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址寄存器寄存器寄存器寄存器目的地目的地操作数操作数XXHXXHMOVP1,AMOVP1,A寄存器寄存器寄存器寄存器R0-R7ABDPTR你能说出为什么叫你能说出为什么叫你能说出为什么叫你能说出为什么叫寄存器寻址吗?寄存器寻址吗?寄存器寻址吗?寄存器寻址吗?10寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址MOVP1,R0MOVP1,R0目的地目的地目的地目的地寄存器寄存器寄存器寄存器操作数操作数3AH3AH内部内部内部内部RAMRAM3AH3AH65H65H3AH3AHR0R1DPTR寄寄存存器器间间接接寻寻址址寄寄存存器器目的地目的地2 2号号号号信在信在2 2号箱子里号箱子里1 1号号号号你能说出你能说出你能说出你能说出1 1 1 1号箱号箱号箱号箱子和子和子和子和2 2 2 2号箱子分号箱子分号箱子分号箱子分别对应内存中哪别对应内存中哪别对应内存中哪别对应内存中哪一部分吗一部分吗一部分吗一部分吗?11寻址比较寻址比较MOV P1MOV P1,R0R0地址是寄存器地址是寄存器地址是寄存器地址是寄存器R0R0MOV P1MOV P1,R0R0 地址在寄存器地址在寄存器地址在寄存器地址在寄存器R0R0里里里里MOV P1MOV P1,20H20H地址是内存地址是内存地址是内存地址是内存20H20HMOV P1MOV P1,#20H#20H直接将直接将直接将直接将20H20H这个数送这个数送这个数送这个数送P1P1口口口口错!错!错!MOV P1MOV P1,R0R0对!12寻址比较寻址比较MOV P1MOV P1,R0R0 地址是寄存器地址是寄存器R0R0MOV P1MOV P1,R0R0 地址在寄存器地址在寄存器R0R0里面里面MOV P1MOV P1,20H20H 地址是内存地址是内存20H20HMOV P1MOV P1,#20H#20H 直接将直接将20H20H这个数送这个数送P1P1口口错!错!错!MOV P1MOV P1,R0R0对!13寻址比较寻址比较MOV P1MOV P1,R0R0 地址是寄存器地址是寄存器R0R0MOV P1MOV P1,R0R0 地址在寄存器地址在寄存器R0R0里面里面MOV P1MOV P1,20H20HMOV P1MOV P1,#20H#20H 直接将直接将20H20H这个数送这个数送P1P1口口错!错!错!MOV P1MOV P1,20H20H对!地址是内存地址是内存20H20H14寻址比较寻址比较MOV P1MOV P1,R0R0 地址是寄存器地址是寄存器R0R0MOV P1MOV P1,R0R0 地址在寄存器地址在寄存器R0R0里里MOV P1MOV P1,20H20H 地址是内存地址是内存20H20HMOV P1MOV P1,#20H#20H 直接将直接将20H20H这个数送这个数送P1P1口口错!错!错!MOV P1MOV P1,#20H#20H对!15寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址MOVCA,A+DPTRMOVCA,A+DPTR目的地目的地目的地目的地寄存器寄存器寄存器寄存器操作数操作数内部内部内部内部RAMRAM3AH3AH65H65H3AH3AH基址基址基址基址寄存器寄存器寄存器寄存器12H12H变址变址变址变址寄存器寄存器寄存器寄存器34H34H内部内部内部内部RAMRAM46H46H65H65HADPTRPC46H46H16目的地目的地目的地目的地寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址XXHXXH位寻址操作数操作数SJMP54HSJMP54HPCPC+54H54HPCPC2002H2002H2002H=2056H2002H=2056HPCPC2056H2056H17寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址20H20H27H27H21H21H28H28H21H21H20H20H100000000想一想想一想想一想想一想:如果想使如果想使如果想使如果想使27H27H单单单单元的元的元的元的第第第第3 3位位位位置置置置1 1,该怎么办呢该怎么办呢该怎么办呢该怎么办呢?18单元地址单元地址单元地址单元地址2FH2FH2FH2FH2EH2EH2EH2EH2DH2DH2DH2DH2CH2CH2CH2CH2BH2BH2BH2BH2AH2AH2AH2AH29H29H29H29H28H28H28H28H 26H26H26H26H25H25H25H25H24H24H24H24H23H23H23H23H22H22H22H22H21H21H21H21H20H20H20H20H7F7F77776F6F67675F5F57574F4F474737372F2F27271F1F17170F0F0707 MSBMSBMSBMSB 位地址位地址位地址位地址 LSBLSBLSBLSB7E7E76766E6E66665E5E56564E4E4646 36362E2E26261E1E16160E0E06067D7D75756D6D65655D5D55554D4D454535352D2D25251D1D15150D0D05057C7C74746C6C64645C5C54544C4C4444 34342C2C24241C1C14140C0C04047B7B73736B6B63635B5B53534B4B4343 33332B2B23231B1B13130B0B03037A7A72726A6A62625A5A52524A4A4242 32322A2A22221A1A12120A0A020279797171696961615959515149494141 313129292121191911110909010178787070686860605858505048484040 3030282820201818101008080000位寻址地址表位寻址地址表位寻址地址表位寻址地址表 例:SETB 3DHSETB 3DHSETB 3DHSETB 3DH3D3D3C3C3B3B3F3F3E3E3A3A3939383827H27H19寄存器寻址直接寻址立即数寻址寄存器间接寻址变址寻址相对寻址位寻址SETB3DHSETB3DH20H20H27H27H21H21H28H28H21H21H20H20H00000001 020二、指令系统二、指令系统1、指令描述约定、指令描述约定符符 号号含含 义义RnRn表示当前选定寄存器组的工作寄存器表示当前选定寄存器组的工作寄存器R0R0R7R7RiRi表示作为间接寻址的地址指针表示作为间接寻址的地址指针R0R0R1R1#data#data表示表示8 8位立即数,即位立即数,即00H00HFFHFFH#data16#data16表示表示1616位立即数,即位立即数,即0000H0000HFFFFHFFFFHaddr16addr16表示表示1616位地址,用于位地址,用于64K64K范围内寻址范围内寻址addr11addr11表示表示1111位地址,用于位地址,用于2K2K范围内寻址范围内寻址directdirect8 8位直接地址,可以是内部位直接地址,可以是内部RAMRAM区的某一单元或某一专用功能寄存器的地址区的某一单元或某一专用功能寄存器的地址RelRel带符号的带符号的8 8位偏移量(位偏移量(-128-128+127+127)BitBit位寻址区的直接寻址位位寻址区的直接寻址位(X X)X X地址单元中的内容,或地址单元中的内容,或X X作为间接寻址寄存器时所指单元的内容作为间接寻址寄存器时所指单元的内容将将 后面的内容传送到前面去后面的内容传送到前面去212、MCS-51的指令的指令2.1 2.1 2.1 2.1 数据传送指令(数据传送指令(数据传送指令(数据传送指令(29292929条)条)条)条)2.2 2.2 2.2 2.2 算术运算指令(算术运算指令(算术运算指令(算术运算指令(24242424条)条)条)条)2.3 2.3 2.3 2.3 逻辑运算指令(逻辑运算指令(逻辑运算指令(逻辑运算指令(24242424条)条)条)条)2.4 2.4 2.4 2.4 控制转移指令(控制转移指令(控制转移指令(控制转移指令(17171717条)条)条)条)2.5 2.5 2.5 2.5 位操作指令(位操作指令(位操作指令(位操作指令(17171717条)条)条)条)2.6 2.6 2.6 2.6 常用伪指令(常用伪指令(常用伪指令(常用伪指令(17171717条)条)条)条)22目的地址目的地址目的地址目的地址源地址源地址源地址源地址数数数数 据据据据MOV ,MOVA,#20H,A ARnRndirect1direct1RiRiA ARnRndirect2direct2RiRi#data#dataA ARnRndirect2direct2RiRi#data#dataMOVMOVRnRnA A#data#datadirect2direct2direct1direct1A ARnRndirect2direct2RiRi#data#dataRiRiA Adirect2direct2#data#data20H20HA A2.1 2.1 2.1 2.1 数据传送指令(数据传送指令(数据传送指令(数据传送指令(29292929条)条)条)条)8 8 8 8位位位位数据传送指令数据传送指令数据传送指令数据传送指令(15(15(15(15条条条条)232.1 2.1 2.1 2.1 数据传送指令(数据传送指令(数据传送指令(数据传送指令(29292929条)条)条)条)16161616位位位位数据传送指令(数据传送指令(数据传送指令(数据传送指令(1 1 1 1条)条)条)条)MOV DPTR,#data16 外部外部外部外部数据传送指令数据传送指令数据传送指令数据传送指令(4(4(4(4条条条条)MOVX ,,A ADPTRDPTRRiRiMOVXMOVXA ADPTRDPTRRiRiDPTRDPTRA ARiRiDPTRDPTRA ARiRiA A24vv程序存储器数据传送指令组程序存储器数据传送指令组程序存储器数据传送指令组程序存储器数据传送指令组(2(2(2(2条条条条)MOVC A,A+DPTR ;A(A)+(DPTR)MOVC A,A+PC ;A(A)+(PC)251)1)1)1)字节交换指令字节交换指令字节交换指令字节交换指令(3(3(3(3条条条条)交换和查表类交换和查表类交换和查表类交换和查表类指令指令指令指令(5(5(5(5条条条条),A AXCHXCHdirectdirectRnRnRiRidirectdirectA ARnRnRiRi2)2)2)2)低半字节交换指令低半字节交换指令低半字节交换指令低半字节交换指令(1(1(1(1条条条条)XCHDA,RiXCHDA,Ri3)3)3)3)累加器累加器累加器累加器A A A A中高中高中高中高4 4 4 4位和低位和低位和低位和低4 4 4 4位交换位交换位交换位交换(1(1(1(1条条条条)SWAPASWAPA26堆栈操作堆栈操作指令指令(2(2(2(2条条条条)进栈指令:进栈指令:PUSH direct;PUSH direct;SP(SP)+1,(SP)(direct)出栈指令:出栈指令:POP direct ;POP direct ;direct(SP),SP(SP)-127directdirectdirectdirect2.22.22.22.2算术运算类指令(算术运算类指令(算术运算类指令(算术运算类指令(24242424条)条)条)条)加法加法加法加法指令(指令(指令(指令(8 8 8 8条)条)条)条)AA,RnRnRiRi#data#dataADDADDRnRnRiRi#data#datadirectdirectdirectdirectAA,RnRnRiRi#data#dataADDCADDCRnRnRiRi#data#data减法减法减法减法指令指令指令指令(4(4(4(4条条条条)directdirectdirectdirectAA,RnRnRiRi#data#dataSUBBSUBBRnRnRiRi#data#dataADDCA,B(A+B+CYADDCA,B(A+B+CYA)A)SUBBA,B(ABSUBBA,B(ABCYCYA)A)28BCD码码:00110100BCDBCDBCDBCD码调整码调整码调整码调整指令指令指令指令(1(1(1(1条条条条)DAADAA注意注意注意注意:DAADAA指令只能跟在指令只能跟在指令只能跟在指令只能跟在ADDADD或或或或ADDCADDC加法指令后,不适用于减法指令。加法指令后,不适用于减法指令。加法指令后,不适用于减法指令。加法指令后,不适用于减法指令。十进制十进制二进制二进制BCDBCD码码0123456789101112131415000000010010001101000101011001111000100110101011110011011110111100000001001000110100010101100111100010010001000000010001000100100001001100010100000101011816+34十进制十进制0001100000010110+BCD码码001011100011010000101110-00000110差差629助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器机器周期周期INCA00000100AA+1影响影响PSW的的P标志标志1INCRn00001rrrRnRn+1n=07,rrr=0001111INCdirect00000101direct(direct)(direct)+11INCRi0000011i(Ri)(Ri)+1i=0,11INCDPTR10100011DPTRDPTR+12DECA00010100AA-1影响影响PSW的的P标志标志1DECRn00011rrrRnRn-1n=07,rrr=0001111DECdirect00010101direct(direct)(direct)+11DECRi0001011i(Ri)(Ri)-1i=0,11加加加加1 1 1 1减减减减1 1 1 1指令指令指令指令30乘法乘法乘法乘法指令指令指令指令(1(1(1(1条条条条)MULABMULAB除法除法除法除法指令指令指令指令(1(1(1(1条条条条)DIVABDIVAB2.32.32.32.3逻辑及移位类指令逻辑及移位类指令逻辑及移位类指令逻辑及移位类指令逻辑与逻辑与逻辑与逻辑与指令(指令(指令(指令(6 6 6 6条)条)条)条)助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器机器周期周期ANLA,direct01010101directAAdirect按位相与按位相与1ANLA,Rn01011rrrAARnn=07rrr=0001111ANLA,Ri0101011iAA(Ri)i=0,11ANLA,#data01010100dataAA#data1ANLdirect,A01010010direct(direct)(direct)A不影响不影响PSW的的P标志标志1ANLdirect,#data01010011directdata(direct)(direct)#data不影响不影响PSW的的P标志标志2无符号数相乘,高位存无符号数相乘,高位存B,低位存,低位存A无符号数相除,商存无符号数相除,商存A,余数存,余数存B31逻辑或逻辑或逻辑或逻辑或指令(指令(指令(指令(6 6 6 6条)条)条)条)01000011directdata助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器机器周期周期ORLA,direct01000101directAAdirect按位相或按位相或1ORLA,Rn01001rrrAARnn=07,rrr=0001111ORLA,Ri0100011iAA(Ri)i=0,11ORLA,#data01000100dataAA#data1ORLdirect,A01000010direct(direct)(direct)A不影响不影响PSW的的P标志标志1ORLdirect,#data(direct)(direct)#data不影响不影响PSW的的P标志标志232逻辑逻辑逻辑逻辑异或异或异或异或指令(指令(指令(指令(6 6 6 6条)条)条)条)助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器机器周期周期XRLA,direct01100101directAA(direct)按位相异或按位相异或1XRLA,Rn01101rrrAA Rnn=07,rrr=0001111XRLA,Ri0110011iAA(Ri)i=0,11XRLA,#data01100100dataAA#data1XRLdirect,A01100010direct(direct)(direct)A不影响不影响PSW的的P标志标志1XRLdirect,#data01100011directdata(direct)(direct)#data不影响不影响PSW的的P标志标志233累加器累加器累加器累加器A A A A清清清清0 0 0 0和取反和取反和取反和取反指令指令指令指令助记符格式机器码(B)相应操作指令说明机器周期CLR A11100100A00HA中内容清0,影响P标志1CPL A11110100A中内容按位取反,影响P标志1AA34A.0A.7A.0A.7A.0A.7A.0A.7CYCY RL A RR A RLC A RRC A注意注意注意注意:执行带进位的循环移位指令之前,必须给执行带进位的循环移位指令之前,必须给执行带进位的循环移位指令之前,必须给执行带进位的循环移位指令之前,必须给CYCY置位或清零。置位或清零。置位或清零。置位或清零。循环移位循环移位循环移位循环移位指令指令指令指令352.4 2.4 2.4 2.4 控制转移类指令控制转移类指令控制转移类指令控制转移类指令 无条件转移无条件转移无条件转移无条件转移指令指令指令指令(4(4(4(4条条条条)1)1)长转移指令:长转移指令:长转移指令:长转移指令:LJMPAAAAHLJMPAAAAH;PCPC AAAAHAAAAHPC=0000HPC=0000HPC=AAAAHPC=AAAAH0000H0000H0001H0001HAAA9HAAA9HAAAAHAAAAH0002H0002H假设执行该指假设执行该指令前,令前,PCPC的值的值为为0000H0000H。注意注意注意注意:该指令可以转移到该指令可以转移到该指令可以转移到该指令可以转移到64 KB64 KB64 KB64 KB程序存储器中的任意位置。程序存储器中的任意位置。程序存储器中的任意位置。程序存储器中的任意位置。36 PC高5位(保持不变)PC低11位A10A9A800 001A7A6A5A4A3A2A1A0操作码(第一字节)操作数(第二字节)1111位转移地址的形成示意图位转移地址的形成示意图程序计数器PC2)2)2)2)绝对转移指令绝对转移指令绝对转移指令绝对转移指令AJMPAJMPaddr11addr11;PC+2PC+2PCPC,addr11addr11PC.10PC.0PC.10PC.037PCPC2002H2002H2003H2003H0000H0000H0001H0001H2004H2004H2005H2005H2006H2006HPCPCPCPCPCPC2006H2006H2003H2003HPCPC0002H0002HPCPC3)3)3)3)相对转移指令相对转移指令相对转移指令相对转移指令 例:SJMP03HSJMP03H03H03H03H03H就是当前就是当前就是当前就是当前PCPC值值值值与目的与目的与目的与目的PCPC值值值值相对差相对差相对差相对差PCPC38条件转移条件转移条件转移条件转移指令指令指令指令(8(8(8(8条条条条)1)1)1)1)累加器累加器累加器累加器A A A A判判判判0 0 0 0指令指令指令指令(2(2(2(2条条条条)助记符格式助记符格式助记符格式助记符格式机器码机器码机器码机器码(B)(B)相应操作相应操作相应操作相应操作机器机器机器机器周期周期周期周期JZrelJZrel0110000001100000relrel若若若若A=0,A=0,则则则则PCPCPC+rel,PC+rel,否则程序顺序执行否则程序顺序执行否则程序顺序执行否则程序顺序执行 2 2JNZrelJNZrel0111000001110000relrel若若若若A0,A0,则则则则PCPCPC+rel,PC+rel,否则程序顺序执行否则程序顺序执行否则程序顺序执行否则程序顺序执行2 22)2)2)2)减减减减1 1 1 1非零转移非零转移非零转移非零转移指令指令指令指令(2(2(2(2条条条条)助记符格式助记符格式机器码机器码(B)相应操作相应操作机器周期机器周期DJNZRn,rel11011rrrrelRnRn-1,若若Rn0,则则PCPC+rel,否则顺序执行否则顺序执行2DJNZdirect,rel11010101directrel(direct)(direct)-1,若若(direct)0,则则PCPC+rel,否否则则顺顺序执行序执行2393)3)3)3)比较转移比较转移比较转移比较转移指令指令指令指令(4(4(4(4条条条条)助记符格式助记符格式机器码机器码(B)(B)相应操作相应操作机器机器周期周期CJNE CJNE A,#data,relA,#data,rel10110100 10110100 data reldata rel若若A#data,A#data,则则PCPCPC+relPC+rel,否否则则顺顺序序执执行行;若若 A#dataA#data,则则CY=1CY=1,否否则则CY=0CY=02 2CJNE CJNE Rn,#data,relRn,#data,rel10111rrr10111rrrdata reldata rel若若 Rn#dataRn#data,则则PCPCPC+relPC+rel,否否则则顺顺序序执执行行;若若Rn#dataRn#data,则则CY=1CY=1,否否则则CY=0CY=02 2CJNE CJNE Ri,#data,relRi,#data,rel1011011i1011011idata reldata rel若若(Ri)#data(Ri)#data,则则PCPCPC+relPC+rel,否否则则顺顺序序执执行行;若若(Ri)#data,(Ri)#data,则则CY=1CY=1,否则,否则CY=0CY=02 2CJNE CJNE A,direct,relA,direct,rel1011010110110101direct reldirect rel若若A(direct)A(direct),则则PCPCPC+relPC+rel,否否则则顺顺序序执执行行;若若A(direct)A(direct),则则CY=1CY=1,否则,否则CY=0CY=02 240条件转移类指令范例条件转移类指令范例方案一方案一还有什么方法实还有什么方法实现循环的终止现循环的终止?将00H0FH这16个数顺序地置入片内RAM20H2FH单元中。MOV R0,#20H MOV R7,#0FH CLR ALOOP:MOV R0,A INC A INC R0 DJNZ R7,LOOP SJMP$41条件转移类指令范例条件转移类指令范例方案二方案二 MOV R0,#20H MOV R7,#0FH CLR ALOOP:MOV R0,A INC A INC R0 CJNE A,#0FH,LOOP SJMP$42条件转移类指令范例条件转移类指令范例方案三方案三MOV R0,#20H MOV A,#0FH MOV 30H,#00HLOOP:MOV R0,30H INC 30H INC R0 DEC A JNZ LOOP SJMP$43条件转移类指令范例条件转移类指令范例方案四方案四MOV R0,#20H MOV A,#0FH MOV 30H,#00HLOOP:MOV R0,30H INC 30H INC R0 SUBB A,#01H JNC LOOP SJMP$44调用和返回调用和返回调用和返回调用和返回指令指令指令指令(8(8(8(8条条条条)1)1)1)1)绝对调用绝对调用绝对调用绝对调用指令(指令(指令(指令(1 1 1 1条)条)条)条)助记符格式助记符格式机器码机器码(B)相应操作相应操作机器周期机器周期ACALLaddr11a10a9a810001addr70PCPC+2SPSP+1,(SP)PC07SPSP+1,(SP)PC815PC010addr1122)2)2)2)长调用长调用长调用长调用指令(指令(指令(指令(1 1 1 1条)条)条)条)助记符格式助记符格式机器码机器码(B)相应操作相应操作机器周期机器周期LCALLaddr1600010010addr158addr70PCPC+3SP SP+1,SPPC07SP SP+1,SPPC815PC addr162453)3)3)3)返回返回返回返回指令指令指令指令助记符格式助记符格式机器码机器码(B)相应操作相应操作机器周期机器周期RET00100010PC815(SP),SPSP-1PC07(SP),SPSP-1子程序返回指令子程序返回指令2RETI00110010PC815SP,SPSP-1PC07SP,SPSP-1中断返回指令中断返回指令2助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明NOP00000000空操作空操作消耗消耗1个机器周期个机器周期4)4)4)4)空操作空操作空操作空操作462.5位操作类指令位操作类指令单元地址单元地址2FH2FH2EH2EH2DH2DH2CH2CH2BH2BH2AH2AH29H29H28H28H27H27H26H26H25H25H24H24H23H23H22H22H21H21H20H20H7F7F77776F6F67675F5F57574F4F47473F3F37372F2F27271F1F17170F0F0707MSBMSB 位地址位地址 LSBLSB7E7E76766E6E66665E5E56564E4E46463E3E36362E2E26261E1E16160E0E06067D7D75756D6D65655D5D55554D4D45453D3D35352D2D25251D1D15150D0D05057C7C74746C6C64645C5C54544C4C44443C3C34342C2C24241C1C14140C0C04047B7B73736B6B63635B5B53534B4B43433B3B33332B2B23231B1B13130B0B03037A7A72726A6A62625A5A52524A4A42423A3A32322A2A22221A1A12120A0A020279797171696961615959515149494141393931312929212119191111090901017878707068686060585850504848404038383030282820201818101008080000RAMRAM 位寻址区位地址表位寻址区位地址表位寻址区位地址表位寻址区位地址表47助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器周期机器周期MOVC,bit10100010CYbit位传送指令,结果影响位传送指令,结果影响CY标志标志2MOVbit,C10010010bitCY位传送指令,结果不影响位传送指令,结果不影响PSW22.2.2.2.位置位和位清零指令位置位和位清零指令位置位和位清零指令位置位和位清零指令助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器周期机器周期CLRC11000011CY0位清位清0指令,结果影响指令,结果影响CY标志标志1CLRbit11000010bitbit0位清位清0指令,结果不影响指令,结果不影响PSW1SETBC11010011CY1位置位置1指令,结果影响指令,结果影响CY标志标志1SETBbitbit1位置位置1指令,结果不影响指令,结果不影响PSW111010010bit1.1.1.1.位传送指令位传送指令位传送指令位传送指令483.3.3.3.位运算指令位运算指令位运算指令位运算指令助记符格式助记符格式机器码机器码(B)相应操作相应操作指令说明指令说明机器周期机器周期ANLC,bit10000010bitCYCYbit位与指令位与指令2ANLC,/bit10110010bit位与指令位与指令2ORLC,bit01110010bitCYCYbit位或指令位或指令2ORLC,/bit10100010bit位或指令位或指令2CPLC10110011位取反指令位取反指令2CPLbit10110010位位取取反反指指令令,结结果果不影响不影响CY2CYCYbitCYCYbitCYCYbitbit助记符格式机器码(B)相应操作机器周期JB bit,rel00100000bit rel若bit=1,则PCPC+rel,否则顺序执行2JNB bit,rel00110000 bit rel若bit=0,则PCPC+rel,否则顺序执行2JBC bit,rel00010000 bit rel若 bit=1,则PCPC+rel,bit0,否则顺序执行24.4.4.4.位转移指令位转移指令位转移指令位转移指令495.5.5.5.判判判判CYCYCYCY标志指令标志指令标志指令标志指令助记符格式助记符格式机器码机器码(B)相应操作相应操作机器周期机器周期JCrel01000000若若CY=1,则,则PCPC+rel,否则顺序执行,否则顺序执行2JNCrel01010000若若CY1,则,则PCPC+rel,否则顺序执行,否则顺序执行250常用伪指令常用伪指令vv定位伪指令定位伪指令定位伪指令定位伪指令ORGORGvv定义字节数据伪指令定义字节数据伪指令定义字节数据伪指令定义字节数据伪指令DBDBvv定义字数据伪指令定义字数据伪指令定义字数据伪指令定义字数据伪指令DWDWvv定义空间伪指令定义空间伪指令定义空间伪指令定义空间伪指令DSDSvv符号定义伪指令符号定义伪指令符号定义伪指令符号定义伪指令EQUEQU或或或或vv数据赋值伪指令数据赋值伪指令数据赋值伪指令数据赋值伪指令DATADATAvv数据地址赋值伪指令数据地址赋值伪指令数据地址赋值伪指令数据地址赋值伪指令XDATAXDATAvv汇编结束伪指令汇编结束伪指令汇编结束伪指令汇编结束伪指令ENDEND51练习练习1 设内部设内部设内部设内部RAMRAM中中中中33H33H单元中内容为单元中内容为单元中内容为单元中内容为44H44H,34H34H单元中单元中单元中单元中内容为内容为内容为内容为0AFH0AFH,R0R0中内容为中内容为中内容为中内容为33H33H,R1R1中内容为中内容为中内容为中内容为00H00H,给,给,给,给出以下每一条指令执行后出以下每一条指令执行后出以下每一条指令执行后出以下每一条指令执行后A A中的值和中的值和中的值和中的值和PSWPSW中中中中P P的值。的值。的值。的值。MOVA,#34HMOVA,#34HMOVA,34HMOVA,34HMOVA,R1MOVA,R1MOVA,R0MOVA,R0注意:对注意:对注意:对注意:对PSWPSW中中中中P P标志的影响。标志的影响。标志的影响。标志的影响。52练练习习2设内部设内部设内部设内部RAM30HRAM3- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 指令 应用
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文