当前位置:系统粉 > 电脑问答 > 其他问答 > 51单片机多少位谁能告诉我

51单片机多少位谁能告诉我

提问者:empress婴宁  |  浏览 次  |  提问时间:2016-12-27  |  回答数量:3

51单片机多少位谁能告诉我MCS-51单片机的指令集1、数据传送类指令助记符 功能说明 字节数 振荡周期 MOVA,Rn 寄存器内容送入累加器 1 12MOVA,direct 直接地址单元中的数据送入累加器...

已有3条答案
微欣婧

微欣婧

回答数:40234  |  被采纳数:156

2016-12-29 07:55:04
MCS-51单片机的指令集
1、数据传送类指令
助记符 功能说明 字节数 振荡周期
MOVA,Rn 寄存器内容送入累加器 1 12
MOVA,direct 直接地址单元中的数据送入累加器 2 12
MOVA,@Ri 间接RAM中的数据送入累加器 1 12
MOVA,#data8 8位立即数送入累加器 2 12
MOVRn,A 累加器内容送入寄存器 1 12
MOVRn,direct 直接地址单元中的数据送入寄存器 2 24
MOVRn,#data8 8位立即数送入寄存器 2 12
MOVdirect,A 累加器内容送入直接地址单元 2 12
MOVdirect,Rn 寄存器内容送入直接地址单元 2 24
MOVdirect,direct 直接地址单元中的数据送入直接地址单元 3 24
MOVdirect,@Ri 间接RAM中的数据送入直接地址单元 2 24
MOVdirect,#data8 8位立即数送入直接地址单元 3 24
MOV@Ri,A 累加器内容送入间接RAM单元 1 12
MOV@Ri,direct 直接地址单元中的数据送入间接RAM单元 2 24
MOV@Ri,#data8 8位立即数送入间接RAM单元 2 12
MOVDPTR,#data16 16位立即数地址送入地址寄存器 3 24

MOVCA,@A+DPTR 以DPTR为基地址变址寻址单元中的数据送入累加器1 24
MOVCA,@A+PC 以PC为基地址变址寻址单元中的数据送入累加器1 24

MOVXA,@Ri 外部RAM(8位地址)送入累加器 1 24
MOVXA,@DPTR 外部RAM(16位地址)送入累加器 1 24
MOVX@Ri,A 累加器送入外部RAM(8位地址) 1 24
MOVX@DPTR,A 累加器送入外部RAM(16位地址) 1 24

PUSHdirect 直接地址单元中的数据压入堆栈 2 24
POPDIRECT 堆栈中的数据弹出到直接地址单元 2 24

XCHA,Rn 寄存器与累加器交换 1 12
XCHA,direct 直接地址单元与累加器交换 2 12
XCHA,@Ri 间接RAM与累加器交换 1 12
XCHDA,@Ri 间接RAM与累加器进行低半字节交换 1 12

2、算术操作类指令
助记符 功能说明 字节数 振荡周期
ADDA,Rn 寄存器内容加到累加器 1 12
ADDA,direct 直接地址单元加到累加器 2 12
ADDA,@Ri 间接RAM内容加到累加器 1 12
ADDA,#data8 8位立即数加到累加器 2 12

ADDCA,Rn 寄存器内容带进位加到累加器 1 12
ADDCA,dirct 直接地址单元带进位加到累加器 2 12
ADDCA,@Ri 间接RAM内容带进位加到累加器 1 12
ADDCA,#data8 8位立即数带进位加到累加器 2 12

SUBBA,Rn 累加器带借位减寄存器内容 1 12
SUBBA,dirct 累加器带借位减直接地址单元 2 12
SUBBA,@Ri 累加器带借位减间接RAM内容 1 12
SUBBA,#data8 累加器带借位减8位立即数 2 12

INCA 累加器加1 1 12
INCRn 寄存器加1 1 12
INCdirect 直接地址单元内容加1 2 12
INC@Ri 间接RAM内容加1 1 12
INCDPTR DPTR加1 1 24

