c语言intrins函数,【转载】KEIL C 头文件INTRINS.H中的几个函数说明
原标题:
[51单片机]keil
C51中的本征函数库及使用说明
为方便自己查找,已将标题改名
原文来源:http://blog.163.com/hooyang@126/blog/static/118945452200982611383998/
本征函数(intrinsicroutines)是指编译时直接将固定代码插入当前行,而不用ACALL和LCALL
来实现(无需堆栈操作?),可大大提高函数的访问效率.
函数原型
extern
void _nop_ (void);
extern
bit _testbit_ (bit);
extern unsigned char
_cror_ (unsigned char, unsigned char);
extern unsigned int _iror_ (unsigned int, unsigned char);
extern unsigned long
_lror_ (unsigned long, unsigned char);
extern unsigned char
_crol_ (unsigned char, unsigned char);
extern unsigned int _irol_ (unsigned int, unsigned char);
extern unsigned long
_lrol_ (unsigned long, unsigned char);
extern unsigned char _chkfloat_(float);
头文件
#include
说明
extern
void _nop_ (void);
产生一个nop指令
extern bit_testbit_ (bit);
产生一个JBC指令,若该位置位,返回1,否则为0;只能作用于直接寻址的位变量,不能用于表达式
之中
extern unsigned char
_cror_ (unsigned char val, unsigned char n);
(unsigned char)val右移n位
extern unsigned int _iror_ (unsigned int val, unsigned char n));
(unsigned int)val右移n位
extern unsigned long
_lror_ (unsigned long val, unsigned char n));
(unsigned long)val右移n位
extern unsigned char
_crol_ (unsigned char val, unsigned char n));
(unsigned char)val左移n位
extern unsigned int _irol_ (unsigned int val, unsigned char n));
(unsigned int)val左移n位
extern unsigned long
_lrol_ (unsigned long val, unsigned char n));
(unsigned long)val左移n位
extern unsigned char _chkfloat_(float);
测试并返回float的状态
一下摘自keil C51的帮助文档
0 Standard floating-point numbers 标准浮点数
1 Floating-point value 0 浮点数0
2 +INF (positive overflow) 正溢出
3 -INF (negative overflow) 负溢出
4 NaN (Not a Number) error status出错
参考文献
李军等编著.51系列单片机高级实例开发指南.北京-北京航空航天大学出版社 2004
keil software,inc. C51 user's guide
c语言intrins函数,【转载】KEIL C 头文件INTRINS.H中的几个函数说明相关推荐
- c51语言的标准库函的头文件,C51编程中头文件的使用
头文件在C51的编程中是不可缺少的部分.本文将对keil C中常用头文件予以说明,并就如何编写头文件进行初步介绍. 一.C51常见本征函数库 一些常见的头文件都是keil C自带的,在安装目录下的C5 ...
- 习题 8.5 将本章的例8.4改写为一个多文件的程序:1.将类定义放在头文件arraymax.h中;2.将成员函数定义放在源文件arraymax.cpp中;3.主函数放在源文件file1.cpp中。
C++程序设计(第三版) 谭浩强 习题8.5 个人设计 习题 8.5 将本章的例8.4改写为一个多文件的程序: 1.将类定义放在头文件arraymax.h中: 2.将成员函数定义放在源文件arraym ...
- c++头文件iomanip.h中setw()、setprecision()、setbase用法示例详解
c++头文件iomanip.h中setw().setprecision().setbase #include <iostream> //不要用iostream.h ,会出现好多问题 ...
- c语言stdlib h常用函数,c语言中,头文件stdlib.h主要包含什么函数?
stdlib.h里面定义了五种类型.一些宏和通用工具函数. 类型例如size_t.wchar_t.div_t.ldiv_t和lldiv_t: 宏例如EXIT_FAILURE.EXIT_SUCCESS. ...
- C语言字符串头文件string.h中的strlen,strcat,strcpy,strncpy,strcmp,strlwr,strupr函数
前言 本博文内容基于VC6.0++, 2.本博文主要介绍包含在string.h中的几个字符串相关的函数: strlen(字符串数组名) 字符串有效长度函数: 返回值:整型 功能:用来测量一个字符串的有 ...
- c++头文件iomanip.h中的setw、setprecision、setfill和setbase函数
#include <iostream> //不要用iostream.h ,会出现好多问题 #include <iomanip> // io 流控制头文件, 主要是一些 ...
- c++头文件iomanip.h中的setw、setprecision、setfill和setbase函数的使用
#include <iostream> //不要用iostream.h ,会出现好多问题 #include <iomanip> // io 流控制头文件, 主要是一些操纵用法如 ...
- 函数实现不放在头文件的原因,及何时可以放头文件的情况【转】
1 .引子 在平常的 C/C++ 开发中,几乎所有的人都已经习惯了把类和函数分离放置,一个 .h 的头文件里放声明,对应的 .c 或者 .cpp 中放实现.从开始接触,到熟练使用,几乎已经形成了下意识 ...
- 函数实现不放在头文件的原因,及何时可以放头文件的情况
1 .引子 在平常的 C/C++ 开发中,几乎所有的人都已经习惯了把类和函数分离放置,一个 .h 的头文件里放声明,对应的 .c 或者 .cpp 中放实现.从开始接触,到熟练使用,几乎已 ...
最新文章
- java.lang.IllegalArgumentException: pointerIndex out of range
- mysql内连接简写_技术分享 | MySQL 的 join_buffer_size 在内连接上的应用
- RaspberryPI 3 系统安装及常见问题
- 关于每年一次的社会保险缴费基数核定说明
- SAP Spartacus里的产品主数据显示的数据源
- 人工智能是互联网下一轮变革的核心
- CVE-2021-3156:Sudo 堆缓冲区溢出漏洞(有poc,exp待更新)
- 支付宝借呗频繁借还款对征信有影响吗?
- 移动终端开发必备知识(转载)
- VB:谁终结了我的程序
- 如何在 Spring 中自定义 scope
- 光斑质心检测之曲线拟合求亚像素位置的三种方式
- 服务器监控之 ping 监控
- java 字符串转换int_java IPV4字符串转int或long
- 杨丫头,送你只大喵~!!
- canoco5主成分分析步骤_SPSS数据分析1——主成分分析
- 苹果系统虚拟机无usb服务器,苹果电脑Mac系统中VMware虚拟机无法识别USB Key的解决方法...
- 尼日利亚4g频段_世界各国全球主要4g频段资料
- Linux:ftrace: 为什么有些函数没有在available_filter_functions
- SUMOlympics