人工神经网络-Artificial-Neural-Networks---重庆大学课件

上传人:沈*** 文档编号:240978733 上传时间:2024-05-22 格式:PPT 页数:45 大小:297KB
返回 下载 相关 举报
人工神经网络-Artificial-Neural-Networks---重庆大学课件_第1页
第1页 / 共45页
人工神经网络-Artificial-Neural-Networks---重庆大学课件_第2页
第2页 / 共45页
人工神经网络-Artificial-Neural-Networks---重庆大学课件_第3页
第3页 / 共45页
点击查看更多>>
资源描述
第第3章章MCS-51MCS-51指令系统指令系统 1 1 汇编语言与指令系统汇编语言与指令系统 2 2 寻址方式寻址方式 3 3 数据传送类指令数据传送类指令 4 4 算术操作指令算术操作指令 逻辑操作类命令逻辑操作类命令 6 6 程序转换类指令程序转换类指令 7 7 位操作指令位操作指令 8 8 汇程序格式及伪指令汇程序格式及伪指令 应用举例应用举例 5/22/202411 1 汇编语言与指令系统汇编语言与指令系统MCS51指令系统指令系统l l111条条指指令令,分分为为数数据据传传送送,算算术术操操作作,逻逻辑辑操操作作,程序转移,位操作程序转移,位操作5类。类。l l单字节单字节49条条,双字节双字节46条条,三字节三字节16条条l l单周期单周期64条条,1s(12MHz时)时);双周期双周期45条条,2s;四周期四周期2条条,4s5/22/202421 1 汇编语言与指令系统汇编语言与指令系统MCS51单片机汇编语言指令的标准格式如下单片机汇编语言指令的标准格式如下:标号标号:操作码操作码目的操作数目的操作数,源操作数源操作数;注释注释LOOP:MOVA,10H;(;(A)10H 5/22/202432寻址方式寻址方式名称名称 形式形式说明说明单单片片机机中中的的数数立即立即数数#0f0h8位立即数位立即数#1234h16位立即数位立即数(给给DPTR)寄存寄存器器R0R7本质上是访问的本质上是访问的内部内部RAM低端低端存存储储器器10H(8位直接地位直接地址址)可能是字节地址可能是字节地址,也可能是位地址也可能是位地址,但但只能访问只能访问内部内部RAM或或SFRR0或或R1DPTR(寄存器寄存器间接寻址间接寻址)8位及位及16位寄存器间接寻址位寄存器间接寻址,R0或或R1内部内部RAM或外部或外部RAM,DPTR只只能为能为外部外部RAM(内用内用MOV,外用外用MOVX)A+PCA+DPTR(变址变址寻址寻址)用于访问程序存储器用于访问程序存储器(内或外都用内或外都用MOVC)5/22/20244内部数据存储器内部数据存储器2寻址方式寻址方式5/22/2024500HFFH100HFFFFHMOVX MOVX A A,DPTRDPTR按按1616位位编址编址用用数数据据指指针针,寄寄存存器器间接寻址间接寻址MOVX A MOVX A R Rj j 8 8位编址位编址寄存器间接寻址寄存器间接寻址 外部数据存储器外部数据存储器2寻址方式寻址方式5/22/20246程序存储器程序存储器MOVC A,A+PCMOVC A,A+DPTR外部外部ROM内部内部ROM(EA=1)外部外部ROM(EA=0)0000H0000H0FFFH0FFFH1000HFFFFH返回2寻址方式寻址方式5/22/202472寻址方式寻址方式MCS-51MCS-51寻址方式分:寻址方式分:(1 1)立即寻址)立即寻址MOV AMOV A,#40H#40H#0F0H#0F0H等,有等,有“0 0”在前在前 立即数立即数 操作数就在操作码之后操作数就在操作码之后(2 2)寄存器寻址)寄存器寻址MOV AMOV A,R R0 0寄存器,寄存器,操作数在操作数在R R0 0寄存器中寄存器中(3 3)寄存器间接寻址)寄存器间接寻址MOV AMOV A,R Rj j j=0j=0、1 1 MOVX AMOVX A,R Rj j MOVX AMOVX A,DPTR DPTR 等等5/22/202482寻址方式寻址方式(4)直接寻址)直接寻址MOVA,30HACALLaddr11AJMPaddr11LCALLaddr16LJMPaddr16直接位寻址直接位寻址SETB80H等等(5)基础寄存器加变址寄存器间接寻址)基础寄存器加变址寄存器间接寻址MOVCA,A+DPTRMOVCA,A+PC(6)相对寻址相对寻址操作数中有操作数中有rel标记:标记:rel为有符号数为有符号数-128127注意操作数的算法,注意操作数的算法,应为:应为:目的地址目的地址-(当前指令地址(当前指令地址+该指令字节数)该指令字节数)5/22/20249在分类介绍各类指令之前,先对描述指令的一些符号意在分类介绍各类指令之前,先对描述指令的一些符号意义进行一些简单约定义进行一些简单约定:Rj和和Ri:j表示表示0或或1,即即R0和和R1;i表示表示07,即,即R0R7。data:指包含在指令中的指包含在指令中的8位立即数。位立即数。data16:包含在指令中的包含在指令中的16位立即数。位立即数。rel:相对地址,以补码形式表示的地址偏移量,范围相对地址,以补码形式表示的地址偏移量,范围为为-128+127,主要用于无条件相对短转移指令,主要用于无条件相对短转移指令SJMP和所有的条件转移指令中。和所有的条件转移指令中。指令中常用的符号注释5/22/202410addr16:16位目的地址。目的地址可在全部程序存储器位目的地址。目的地址可在全部程序存储器的的64KB空间范围内,空间范围内,主要用于无条件长转移指令主要用于无条件长转移指令LJMP和子程序长调用指令和子程序长调用指令LCALL中。中。addr11:11位目的地址。目的地址应与下条指令处于相位目的地址。目的地址应与下条指令处于相同的同的2KB程序存储器地址空间范围内,主要用于绝对转程序存储器地址空间范围内,主要用于绝对转移指令移指令AJMP和子程序绝对调用指令和子程序绝对调用指令ACALL指令中。指令中。指令中常用的符号注释(续)指令中常用的符号注释(续)5/22/202411direct:表示直接寻址的地址,即表示直接寻址的地址,即8位内部数据存储器位内部数据存储器RAM的单元地址或特殊功能寄存器的单元地址或特殊功能寄存器SFR的地址。对于的地址。对于SFR可直接用其名称来代替。可直接用其名称来代替。bit:内部数据存储器内部数据存储器RAM的位寻址空间和特殊功能寄存的位寻址空间和特殊功能寄存器器SFR中的可位寻址空间。中的可位寻址空间。:间接寻址寄存器或基地址寄存器的前缀,如间接寻址寄存器或基地址寄存器的前缀,如Ri,DPTR,表示寄存器间接寻址。,表示寄存器间接寻址。指令中常用的符号注释(续)指令中常用的符号注释(续)5/22/202412(X):表示表示X中的内容。中的内容。(X):表示由(表示由(X)作地址去访问片内)作地址去访问片内RAM单元,单元,该片内该片内RAM单元的内容用(单元的内容用(X)表示。)表示。符号(符号(/):表示对该位操作数取反。表示对该位操作数取反。符号(符号():表示指令操作流程方向,表示指令操作流程方向,将箭头一方的内将箭头一方的内容,送入箭头另一方的单元中去。容,送入箭头另一方的单元中去。指令中常用的符号注释(续)5/22/2024133数据传送类指令数据传送类指令3-1以累加器以累加器A为一方的传送指令(单周期)为一方的传送指令(单周期)(1)MOVA,Rii=07,具体单元由具体单元由PSW的的RS0,RS1定定MOVRi,A(2)MOVA,Rj片内片内RAM(51系列系列Rj值为值为07F,52系列,系列,Rj为为0FF)MOV Rj,A的数据与的数据与A之间的传送之间的传送j=0、1(3)MOVA,direct访问片内访问片内RAM及及SFR;MOVdirect,Adirect为片内为片内RAM地址或地址或SFR名名注注意意:对对于于51,它它访访问问所所有有RAM(128字字节节)及及有有定定义义的的SFR共共21字节字节 对对于于52,它它只只访访问问128字字节节RAM(其其余余RAM有有(2)方方式式访问)及有定义的访问)及有定义的SFR(26字节)。字节)。5/22/2024143数据传送类指令数据传送类指令3-2不以累加器不以累加器A为一方传送指令(二周期)为一方传送指令(二周期)(1)MOVdirectRi访问片内访问片内RAM的低的低128字节及字节及SFRMOVRi,direct双字节指令,第双字节指令,第2字节为直接寻址的地址字节为直接寻址的地址(2)MOVdirect,Rj某片内某片内RAM单元(单元(0FF)内容送片内容送片内内RAM(128字节)或字节)或SFRMOV Rj,direct(3)MOVdirect,direct某某直直接接寻寻址址字字节节送送另另一一直直接接寻寻址址字字节节(128RAM及及SFR),),不可访问不可访问52系列的高系列的高128字节片内字节片内RAM5/22/2024153数据传送类指令数据传送类指令3-3用立即数置数的指令用立即数置数的指令(1)MOVA,#data双字节指令,第双字节指令,第2字节为立即数字节为立即数(2)MOVRi,#data双字节指令,第双字节指令,第2字节为立即数字节为立即数(3)MOV Rj,#data立即数送片内立即数送片内RAM双字节指令,第双字节指令,第2字节为立即数字节为立即数(4)MOVdirect,#data立即数送直接地址立即数送直接地址(片内(片内RAM07F或或SFR)三字节指令,第三字节指令,第2字节为直接地址,第字节为直接地址,第3字节为立即数字节为立即数(5)MOVDPTR,#data16位立即数送数据指针位立即数送数据指针唯一的一条唯一的一条16位数据传送指令,位数据传送指令,三字节指令三字节指令5/22/2024163数据传送类指令数据传送类指令3-4访问片外访问片外RAM(三周期)三周期)访问片外访问片外RAM,用,用MOVX指针指针(1)MOVXA,Rj访访问问片片外外0FF单单元元,8位位编编址址,单单字字节指令节指令MOVX Rj,A(2)MOVXA,DPTR访问片外访问片外0000FFFF单元,单元,16位位编址,单字节指令编址,单字节指令MOVX DPTR,A5/22/2024173数据传送类指令数据传送类指令3-5基址寄存器加变址寄存器间址指令(基址寄存器加变址寄存器间址指令(2周期)周期)(1)MOVCA,A+DPTR访问程序存贮器,单字节指令访问程序存贮器,单字节指令例例执行前执行前A=5DPTR=2000H在在2005H单元存放值为单元存放值为8,则,则执行后执行后A为为8(2)MOVCA,A+PC访问程序存贮器,单字节指令访问程序存贮器,单字节指令注注意意:若若当当前前单单字字节节为为2000地地址址,则则PC值值为为2001,因因为为执执行行此此指指令时,令时,PC已已+15/22/2024183数据传送类指令数据传送类指令3-6交换指令交换指令数据交换,互为源地址与目的地址(单周期)数据交换,互为源地址与目的地址(单周期)(1)XCHA,Ri单字节单字节(2)XCHA,Rj单字节单字节(3)XCHA,direct双字节,第双字节,第2字节为直接寻址字节为直接寻址(4)XCHDA,Rj单字节指令,单字节指令,交换低半字节交换低半字节(5)SWAPA单字节指令,单字节指令,交换交换A的高低半字节的高低半字节5/22/2024193数据传送类指令数据传送类指令3-7进栈出栈(进栈出栈(2周期)周期)(1)PUSHdirect双字节指令,第双字节指令,第2字节直接寻址字节直接寻址(SP)(SP)+1(SP)(direct)(2)POPdirect双字节指令,第双字节指令,第2字节为直接寻址字节为直接寻址(direct)(SP)(SP)(SP)-15/22/2024204算术操作类指令算术操作类指令INCDPTR为周期为周期MULAB为周期为周期DLVAB其余为单周期其余为单周期4-1加法指令加法指令(1)ADDA,Ri单字节指令单字节指令ADDCA,Ri进进位位进入最低位位位进入最低位(2)ADDA,R Rj j 单字节指令单字节指令ADDCA,R Rj j 访问片内访问片内RAMRAM(0 0FFFF)(3 3)ADD AADD A,direct direct 直接寻址字节与累加器相加,直接寻址字节与累加器相加,ADDC AADDC A,direct direct 双字节指令,第双字节指令,第2 2字节为直接寻址字节为直接寻址(4 4)ADD AADD A,#data#data 立即数与累加数相加立即数与累加数相加 ADDC AADDC A,#data#data 双字节指令,第双字节指令,第2 2字节为立即数字节为立即数5/22/2024214算术操作类指令算术操作类指令4-1加法指令加法指令说明:说明:*加法运算时,加法运算时,PSWPSW的影响的影响 相加后整个字节有溢出相加后整个字节有溢出 C C置位,否则置位,否则C C为为0 0 低半字节有溢出低半字节有溢出 ACAC置位,否则置位,否则ACAC为为0 0 最高位与次高位有一个进位,最高位与次高位有一个进位,OVOV置位,否则置位,否则OVOV为为0 0 *加加法法有有带带符符号号数数相相加加与与不不带带符符号号数数相相加加之之分分,但但机机器器本本身身是是做做统统一一处处理理,并并不不认认识识有有无无符符号号,也也不不接接受受负负数数输输入入(要要用用补码表示),运算结果要由人为判定。补码表示),运算结果要由人为判定。*OVOV为为1 1表表示示超超出出一一个个字字节节对对有有符符号号数数的的表表示示范范围围,-128-1281271275/22/2024224算术操作类指令算术操作类指令4-2 4-2 减法指令减法指令 均涉及进位位均涉及进位位(1 1)SUBB ASUBB A,R Ri i 单字节单字节 A-A-R Ri i-C-C(2 2)SUBB ASUBB A,R Rj j 单字节单字节 片内片内RAMRAM(3 3)SUBB ASUBB A,direct direct 双字节双字节 第第1 1字节为字节为95H95H,第二字节为直接地址第二字节为直接地址(4 4)SUBB ASUBB A,#data#data 双字节,第二字节为双字节,第二字节为datadata 5/22/2024234算术操作类指令算术操作类指令4-2 4-2 减法指令减法指令说明:说明:*减法运算影响减法运算影响PSWPSW 不够减(最高位有借位)不够减(最高位有借位)C=1C=1 低半字节不够减低半字节不够减AC=1C=1 最高位与次高位不同时借位(有一个)最高位与次高位不同时借位(有一个)OV=1 OV=1 否则为否则为0 0C OV C OV (+)-(+)(+)-(-)(-)-(+)(-)-(-)0 0 127-1=126 -1-1=-2 -1-(-128)=1270 0 127-1=126 -1-1=-2 -1-(-128)=1270 10 1 -128-127=1-128-127=11 0 1-127=-126 1-(-1)=2 -128-(-1)=-1271 0 1-127=-126 1-(-1)=2 -128-(-1)=-127 1 11 1 127-(-128)=-1127-(-128)=-15/22/2024244算术操作类指令算术操作类指令4-2 4-2 减法指令减法指令例:例:80H-81H80H-81H1000 0000 128-129 255 1000 0000 128-129 255 错误错误,无符号数,无符号数1000 0001 C=1 OV=0 1000 0001 C=1 OV=0 1111 1111 11111111 -128-128-(-127-127)-1 -1 正确,有符号数正确,有符号数注:无论加法运算,还是减法运算,均掌握规律。注:无论加法运算,还是减法运算,均掌握规律。l只只要要给给定定两两数数0000FFHFFH,运运算算后后其其结结果果是是定定的的,对对PSWPSW相相关关位位(C C、OVOV、ACAC等)的影响也是定的。等)的影响也是定的。l得得到到的的结结果果是是否否正正是是用用户户所所需需的的,要要看看操操作作数数的的其其正正意意义义,(比比如如FFHFFH可可能能代代表表-1-1,也也可可能能代代表表255255),该该结结果果可可能能有有效效,也也可能无效,可能当成有符号数,也可能当成无符号数。可能无效,可能当成有符号数,也可能当成无符号数。l用用户户按按照照你你输输入入的的操操作作数数的的具具体体意意图图及及PSWPSW的的相相关关位位来来判判断断结结果果的正确性。的正确性。5/22/2024254算术操作类指令算术操作类指令4-34-3加加1指令指令 (不影响标志位)(不影响标志位)(1 1)INC A INC A 单字节单字节(2 2)INC INC R Ri i 单字节单字节(3 3)INC INC R Rj j 单字节单字节(4 4)INC direct INC direct 双字节,第二字节为直接地址双字节,第二字节为直接地址(5 5)INC DPTR INC DPTR 单字节单字节 5/22/2024264算术操作类指令算术操作类指令4-44-4减减1指令指令 (不影响标志位)(不影响标志位)(1 1)DEC ADEC A(2 2)DEC RDEC R i i(3 3)DEC DEC R Rj j(4 4)DEC directDEC direct 5/22/2024274算术操作类指令算术操作类指令4-5 4-5 其它算术操作指令其它算术操作指令(1 1)DA A DA A 单字节,累加器内容十进制调整单字节,累加器内容十进制调整 机器操作是按机器操作是按2 2进制,如要作进制,如要作BCDBCD码运算,则需调整,例:码运算,则需调整,例:(3838)BCDBCD+(8989)BCDBCD 0011 1000 1100 0001 0011 1000 1100 0001 1000 1001 0110 0110 127 1000 1001 0110 0110 127 1100 0001 10010 0111 1100 0001 10010 0111 非法非法 AC=1AC=1lA A为为1或低四位非法,低或低四位非法,低4位位l为或高四位非法,高位为或高四位非法,高位l不会同时出现二者不会同时出现二者l调整过程运算结果,只影响,不影响、调整过程运算结果,只影响,不影响、5/22/2024284算术操作类指令算术操作类指令4-5 4-5 其它算术操作指令其它算术操作指令()()()()结高位低位()()结高位低位单字节周期指令单字节周期指令不影响不影响影响标志位:影响标志位:;若积大于若积大于,则为,否则为则为,否则为若为,可只取中结果若为,可只取中结果()()()()商余数()()商余数影响标志位:,影响标志位:,除数为时,为,否则为。除数为时,为,否则为。5/22/202429逻辑操作类命令逻辑操作类命令共条共条direct direct datadatadirect direct datadata为两个机器周期为两个机器周期direct direct datadata5-1 5-1 与指令与指令:用于修改某些单元的内容,用读修改写的方式用于修改某些单元的内容,用读修改写的方式控制位为时,使相关位清,为则保持不变。控制位为时,使相关位清,为则保持不变。共条共条ANLANL,i i 单单 ANL AANL A,#0FEH#0FEHANLANL,j j 单单ANL PSWANL PSW,#1110 0111B#1110 0111BANL AANL A,direct direct 双双ANL directANL direct,A A 双双 无法修改无法修改5252的高的高128128字节字节RAMRAMANL AANL A,#data#data 双双ANL directANL direct,#data#data 三三 5/22/202430逻辑操作类命令逻辑操作类命令5-2 5-2 或指令或指令 控制位为控制位为0 0,则保持不变,为,则保持不变,为1 1则是则是1 1ORL AORL A,R Ri i 单单ORL AORL A,R Rj j 单单ORL AORL A,direct direct 双双ORL directORL direct,A A 双双ORL AORL A,#data#data 双双ORL directORL direct,#data#data 三三例例 P P1 1端口前三位不变,后五位由端口前三位不变,后五位由A A的后的后5 5位决定位决定ANL AANL A,#0001 1111B A#0001 1111B A前三位为前三位为0 0,后,后5 5位不变位不变ORL PORL P1 1,A PA P1 1前三位不变,后前三位不变,后5 5位中根据位中根据A A,把该置把该置1 1的置位的置位ORL AORL A,#1110 0000 B A#1110 0000 B A前三位为前三位为1 1,后,后5 5位不变位不变ANL PANL P1 1,A PA P1 1前三位不变,后前三位不变,后5 5位中根据位中根据A A,把该置把该置0 0的清的清0 0 5/22/202431逻辑操作类命令逻辑操作类命令5-3 5-3 异或指令异或指令 控制位为控制位为1 1,使原相应位改变,使原相应位改变 控制位为控制位为0 0,使相应位不变,使相应位不变XRL AXRL A,R Ri i 单单XRL AXRL A,R Rj j 单单XRL AXRL A,direct direct 双双XRL directXRL direct,A A 双双XRL AXRL A,#data#data 双双XRL directXRL direct,#data#data 三三 第第2 2为直接地址,第为直接地址,第3 3字节为立即数字节为立即数 5/22/202432逻辑操作类命令逻辑操作类命令5-4 A5-4 A操作指令操作指令CPL A ACPL A A内容取反,单字节内容取反,单字节CLR A ACLR A A内容清内容清0 0,单字节,单字节RL A A RL A A 内容循环左移,单字节内容循环左移,单字节RR A ARR A A内容循环内容循环右右移,单字节移,单字节RLC A RLC A 带进位循环带进位循环 左移左移 单字节,单字节,C C进低位,高位进进低位,高位进C CRRC A RRC A 带进位循环带进位循环 右移右移 单字节,单字节,C C进高位,低位进进高位,低位进C C 5/22/2024336 6 程序转换类指令程序转换类指令共共1717条条NOP NOP 空操作,只延时,空操作,只延时,1 1个机器周期个机器周期其余均为其余均为2 2个机器周期个机器周期6-1 6-1 无条件转移无条件转移(1 1)AJMP addr11 AJMP addr11 (PCPC)(PCPC)+2 +2 双字节指令双字节指令 (PCPC10100 0)addraddr 11 11l转移发生在转移发生在PCPC当前值(当前值(PC+2PC+2后)所在的后)所在的2K2K范围内。范围内。l同样的指令,由同样的指令,由PCPC当前值不同,程序入口会不一样当前值不同,程序入口会不一样l在在2K2K内转移内转移例:例:AJMP 1111 1111 1111 BAJMP 1111 1111 1111 B执行后入口为执行后入口为 07FFH07FFH若上面指令在若上面指令在07FF07FF单元,则单元,则+2+2后为后为0801H0801H,入口变为入口变为08FFH08FFH单元单元 5/22/2024346 6 程序转换类指令程序转换类指令6-1 6-1 无条件转移无条件转移(2 2)LJMP LJMP addraddr 16 16 三三字字节节,第第2 2字字节节为为高高8 8位位,第第3 3字字节节为为低低8 8位位 (PCPC)(PCPC)+3+3 (PCPC)addraddr 16 16 在范围在范围64K64K内转移内转移(3 3)SJMP SJMP relrel 相对转移,相对转移,-128-128127127范围内范围内 (PCPC)(PCPC)+2 +2 双字节双字节 (PCPC)(PCPC)+相对地址相对地址 在在1 1页内转移,汇编编程时,页内转移,汇编编程时,relrel为地址标号为地址标号(4 4)JMP A+DPTR JMP A+DPTR 单字节单字节 (PCPC)(A A)+(DPTRDPTR)在在64K64K范围内转移范围内转移5/22/2024356 6 程序转换类指令程序转换类指令6-2 6-2 条件转移指令条件转移指令(1 1)JZ JZ relrel 双字节指令,在双字节指令,在1 1页内(页内(256256)转移,)转移,relrel为相对为相对地址,地址,A A累加器为累加器为0则转则转(2 2)JNZ JNZ relrel 同上,同上,A A不为不为0 0则转,双字节指令则转,双字节指令(3 3)CJNE ACJNE A,directdirect,relrel 三字节,第三字节,第2 2为直接地址,第为直接地址,第3 3字节为相对地址字节为相对地址 A A与与directdirect内容不等则转内容不等则转(4 4)CJNE ACJNE A,#data,#data,relrel三字节,三字节,A A与与#data#data不等则转不等则转(5 5)CJNE CJNE R Ri i,#data#data,relrel R Ri i(i=0i=07 7)与与#data#data不等则转,三个字节不等则转,三个字节(6 6)CJNE CJNE R Rj j,#data#data,relrel 三个字节,片三个字节,片内内RAMRAM内容同内容同#data#data比比较较(7 7)DJNZ DJNZ R Ri i,relrel 双字节双字节R Ri i(i=0=07 7),),内容先减内容先减1 1,再判断,不为,再判断,不为0 0则转则转(8 8)DJNZ directDJNZ direct,relrel 三字节三字节 (directdirect)-1 -1 不为不为0 0则转则转 5/22/2024366 6 程序转换类指令程序转换类指令6-2 6-2 条件转移指令条件转移指令例:例:MOV RMOV R0 0,#0AH#0AH LP LP:CPL PCPL P1 1。0 0 ;1个周期个周期 DJNZ RDJNZ R0 0,LP LP ;2 2个周期个周期 DONEDONE:每每3 3个机器周期个机器周期P P1 1。0 0反向一次,同时反向一次,同时R R0 0减减1 1,故结果为,故结果为假定假定P P1 1。0 0原为原为0 30 3个机器周期个机器周期出现出现5 5个周期方波个周期方波 5/22/2024376 6 程序转换类指令程序转换类指令 (PCPC)(PCPC)+2+26-36-3调子程序调子程序 (SPSP)(SPSP)+1+1(1 1)ACALL addr11 ACALL addr11 (SPSP)(PCPC7 70 0)双字节指令双字节指令 (SPSP)(SPSP)+1+1用在当前用在当前PCPC任何在的任何在的2K2K范围内范围内 (SPSP)(PCPC15158 8)(PCPC10100 0)addr11addr11(2 2)LCALL LCALL addr16 addr16 三三字字节节指指令令,执执行行同同前前面面类类似似,只只是是PCPC要要加加3 3,而更新,而更新PCPC是是addr16addr16,在在64K64K范围内调用子程序范围内调用子程序(3 3)RET RET 单字节单字节 (PCPC)(PCPC)+1+1 (PCPC15158 8)(SPSP)(SPSP)(SPSP)-1-1 (PCPC7 70 0)(SPSP)(SPSP)(SPSP)-1-1l在执行时在执行时PCPC仍要仍要+1+1,只不过由于要全部更新,故不强调,只不过由于要全部更新,故不强调lPCPC保留是先低后高字节,恢复是先高后低字节。保留是先低后高字节,恢复是先高后低字节。(4)RETIRETI 中断返回指令,功能与中断返回指令,功能与RETRET同同 只是先要恢复优先级触发器为只是先要恢复优先级触发器为0 0 5/22/2024387 7 位操作指令位操作指令MCS-51MCS-51单片机有位处理功能,适合于位处理、逻辑控制任务。单片机有位处理功能,适合于位处理、逻辑控制任务。位的表示方式:位的表示方式:位地址位地址 比如比如PSWPSW的最低位的最低位P P,可用可用D D0表示表示点方式点方式 PSW.0PSW.0位名称表示位名称表示 P P标号表示少用(后面讲,标号标号表示少用(后面讲,标号bit bit 位)位)7-1 7-1 位传送位传送 1 1 个机器周期个机器周期 bitbit代表寻址位代表寻址位(1 1)MOV MOV C,bitC,bit (例例 MOV C P0MOV C P0 ,P0P0的低位进标志位的低位进标志位C C)(2 2)MOV MOV bit,Cbit,C 例如例如 MOV 00HMOV 00H,C C 指指C C进入进入RAM20HRAM20H单元的低位单元的低位5/22/2024397 7 位操作指令位操作指令7-2 7-2 位逻辑操作位逻辑操作(1 1)CPL C CPL C 单字节单周期单字节单周期(2 2)CLR C CLR C 单字节单周期单字节单周期(3 3)SETB C SETB C 单字节单周期单字节单周期(4 4)CPL bit CPL bit 双字节双字节 单周期,第二字节为位地址单周期,第二字节为位地址(5)CLR bit CLR bit 双字节双字节 单周期,第二字节为位地址单周期,第二字节为位地址(6)SETB bitSETB bit双字节双字节 单周期,第二字节为位地址单周期,第二字节为位地址(7)ANL C,bitANL C,bit双字节双字节 单周期,第二字节为位地址单周期,第二字节为位地址(8)ORL CORL C,bitbit双字节双字节 单周期,第二字节为位地址单周期,第二字节为位地址(9)ANL C,/bit ANL C,/bit 双字节双字节 单周期,单周期,/bit/bit代表先取反代表先取反 (1010)ORL C,/bit ORL C,/bit 双字节双字节 单周期,再操作单周期,再操作5/22/2024407 7 位操作指令位操作指令7-3 7-3 位条件转移指令(二周期)位条件转移指令(二周期)(1 1)JC JC relrel 双字节,第二字节为相对地址(在双字节,第二字节为相对地址(在1 1页内转)页内转)(2 2)JNC JNC relrel 双字节,第二字节为相对地址(在双字节,第二字节为相对地址(在1 1页内转)页内转)(3 3)JB bit,JB bit,relrel 三字节,第三字节,第2 2为位地址,第为位地址,第3 3字节为相对地址字节为相对地址(4 4)JNB bitJNB bit,relrel 三字节,不为三字节,不为1 1转转(5 5)JBC bitJBC bit,relrel 三字节,同上三字节,同上 位为位为1 1转,同时清除该位至转,同时清除该位至0 0 与与JB bitJB bit,relrel 比多一个清除操作比多一个清除操作 例例:CJNE R CJNE R0 0,#100#100,NEQU NEQU 比较,并影响标志位比较,并影响标志位相等,相等,R R0 0=100=100NEQUNEQU:JC LESSJC LESS R R0 0100100 LESS LESS:R R0 0100 100 5/22/2024418 8 汇程序格式及伪指令汇程序格式及伪指令8-18-1格式格式 标号:操作码,操作数;注释标号:操作码,操作数;注释(1 1)标号,)标号,1 16 6个字符,第个字符,第1 1个必为英文字母个必为英文字母 不必都加,但在转移时有用不必都加,但在转移时有用标号实际就是符号地址标号实际就是符号地址(2 2)操作码:即指令助记符)操作码:即指令助记符(3 3)操作数:多个应分开,用)操作数:多个应分开,用“,”(4 4)注释:)注释:用;隔开,汇编时忽略用;隔开,汇编时忽略 5/22/2024428 8 汇程序格式及伪指令汇程序格式及伪指令8-2 8-2 伪指令伪指令计算机不执行真正操作,没有机器码,不产生目标程序计算机不执行真正操作,没有机器码,不产生目标程序(1 1)ORG 16ORG 16位地址位地址说明紧随其后的程序段存放的起始地址。说明紧随其后的程序段存放的起始地址。(2 2)ENDEND END END 标号标号 表示程序结束表示程序结束(3 3)标号:)标号:DBDB字节或用字节或用,分开的字节串分开的字节串从标号的符号地址依次存入后面的字节从标号的符号地址依次存入后面的字节(4)标号:字或用)标号:字或用,分开的字串分开的字串同同上上,只只是是存存放放时时高高字字节节在在前前(小小地地址址),低低字字节节在在后后(大地址)(大地址)特特别别提提醒醒:在在调调用用子子程程序序时时间间,放放入入堆堆栈栈的的断断点点地地址址是是低低字字节节是是小小地地址址(即即先先放放低低字字节节),高高字字节节是是大大地地址址(即(即后放高字节后放高字节),),(5)标号:)标号:数字,保留存贮单元数字,保留存贮单元 从标号处保留从标号处保留“数字数字”个字节个字节(6)标号)标号bitbit位地址位地址bit Fbit F则则以后可由以后可由代替代替5/22/202443应用举例应用举例()多字节无符号数相加()多字节无符号数相加内部,内部,从低到高放有字节数从低到高放有字节数从低到高放有字节数从低到高放有字节数两数相加后放回被加数单元两数相加后放回被加数单元,;置被加数首地址;置被加数首地址,;置加数首地址,;置加数首地址,;字节数,;字节数L;第一次相加,无进位位;第一次相加,无进位位:,:,;取相加数相应字节;取相加数相应字节 ,;带进位加上加数相应字节;带进位加上加数相应字节,;结果放入被加数所在位置,;结果放入被加数所在位置;取下一字节被加数;取下一字节被加数 ;取下一字节加数;取下一字节加数,;设加完,则继续相加,;设加完,则继续相加 5/22/202444应用举例应用举例()()、存放码存放码存放中间码,设四个存放中间码,设四个码相加后仍无溢出,为位码码相加后仍无溢出,为位码,30H,:,5/22/202445
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!