- 20
- 0
- 约2.86万字
- 约 95页
- 2019-01-06 发布于江苏
- 举报
5.9.6 C51函数的寄存器组选择 在前面单片机基本原理的介绍中,介绍了MCS-51单片机工作寄存器有4组:0组、1组、2组、3组。每组有8个寄存器,分别用R0~R7表示。那么当前程序用的是哪一组呢?修饰符using n用于指定本函数内部使用的工作寄存器组,其中n的取值为0~3,表示寄存器组号。 对于using n修饰符的使用,注意以下几点: (1)加入using n后,C51在编译时自动的在函数的开始处和结束处加入以下指令。 { PUSH PSW ;标志寄存器入栈 MOV PSW,#与寄存器组号相关的常量 POP PSW ;标志寄存器出栈 } (2)using n修饰符不能用于有返回值的函数,因为C51函数的返回值是放在寄存器中的。如寄存器组改变了,返回值就会出错。 5.9.7 C51的重入函数 在标准C语言中,调用函数时会将函数的参数和函数中使用的局部变量压入堆栈保存,由于51单片机内部堆栈空间有限,因而C51没有像标准C语言那样使用堆栈,而是使用压缩栈的方法,为每一个函数设定一个空间,用于存放参数和局部变量。 一般函数中的每个变量都存放在这个空间的固定位置,当函数递归调用时会导致变量覆盖,所以就会出错。但在某些实时应用中,因为函数调用时可能会被中断函数中断,而在中断函数中可能再调用这个函数,这就出现对函数的递归调用。为解决这个问题,C51
您可能关注的文档
- 第5章 建设工程合同管理教学资料-.ppt
- 第5章 建设工程勘察设计合同管理教学资料-.pptx
- 第5章 建筑工程工程量清单计价教学资料-.ppt
- 第5章 建筑设备管理系统教学资料-.ppt
- 第5章 教学资料-.ppt
- 第5章 课后习题答案教学资料-.docx
- 第5章 力与压力测量(吴老师)教学资料-.ppt
- 第5章 螺纹连接与螺旋传动教学资料-.ppt
- 第5章 容器造型设计教学资料-.ppt
- 第5章 软件设计概要教学资料-.ppt
- 中国国家标准 GB/T 48336.304-2026星闪无线通信系统 第304部分:基础服务层 5G蜂窝网络融合.pdf
- CCAA《管理体系认证基础》第2版+三色笔记office完整版-2026.docx
- RCS-901系列超高压线路成套保护装置技术和使用说明书.pdf
- RCS-902A(B.C.D)型超高压线路成套保护装置技术说明书.pdf
- PCS-923A断路器失灵起动及辅助保护测控装置技术使用说明书.pdf
- RCS-924A型T区保护装置技术和使用说明书.pdf
- GB/T 48349.3-2026信息技术 数字视网膜系统 第3部分:端子系统.pdf
- 中国国家标准 GB/T 48349.3-2026信息技术 数字视网膜系统 第3部分:端子系统.pdf
- 《GB/T 48349.3-2026信息技术 数字视网膜系统 第3部分:端子系统》.pdf
- 中国国家标准 GB/T 48355-2026石化化工用软起动装置.pdf
原创力文档

文档评论(0)