单片机指令说多也不多,但也不少,学习指令集不是用于编程,而是在于后期复杂项目中,系统所表现的现象与实际程序不符时,用于查验,所以指令集,只是了解即可,要有此概念,用时再去查找手册即可,小编在此提及的指令,当然不如手册来的精细,所以对指令集感兴趣的同学,建议去看手册.

该章讲完之后,就不在讲指令集了.

指令集就相当于告一段落,在此贴出的目的是用于方便同学们查找.

按功能分:

(1) 数据传送类指令

(2) 算数操作类指令

(3) 逻辑操作类指令

(4) 控制转移类指令

(5) 布尔变量操作类指令

具体用法如下:

MOV 将数传送至累加器/寄存器/地址单元/RAM单元等

MOVC A, @A+DPTR 以DPTR为基址,变址寻址单元中的数据送入累加器

MOVC A, @A+PC 以PC为基址,变址寻址单元中的数据送入累加器

MOVX @Ri, A 累加器送逻辑上外部的片内扩展RAM(8位寻址)

MOVX @DPTR, A 累加器送逻辑上外部的片内扩展RAM(16为寻址)

PUSH direct 直接地址单元压入堆栈

POP direct 出栈送数据到地址单元

XCH A, Rn 寄存器与累加器交换

XCH A, direct 地址单元与累加器交换

XCH A, @Ri 间接RAM与累加器交换

XCHD A, @Ri 间接RAM的低半字节与累加器交换

ADD A, Rn 寄存器内容送入累加器

ADDC A, Rn 带进位寄存器内容送入累加器

SUBB A, Rn 累加器带借位减寄存器内容

INC A 累加器加1

INC Rn 寄存器加1

DEC A 累加器减1

DEC Rn 寄存器减1

MUL AB A乘以B

DIV AB A除以B(A/B)

DA A 累加器十进制调整

ANL A, Rn 累加器与寄存器"与"

ORL A, Rn 累加器与寄存器"或"

XRL A, Rn 累加器与寄存器"异或"

CLR A 累加器清"0"

CPL A 累加器"求反"

RL A 累加器循环左移

RLC A 累加器带进位位循环左移

RR A 累加器循环右移

RRC A 累加器带进位位循环右移

SWAP A 累加器半字节交换

ACALL addr11 绝对(短)调用子程序

LCALL addr16 长调用子程序

RET 子程序返回

RETI 中断返回

AJMP addr11 绝对(短)转移

LJMP addr16 长转移

SJMP re1 相对转移

JMP @A+DPTR 相对于DPTR的间接转移

JZ re1 累加器为零转移

JNZ re1 累加器非零转移

CJNE A, direct, re1 累加器与直接地址单元比较,不相等则转移

DJNZ Rn, re1 寄存器减1,非零转移

NOP 空操作

CLR C 清零进位位

CLR bit 清零直接地址位

SETB C 置1进位位

SETB bit 置1直接地址位

CPL C 进位位求反

CPL bit 直接地址位求反

ANL C, bit 进位位与直接地址位相"与"

ANL C, /bit 进位位与直接地址位反码相"与"

ORL C, bit 进位位与直接地址位相"或"

JC rel 进位位为1则转移

JNC rel 进位位为0则转移

JB bit, rel 直接地址位为1则转移

JNB bit, rel 直接地址位为0则转移

JBC bit, rel 直接地址位为1则转移,该位清0

以上应该是大部分指令的用法了,可以用于任何寄存器的操作.

工作繁忙,出一篇文章实属不易,望带着宽容的眼光看问题.