DECA 累加器减1 1 12
DECRn 寄存器减1 1 12
DECdirect 直接地址单元内容减1 2 12
DEC@Ri 间接RAM内容减1 1 12

MULA,B A乘以B 1 48
DIVA,B A除以B 1 48
DAA 累加器进行十进制转换 1 12

3、逻辑操作类指令
助记符 功能说明 字节数 振荡周期
ANLA,Rn 累加器与寄存器相“与” 1 12
ANLA,direct 累加器与直接地址单元相“与” 2 12
ANLA,@Ri 累加器与间接RAM内容相“与” 1 12
ANLA,#data8 累加器与8位立即数相“与” 2 12
ANLdirect,A 直接地址单元与累加器相“与” 2 12
ANLdirect,#data8 直接地址单元与8位立即数相“与” 3 24

ORLA,Rn 累加器与寄存器相“或” 1 12
ORLA,direct 累加器与直接地址单元相“或” 2 12
ORLA,@Ri 累加器与间接RAM内容相“或” 1 12
ORLA,#data8 累加器与8位立即数相“或” 2 12
ORLdirect,A 直接地址单元与累加器相“或” 2 12
ORLdirect,#data8 直接地址单元与8位立即数相“或” 3 24

XRLA,Rn 累加器与寄存器相“异或” 1 12
XRLA,direct 累加器与直接地址单元相“异或” 2 12
XRLA,@Ri 累加器与间接RAM内容相“异或” 1 12
XRLA,#data8 累加器与8位立即数相“异或” 2 12
XRLdirect,A 直接地址单元与累加器相“异或” 2 12
XRLdirect,#data8 直接地址单元与8位立即数相“异或” 3 24

CLRA 累加器清0 1 12
CPLA 累加器求反 1 12
RLA 累加器循环左移 1 12
RLCA 累加器带进位循环左移 1 12
RRA 累加器循环右移 1 12
RRCA 累加器带进位循环右移 1 12
SWAPA 累加器半字节交换 1 12

4、控制转移类指令
助记符 功能说明 字节数 振荡周期
ACALLaddr11 绝对短调用子程序 2 24
LACLLaddr16 长调用子程序 3 24
RET 子程序返回 1 24
RETI 中断返回 1 24
AJMPaddr11 绝对短转移 2 24
LJMPaddr16 长转移 3 24
SJMPrel 相对转移 2 24
JMP@A+DPTR 相对于DPTR的间接转移 1 24
JZrel 累加器为零转移 2 24
JNZrel 累加器非零转移 2 24
CJNEA,direct,rel 累加器与直接地址单元比较,不等则转移 3 24
CJNEA,#data8,rel 累加器与8位立即数比较,不等则转移 3 24
CJNERn,#data8,rel 寄存器与8位立即数比较,不等则转移 3 24
(相等则执行本指令的下一条)

