关键字using与interrupt
来源:互联网 发布:淘宝做任务返利 编辑:程序博客网 时间:2024/05/16 18:35
1、关键字using
(1)在函数的入口处将当前工作寄存器组保护到堆栈中,指定的工作寄存器内容不会改变;
(2)函数返回之前将被保护的工作寄存器组从堆栈中恢复。
(3)带using属性的函数不能返回bit类型的值;
(4)using不能用于外部函数;
(5)51的寄存器组编号为0~3,主函数默认使用0,中断函数应使用与主函数不同的寄存器组;
(6)51有两个优先级(高和低,在IP中指定),默认均为低优先级,优先级相同的中断服务函数可使用相同的寄存器组,不同的必须使用不同的寄存器组。
2、关键字interrupt
(1)在进入中断函数时,特殊功能寄存器ACC、B、DPH、DPL、PSW将被保存入栈,如不切换寄存器组,则将中断函数中所用到的全部工作寄存器入栈;
(2)函数返回之前,所有的寄存器内容出栈;
(3)中断函数不能进行参数传递,即没有参数;
(4)中断函数没有返回值;
(5)中断函数不能被直接调用;
(6)如果在中断函数中调用了其他函数,则被调用的函数所使用的寄存器组必须与中断函数相同;
(7)如果中断函数中用到浮点运算,必须保存浮点寄存器的状态,当没有其他程序执行浮点运算时可以不保存,函数库math.h提供了保存浮点寄存器状态的函数pfsave以及恢复浮点寄存器状态的函数fprestore。
0 0
- 关键字using与interrupt
- interrupt using
- interrupt x using y
- C语言在8051单片机上的扩展(interrupt、using关键字的用法)
- C语言在8051单片机上的扩展(interrupt、using关键字的用法)
- 关于如何利用Keil C实现51单片机中断功能(interrupt、using关键字的用法)
- 关于如何利用Keil C实现51单片机中断功能(interrupt、using关键字的用法)
- 如何利用keil C实现单片机中断功能(interrupt,using关键字的用法)
- C# IDisposable接口与using关键字
- using关键字
- using关键字
- using 关键字
- using关键字
- Keyboard Interrupt Hook using I/O APIC
- void timer(void) interrupt x using x
- void timer(void) interrupt x using x
- interrupt 0 using 1 的用法
- C51中interrupt和using的用法
- Hive几种数据导出方式
- Bash内部变量
- UVA 10420 List of Conquests
- Spring 初始化过程详细分析 [源码] (二)
- 数组-09. 求矩阵的局部极大值(15)
- 关键字using与interrupt
- WINDOWS 7下安装GNU EMACS
- javaweb中struts的图片上传
- windows下获取系统管理员账号明文密码工具mimikatz使用
- Java时间简单处理工具类
- Web服务架构入门概述
- 使用MyBatis_Generator生成Dto、Dao、Mapping
- linux 磁盘挂载分区
- (5175)HDU