80C51单片机汇编指令全览
需积分: 19 13 浏览量
更新于2024-09-25
收藏 472KB PDF 举报
"这篇资料是关于51单片机的汇编指令集,主要涵盖了数据传送和逻辑运算两类指令,适合学习单片机的人士参考。由用户jyfjk在2007年12月12日整理。"
51单片机的汇编指令集是编程的基础,它包括了各种操作数据的方式,如移动、交换、逻辑运算等。以下将详细介绍这两类指令:
1. 数据传送指令:
- MOVA,Rn:将寄存器Rn中的数据传送到累加器A。
- MOVA,data:将直接给出的8位数据传送到A。
- MOVA,@Ri:从Ri所指向的内存地址读取数据并送入A。
- MOVA,#data:将立即数data直接加载到A。
- MOVRn,A:将A中的数据传送到寄存器Rn。
- MOVRn,data:将8位数据直接写入寄存器Rn。
- MOVRn,#data:将立即数写入寄存器Rn。
- MOVdata,A:将A中的数据写入指定的直接地址。
- MOVdata,Rn:将寄存器Rn中的数据写入直接地址。
- MOVdata,data:直接字节间的数据传送。
- MOVdata,@Ri:从Ri所指向的内存地址读取数据并写入直接地址。
- MOVdata,#data:将立即数写入直接地址。
- MOV@Ri,A:将A中的数据写入Ri所指向的内存地址。
- MOV@Ri,data:将数据直接写入Ri所指向的内存地址。
- MOV@Ri,#data:将立即数写入Ri所指向的内存地址。
- MOVDPTR,#data16:将16位的立即数写入DPTR寄存器。
- MOVC,bit:直接位传送至进位位。
- MOVbit,C:进位位传送至直接位。
- MOVCA,@A+DPTR:从A+DPTR地址处取字节数据送A。
- MOVCA,@A+PC:从A+程序计数器地址处取字节数据送A。
- MOVXA,@Ri:外部数据(8位地址)送A。
- MOVXA,@DPTR:外部数据(16位地址)送A。
- MOVX@Ri,A:A数据写入外部存储(8位地址)。
- MOVX@DPTR,A:A数据写入外部存储(16位地址)。
- PUSH data:将直接字节数据压入堆栈,SP加1。
- POP data:从堆栈弹出数据至直接字节,SP减1。
- XCHA,Rn:寄存器Rn与A之间数据交换。
- XCHA,data:直接字节与A之间数据交换。
- XCHA,@Ri:间接Rn与A之间数据交换。
- XCHDA,@Ri:间接Rn与A的低半字节数据交换。
2. 逻辑运算指令:
- ANLA,Rn:执行按位与运算,将Rn中的数据与A进行逻辑与操作并将结果存入A。
- ANLA,data:直接字节与A进行逻辑与操作。
- ORLA,Rn:执行按位或运算,将Rn中的数据与A进行逻辑或操作并将结果存入A。
- ORLA,data:直接字节与A进行逻辑或操作。
- CPLA:取反累加器A的每一位。
- CRLA:循环左移累加器A,最右侧移入进位标志位,最低位移入最右侧。
- RLA:逻辑左移A,进位位移入最低位。
- RRA:逻辑右移A,最高位移入进位位,最低位移出。
- SWAPA:交换A的高低四位。
- INCA:累加器A加1。
- DECA:累加器A减1。
- INC data:直接字节加1。
- DEC data:直接字节减1。
这些指令构成了51单片机的基本操作,对于编写低级程序和优化性能至关重要的。掌握这些指令能帮助开发者更好地理解单片机的工作原理,从而实现更高效的代码编写。
2011-02-12 上传
2019-04-03 上传
2009-12-24 上传
2021-10-10 上传
2011-03-02 上传
2020-03-07 上传
hjx555666
- 粉丝: 7
- 资源: 15
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