单片机编程必备:英文缩写大全与详解
5星 · 超过95%的资源 需积分: 50 101 浏览量
更新于2024-10-03
1
收藏 171KB DOC 举报
本文档主要针对初学者提供了一篇关于单片机中常用英文缩写的全面解析。单片机是微控制器的一种,常用于各种嵌入式系统设计中,其指令集丰富多样,理解和掌握这些英文缩写对于学习和开发至关重要。
首先,数据传送类指令是单片机编程的基础,包括7种助记符:
1. MOV (Move):用于内部数据寄存器RAM和特殊功能寄存器SFR之间的数据传输,简化了数据交换。
2. MOVC (Move Code):用于从程序存储器中读取数据,用于处理程序代码中的数据。
3. MOVX (Move External RAM):用于与外部RAM的数据交互,扩大了数据访问范围。
4. XCH (Exchange):字节交换指令,可以实现两个数据的互换,如XCH和XCHD分别对应低字节和低半字节的交换。
5. PUSH (Push onto Stack):将数据压入堆栈,用于保存局部变量或子程序调用时的上下文。
6. POP (Pop from Stack):从堆栈中弹出数据,恢复被压入的数据。
接着,算术运算类指令支持基本的数学计算:
- ADD (Addition):加法操作。
- ADC (Add with Carry):带进位的加法,考虑前一操作的进位状态。
- SUBB (Subtract with Borrow):带借位的减法,处理借位逻辑。
- DAD (Decimal Adjust):十进制调整,用于处理十进制数据。
- INC (Increment):加1操作,增加数据值。
- DEC (Decrement):减1操作,减少数据值。
- MUL (Multiplication):乘法运算,执行两个数的乘积。
- DIV (Division) 或 Divide:除法运算,用于计算商和余数。
逻辑运算类指令涉及二进制逻辑操作:
- ANL (And Logic):逻辑与,按位与运算。
- ORL (OR Logic):逻辑或,按位或运算。
- XRL (Exclusive-OR Logic):逻辑异或,按位异或运算。
- CLR (Clear):清零操作,将数据置零。
- CPL (Complement):取反,对数据的每个位执行取反操作。
- RL (Rotate Left) 和 RLC (Rotate Left through the Carryflag):循环左移,前者不考虑进位,后者会考虑进位。
- RR (Rotate Right) 和 RRC (Rotate Right through the Carryflag):循环右移,同理,前者不考虑进位,后者考虑进位。
- SWAP (Swap):低4位与高4位的位交换,用于数据位的重新排列。
最后,控制转移类指令用于程序流程的控制:
- ACALL (Absolute subroutine Call):调用绝对地址的子程序。
- LCALL (Long subroutine Call):长距离调用子程序,可能涉及到多个内存单元。
- RET (Return from subroutine) 和 RETI (Return from Interruption):返回到调用点或中断返回,控制程序流程的退出。
- JMP (Jump Indirect):间接跳转,通过存储的地址进行跳跃。
- SJMP (Short Jump):短距离的直接跳转。
- AJMP (Absolute Jump):绝对地址的直接跳转。
- LJMP (Long Jump):长距离跳转,类似于LCALL。
- CJNE (Compare and Jump if Not Equal):比较不相等时进行转移。
- DJNZ (Decrement and Jump if Not Zero):减1后若不为0,则执行转移。
- JZ (Jump if Zero) 和 JNZ (Jump if Not Zero):条件转移,根据操作结果是否为0决定转移。
- JC (Jump if the Carryflag is...):基于进位标志的条件转移,控制根据进位情况决定流程。
理解并掌握这些英文缩写及其对应的指令功能,能够帮助初学者更有效地阅读和编写单片机程序,提高编程效率和代码可读性。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2011-05-21 上传
2012-12-22 上传
2021-12-09 上传
2022-07-08 上传
zmami
- 粉丝: 9
- 资源: 3
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查