单片机c指令右移指令_单片机「5」51单片机指令集(2)相关推荐

  1. 51单片机50个实例代码_【附代码】51单片机电子密码锁教程

    简介 大家好,这篇文章的内容是关于如何用51单片机来制作一个电子密码锁的教程,通过这篇教程可以让刚入门的朋友了解矩阵键盘.LCD1602的使用方法,以及密码输入和修改的程序介绍,我会对每个部分进行详细 ...

  2. 51单片机控制的LOVE心形创意彩灯 PROTEUS 和51单片机教程(附仿真文件+源代码)

    51单片机控制的LOVE心形创意彩灯 PROTEUS 和51单片机教程附仿真文件截图 单片机控制的LOVE心形创意彩灯 参考源代码 ORG 0000H LJMP START ORG 0030H ;初始 ...

  3. 单面机51小车程序_车辆工程学院举行“51单片机智能小车”电子设计成果答辩展示...

    用理论指导实践,以实践检验理论.6月28日,车辆工程学院在汽车科技馆二楼举行了"51单片机智能小车"电子设计成果展示,旨在加强学生学以致用能力,提升学生实践创新水平.2017级教改 ...

  4. 单片机上运行linux程序代码,在Linux下烧录51单片机

    原标题:在Linux下烧录51单片机 *本文作者:LEdge1,本文属 FreeBuf原创奖励计划,未经许可禁止转载. 背景 我一直在学习Linux 系统,但是最近还要学习51单片机,所以在Linux ...

  5. 单片机数字定时闹钟设计c语言,电子设计 基于51单片机的定时闹钟设计.doc

    电子设计 基于51单片机的定时闹钟设计 课件之家精心整理资料--欢迎你的欣赏 课件之家精心整理资料--欢迎你的欣赏 摘 要 单片计体积小.能耗低.成本低.功能强,广泛应用于智能产品和工业自动化上.本次 ...

  6. 51单片机八人抢答器c语言,抢答器 - 基于51单片机 - 8人有程序较完整.doc

    抢答器 - 基于51单片机 - 8人有程序较完整 课程题目: 基于单片机---8路抢答器 学 院: 职业技术学院 专 业: 电子信息科学与技术 年 级: 091 学 号: 0920020088 学生姓 ...

  7. 高德推出查岗功能_新型「查岗」工具?高德推出「家人地图」新功能

    苹果为 iPhone.iPad.iPod touch 内置了「查找」app,通过这个应用用户不仅可以快速定位不同设备,还可以与家人和朋友共享位置.此外,iOS 原生地图应用也支持「共享到达时间」,方便 ...

  8. 点线面的意义_聊聊「点线面」的概念

    在阿里做业务,免不了经常会听到「点面线」之类的说辞,这篇短文就和大家聊一聊:我是怎么理解这一系列概念的含义,以及用这种「模式」去解构一些事物.「点线面」本身是用来表示空间维度的基础模型,那么通过这样的 ...

  9. 机器人笔记psv中文_游戏「机器人笔记」、「月英学园」将登陆PSV平台

    "科学ADV系列"第三弹「机器人笔记」将发售PSV版,将于今年冬季发售.声优杉田智和原作游戏「月英学园」的PSV版将于10月10日发售,名为「月英学园-kou-」. 5pb.与Ni ...

  10. 单片机c语言右移指令,单片机C语言左移和右移漫谈

    #define uchar unsigned char #define uint unsigned int void main(void) { uchar a; a=0x01; a=a<< ...

最新文章

  1. 函数对象、 函数对象与容器、函数对象与算法
  2. Mysql 都会遭受哪些方面的攻击?
  3. python一千行入门代码-Python 有哪些一千行左右的经典练手项目?
  4. 【MS Word技巧】word如何批量把括号内字体变绿?
  5. mysql 1130 localhost_解决1130 Host 'localhost' is not allowed to connect to this MySQL server
  6. 软考高级网络规划设计师论文考试技巧
  7. 常用基础Linux操作命令总结与hadoop基础操作命令
  8. java 及时编译_Java 面试-即时编译( JIT )
  9. c++简单的加法函数
  10. ue4渲染速度太慢_技术汇丨如何在UE4中实现最佳性能和高质量视觉效果
  11. Heaps 高性能游戏引擎
  12. 如何在 Mac 上设置自定义锁屏信息?
  13. Linux下测试sdio,浅析Linux下sdio接口对sd卡硬件检测流程
  14. CAD随机圆形颗粒插件
  15. android 在线获取音乐歌词lrc文件
  16. 51nod 1740蜂巢迷宫
  17. divgrad怎么求_请问高等数学中div(grad u)中的div是什么意思?
  18. 新电脑 安装idea迁移设置和插件注意事项
  19. SSL基础:20:使用x509子命令为其他证书签名
  20. JS设置请在微信客户端打开链接提示页面

热门文章

  1. Oracle rac11g 安装报INS41112
  2. vue-methods三种调用的形势
  3. 关于oracle的笔记
  4. ubuntu 12.04 修改 grub 启动参数
  5. 自己动手写一个业务实体生成器(1)
  6. Java IO流常用操作方法总结
  7. Java结构型设计模式之装饰者模式
  8. 容器化之路:谁偷走了我的构建时间
  9. Python Django 之 jQuery
  10. clock_gettime接口和linux时间系统