单片机指令代码.docx_第1页
单片机指令代码.docx_第2页
单片机指令代码.docx_第3页
单片机指令代码.docx_第4页
单片机指令代码.docx_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据传送类指令助记符功能说明字节数振荡周期 MOVA,Rn寄存器内容送入累加器112MOVA,direct直接地址单元中的数据送入累加器212MOVA,Ri间接RAM中的数据送入累加器112MOVA,#data88位立即数送入累加器212MOVRn,A累加器内容送入寄存器112MOVRn,direct直接地址单元中的数据送入寄存器224MOVRn,#data88位立即数送入寄存器212MOVdirect,A累加器内容送入直接地址单元212MOVdirect,Rn寄存器内容送入直接地址单元224MOVdirect,direct直接地址单元中的数据送入直接地址单元324MOVdirect,Ri间接RAM中的数据送入直接地址单元224MOVdirect,#data88位立即数送入直接地址单元324MOVRi,A累加器内容送入间接RAM单元112MOVRi,direct直接地址单元中的数据送入间接RAM单元224MOVRi,#data88位立即数送入间接RAM单元212MOVDPTR,#data1616位立即数地址送入地址寄存器324MOVCA,A+DPTR以DPTR为基地址变址寻址单元中的数据送入累加器124MOVCA,A+PC以PC为基地址变址寻址单元中的数据送入累加器124MOVXA,Ri外部RAM(8位地址)送入累加器124MOVXA,DPTR外部RAM(16位地址)送入累加器124MOVXRi,A累加器送入外部RAM(8位地址)124MOVXDPTR,A累加器送入外部RAM(16位地址)124PUSHdirect直接地址单元中的数据压入堆栈224POPDIRECT堆栈中的数据弹出到直接地址单元224XCHA,Rn寄存器与累加器交换112XCHA,direct直接地址单元与累加器交换212XCHA,Ri间接RAM与累加器交换112XCHDA,Ri间接RAM与累加器进行低半字节交换1122、算术操作类指令助记符功能说明字节数振荡周期ADDA,Rn寄存器内容加到累加器112ADDA,direct直接地址单元加到累加器212ADDA,Ri间接RAM内容加到累加器112ADDA,#data88位立即数加到累加器212ADDCA,Rn寄存器内容带进位加到累加器112ADDCA,dirct直接地址单元带进位加到累加器212ADDCA,Ri间接RAM内容带进位加到累加器112ADDCA,#data88位立即数带进位加到累加器212SUBBA,Rn累加器带借位减寄存器内容112SUBBA,dirct累加器带借位减直接地址单元212SUBBA,Ri累加器带借位减间接RAM内容112SUBBA,#data8累加器带借位减8位立即数212INCA累加器加1112INCRn寄存器加1112INCdirect直接地址单元内容加1212INCRi间接RAM内容加1112INCDPTRDPTR加1124DECA累加器减1112DECRn寄存器减1112DECdirect直接地址单元内容减1212DECRi间接RAM内容减1112MULA,BA乘以B148DIVA,BA除以B148DAA累加器进行十进制转换1123、逻辑操作类指令助记符功能说明字节数振荡周期ANLA,Rn累加器与寄存器相“与”112ANLA,direct累加器与直接地址单元相“与”212ANLA,Ri累加器与间接RAM内容相“与”112ANLA,#data8累加器与8位立即数相“与”212ANLdirect,A直接地址单元与累加器相“与”212ANLdirect,#data8直接地址单元与8位立即数相“与”324ORLA,Rn累加器与寄存器相“或”112ORLA,direct累加器与直接地址单元相“或”212ORLA,Ri累加器与间接RAM内容相“或”112ORLA,#data8累加器与8位立即数相“或”212ORLdirect,A直接地址单元与累加器相“或”212ORLdirect,#data8直接地址单元与8位立即数相“或”324XRLA,Rn累加器与寄存器相“异或”112XRLA,direct累加器与直接地址单元相“异或”212XRLA,Ri累加器与间接RAM内容相“异或”112XRLA,#data8累加器与8位立即数相“异或”212XRLdirect,A直接地址单元与累加器相“异或”212XRLdirect,#data8直接地址单元与8位立即数相“异或”324CLRA累加器清0112CPLA累加器求反112RLA累加器循环左移112RLCA累加器带进位循环左移112RRA累加器循环右移112RRCA累加器带进位循环右移112SWAPA累加器半字节交换1124、控制转移类指令 助记符功能说明字节数振荡周期ACALLaddr11绝对短调用子程序224LACLLaddr16长调用子程序324RET子程序返回124RETI中断返回124AJMPaddr11绝对短转移224LJMPaddr16长转移324SJMPrel相对转移224JMPA+DPTR相对于DPTR的间接转移124JZrel累加器为零转移224JNZrel累加器非零转移224CJNEA,direct,rel累加器与直接地址单元比较,不等则转移324CJNEA,#data8,rel累加器与8位立即数比较,不等则转移324CJNERn,#data8,rel寄存器与8位立即数比较,不等则转移324(相等则执行本指令的下一条)CJNERi,#data8,rel间接RAM单元,不等则转移324(但有时还想得知两数比较之后哪个大,哪个小,本条指令也具有这样的功能,如果两数不相等,则CPU还会反映出哪个数大,哪个数小,这是用CY(进位标志位)来实现的。如果左边的数(A,Rn,Ri)大或者等于右边的数(direct,#date8),则CY=0;否则CY=1)DJNZRn,rel寄存器减1,非零转移324DJNZdirect,rel直接地址单元减1,非零转移324NOP空操作112控制转移指令共有17条,可分为“无条件转移指令” “有条件转移指令” “子程序调用指令” 及 “返回指令”。5、布尔变量操作类指令助记符功能说明字节数振荡周期CLRC清进位位112CLRbit清直接地址位212SETBC置进位位112SETBbit置直接地址位212CPLC进位位求反112CPLbit直接地址位求反212ANLC,bit进位位和直接地址位相“与”224ANLC,/bit进位位和直接地址位的反码相“与”224ORLC,bit进位位和直接地址位相“或”224ORLC,/bit进位位和直接地址位的反码相“或”224MOVC,bit直接地址位送入进位位212MOVbit,C进位位送入直接地址位224JCrel进位位为1则转移(CY=O不转移,=1转移)224JNCrel进位位为0则转移(和上面相反)224JBbit,rel直接地址位为1则转移324JNBbit,rel直接地址位为0则转移324JBCbit,rel直接地址位为1则转移,该位清零324 MCS-51单片机的指令集1、数据传送类指令助记符功能说明字节数振荡周期 MOVA,Rn寄存器内容送入累加器112MOVA,direct直接地址单元中的数据送入累加器212MOVA,Ri间接RAM中的数据送入累加器112MOVA,#data88位立即数送入累加器212MOVRn,A累加器内容送入寄存器112MOVRn,direct直接地址单元中的数据送入寄存器224MOVRn,#data88位立即数送入寄存器212MOVdirect,A累加器内容送入直接地址单元212MOVdirect,Rn寄存器内容送入直接地址单元224MOVdirect,direct直接地址单元中的数据送入直接地址单元324MOVdirect,Ri间接RAM中的数据送入直接地址单元224MOVdirect,#data88位立即数送入直接地址单元324MOVRi,A累加器内容送入间接RAM单元112MOVRi,direct直接地址单元中的数据送入间接RAM单元224MOVRi,#data88位立即数送入间接RAM单元212MOVDPTR,#data1616位立即数地址送入地址寄存器324MOVCA,A+DPTR以DPTR为基地址变址寻址单元中的数据送入累加器124MOVCA,A+PC以PC为基地址变址寻址单元中的数据送入累加器124MOVXA,Ri外部RAM(8位地址)送入累加器124MOVXA,DPTR外部RAM(16位地址)送入累加器124MOVXRi,A累加器送入外部RAM(8位地址)124MOVXDPTR,A累加器送入外部RAM(16位地址)124PUSHdirect直接地址单元中的数据压入堆栈224POPDIRECT堆栈中的数据弹出到直接地址单元224XCHA,Rn寄存器与累加器交换112XCHA,direct直接地址单元与累加器交换212XCHA,Ri间接RAM与累加器交换112XCHDA,Ri间接RAM与累加器进行低半字节交换1122、算术操作类指令助记符功能说明字节数振荡周期ADDA,Rn寄存器内容加到累加器112ADDA,direct直接地址单元加到累加器212ADDA,Ri间接RAM内容加到累加器112ADDA,#data88位立即数加到累加器212ADDCA,Rn寄存器内容带进位加到累加器112ADDCA,dirct直接地址单元带进位加到累加器212ADDCA,Ri间接RAM内容带进位加到累加器112ADDCA,#data88位立即数带进位加到累加器212SUBBA,Rn累加器带借位减寄存器内容112SUBBA,dirct累加器带借位减直接地址单元212SUBBA,Ri累加器带借位减间接RAM内容112SUBBA,#data8累加器带借位减8位立即数212INCA累加器加1112INCRn寄存器加1112INCdirect直接地址单元内容加1212INCRi间接RAM内容加1112INCDPTRDPTR加1124DECA累加器减1112DECRn寄存器减1112DECdirect直接地址单元内容减1212DECRi间接RAM内容减1112MULA,BA乘以B148DIVA,BA除以B148DAA累加器进行十进制转换1123、逻辑操作类指令助记符功能说明字节数振荡周期ANLA,Rn累加器与寄存器相“与”112ANLA,direct累加器与直接地址单元相“与”212ANLA,Ri累加器与间接RAM内容相“与”112ANLA,#data8累加器与8位立即数相“与”212ANLdirect,A直接地址单元与累加器相“与”212ANLdirect,#data8直接地址单元与8位立即数相“与”324ORLA,Rn累加器与寄存器相“或”112ORLA,direct累加器与直接地址单元相“或”212ORLA,Ri累加器与间接RAM内容相“或”112ORLA,#data8累加器与8位立即数相“或”212ORLdirect,A直接地址单元与累加器相“或”212ORLdirect,#data8直接地址单元与8位立即数相“或”324XRLA,Rn累加器与寄存器相“异或”112XRLA,direct累加器与直接地址单元相“异或”212XRLA,Ri累加器与间接RAM内容相“异或”112XRLA,#data8累加器与8位立即数相“异或”212XRLdirect,A直接地址单元与累加器相“异或”212XRLdirect,#data8直接地址单元与8位立即数相“异或”324CLRA累加器清0112CPLA累加器求反112RLA累加器循环左移112RLCA累加器带进位循环左移112RRA累加器循环右移112RRCA累加器带进位循环右移112SWAPA累加器半字节交换1124、控制转移类指令 助记符功能说明字节数振荡周期ACALLaddr11绝对短调用子程序224LACLLaddr16长调用子程序324RET子程序返回124RETI中断返回124AJMPaddr11绝对短转移224LJMPaddr16长转移324SJMPrel相对转移224JMPA+DPTR相对于DPTR的间接转移124JZrel累加器为零转移224JNZrel累加器非零转移224CJNEA,direct,rel累加器与直接地址单元比较,不等则转移324CJNEA,#data8,rel累加器与8位立即数比较,不等则转移324CJNERn,#data8,rel寄存器与8位立即数比较,不等则转移324(相等则执行本指令的下一条)CJNERi,#data8,rel间接RAM单元,不等则转移324(但有时还想得知两数比较之后哪个大,哪个小,本条指令也具有这样的功能,如果两数不相等,则CPU还会反映出哪个数大,哪个数小,这是用CY(进位标志位)来实现的。如果左边的数(A,Rn,Ri)大或者等于右边的数(direct,#date8),则CY=0;否则CY=1)DJNZRn,rel寄存器减1,非零转移324DJNZdirect,rel直接地址单元减1,非零转移324NOP空操作112控制转移指令共有17条,可分为“无条件转移指令” “有条件转移指令” “子程序调用指令” 及 “返回指令”。5、布尔变量操作类

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论