CJNE@Ri,#data8,rel 间接RAM单元,不等则转移 3 24
(但有时还想得知两数比较之后哪个大,哪个小,
本条指令也具有这样的功能,如果两数不相等,
则CPU还会反映出哪个数大,哪个数小,
这是用CY(进位标志位)来实现的。
如果左边的数(A,Rn,@Ri)大或者等于右边的数(direct,#date8),则CY=0;否则CY=1)

DJNZRn,rel 寄存器减1,非零转移 3 24
DJNZdirect,rel 直接地址单元减1,非零转移 3 24
NOP 空操作 1 12

控制转移指令共有17条,可分为“无条件转移指令” “有条件转移指令” “子程序调用指令” 及 “返回指令”。

5、布尔变量操作类指令
助记符 功能说明 字节数 振荡周期
CLRC 清进位位 1 12
CLRbit 清直接地址位 2 12
SETBC 置进位位 1 12
SETBbit 置直接地址位 2 12
CPLC 进位位求反 1 12
CPLbit 直接地址位求反 2 12
ANLC,bit 进位位和直接地址位相“与” 2 24
ANLC,/bit 进位位和直接地址位的反码相“与” 2 24
ORLC,bit 进位位和直接地址位相“或” 2 24
ORLC,/bit 进位位和直接地址位的反码相“或” 2 24
MOVC,bit 直接地址位送入进位位 2 12
MOVbit,C 进位位送入直接地址位 2 24
JCrel 进位位为1则转移(CY=O不转移,=1转移) 2 24
JNCrel 进位位为0则转移(和上面相反) 2 24
JBbit,rel 直接地址位为1则转移 3 24
JNBbit,rel 直接地址位为0则转移 3 24
JBCbit,rel 直接地址位为1则转移,该位清零 3 24

伪指令
助记符 功能说明
ORG 设置程序起始地址
END 标志源代码结束
EQU 定义常数
SET 定义整型数
DATA 给字节类型符号定值
BYTE 给字节类型符号定值
WROD 给字类型符号定值
BIT 给位地址取名
ALTNAME 用自定义名取代保留字
DB 给一块连续的存储区装载字节型数据
DW 给一块连续的存储区装载字型数据
DS 预留一个连续的存储区或装入指定字节。
INCLUDE 将一个源文件插入程序中
TITLE 列表文件中加入标题行
NOLIST 汇编时不产生列表文件
NOCODE 条件汇编时,条件为假的不产生清单
赞 4023
l丿首首

l丿首首

回答数:47647  |  被采纳数:11

2016-12-28 18:25:25
51单片机,179.00元,采用方便易学设计理念,各功能模块完全独立,互不干扰,模块之间用排线快速连接。一方面可以锻炼动手能力,同时可加强初学者对实验板硬件的认识,熟悉电路,快速入门,价格来源网络,仅供参考。
赞 4764
wang5421488

wang5421488

回答数:41696  |  被采纳数:9

2016-12-28 18:44:05
51单片机多少位
增强型的如C8051F就有16Bit的价格是177元;一般是8位的,但有很多机型的很多模块/寄存器,如定时器、ADC精度等都要高于8BitMCS-51内核单片机是8位单片机,CISC指令集。mcs-51单片机的累加器a的长度为8位,以上价格来源于网络,仅供参考,具体价格以购买时为准
赞 4169
解决方法
  • win8看多少位的的步骤 win8如何看多少位的,win8系统是多少位的

    win8看多少位的的步骤 win8如何看多少位的,win8系统是多少位的

    今天给大家带来win8看多少位的的步骤,win8如何看多少位的,win8系统是多少位的,让您轻松解决问题。win8怎么看多少位的,win8系统是多少位的具体方法如下:1打开你的电脑...

  • 一张图告诉你,微软小冰有多智能

    一张图告诉你,微软小冰有多智能

    先来尊看着心情愉悦的图!这张图 是空间里看到老弟发的,看着很舒服,然后就保存了下来!下面看看小冰的识图能力!这一点无意发现的,当时很惊叹,每每拍个照 都会发给它 基本都能识别出来!...

  • 告诉你谁才是科技界的老流氓——微软~

    告诉你谁才是科技界的老流氓——微软~

    前几天微软有个发布会,不知道各位差友有没有去看......没看也没有关系,反正都是在怼苹果笔记本。简而言之,就是微软发布了一款笔记本叫做 Surface Laptop,而且是专门针...

  • 如何查看win7是多少位的 查看win7多少位的方法

    如何查看win7是多少位的 查看win7多少位的方法

    今天给大家带来如何查看win7是多少位的,查看win7多少位的方法,让您轻松解决问题。怎么查看window7是多少位的?具体方法如下:1打开电脑点击左下角的开始!2进入开始后找到技...

版权信息

Copyright @ 2011 系统粉 版权声明 最新发布内容 网站导航