<intrins.h>库函数
<intrins.h> ——Intrinsic functions for C51
常用函数:
_nop_() 空操作8051 NOP 指令
_crol_() 字符循环左移
_cror_() 字符循环右移
_irol_() 整数循环左移
_iror_() 整数循环右移
_lrol_() 长整数循环左移
_lror_() 长整数循环右移
函数原型:
说明:
#ifndef _A_H // “if not define a.h” 如果不存在a.h
#define _A_H // “define a.h” 就引入a.h
#endif // 否则不需要引入
此代码为避免头文件重复包含的固定格式
/*--------------------------------------------------------------------------
INTRINS.HIntrinsic functions for C51.
Copyright (c) 1988-2010 Keil Elektronik GmbH and ARM Germany GmbH
All rights reserved.
--------------------------------------------------------------------------*/#ifndef __INTRINS_H__
#define __INTRINS_H__#pragma SAVE#if defined (__CX2__)
#pragma FUNCTIONS(STATIC)
/* intrinsic functions are reentrant, but need static attribute */
#endifextern void _nop_ (void);/* 空操作指令:延时一个机器周期————直接执行NOP指令; */extern bit _testbit_ (bit);/* _testbit_产生一个JBC 指令,该函数测试一个位,当置位时返回1,否则返回0。如果该位置为1,则将该位复位为0。8051 的JBC 指令即用作此目的。_testbit_只能用于可直接寻址的位;在表达式中使用是不允许的。*/extern unsigned char _cror_ (unsigned char, unsigned char);/* 字符循环右移函数————需要位移的变量———循环右移的位数————将char型变量循环右移,移动指定位数后返回; */extern unsigned int _iror_ (unsigned int, unsigned char);/* 整数循环右移函数———需要位移的变量——循环右移的位数————将int型变量循环右移,移动指定位数后返回; */extern unsigned long _lror_ (unsigned long, unsigned char);/* 长整数循环右移函数———需要位移的变量——循环右移的位数————将long型变量循环右移,移动指定位数后返回; */
extern unsigned char _crol_ (unsigned char, unsigned char);/* 字符循环左移函数————需要位移的变量———循环左移的位数————将char型变量循环左移,移动指定位数后返回; */extern unsigned int _irol_ (unsigned int, unsigned char);/* 整数循环左移函数———需要位移的变量——循环左移的位数————将int型变量循环左移,移动指定位数后返回; */extern unsigned long _lrol_ (unsigned long, unsigned char);/* 长整数循环左移函数———需要位移的变量——循环左移的位数————将long型变量循环左移,移动指定位数后返回; */extern unsigned char _chkfloat_(float);
#if defined (__CX2__)
extern int abs (int);
extern void _illop_ (void);
#endif
#if !defined (__CX2__)
extern void _push_ (unsigned char _sfr);
extern void _pop_ (unsigned char _sfr);
#endif#pragma RESTORE#endif
<intrins.h>库函数相关推荐
- c51中的intrins.h库函数
c51中的intrins.h库函数 /*-------------------------------------------------------------------------- INTRI ...
- c语言intrins头文件,结合单片机学习板学习c语言之流水灯制作 intrins.h头文件
原标题:结合单片机学习板学习c语言之流水灯制作 intrins.h头文件 目的:实现流水灯. 本文引用地址:http://www.eepw.com.cn/article/201608/294948.h ...
- 在c语言中本征函数说明,结合单片机学习板学习c语言之流水灯制作--intrins.h头文件...
目的:实现流水灯.本文引用地址:http://www.eepw.com.cn/article/201608/294948.htm 源程序: /*本程序结合STC89C51使用,晶振12M,中间用到串口 ...
- 单片机开发用到的intrins.h文件
intrins.h文件内容如下: #ifndef __INTRINS_H__ #define __INTRINS_H__extern void _nop_ (void); extern bit _te ...
- INTRINS.H的函数
在C51单片机编程中,头文件INTRINS.H的函数如下: (1)_crol_ 字符循环左移 将char型变量循环向左(右)移动指定位数后返回 (2)_cror_ 字符循环右移 将char型变量循环向 ...
- Keil C51中头文件INTRINS.H的作用
KEIL 中 头文件 INTRINS.H的作用 在 C51 单片机编程中,头文件 INTRINS.H 的函数使用起来, 就会让你像在用汇编时一样简便. 内部函数 描述 _crol_ 字符循环左移 _c ...
- STC89C52RC单片机额外篇 | 04 - 认识头文件<intrins.h>与_nop_函数
1 <intrins.h>头文件 头文件<intrins.h>在我们51单片机日常开发中经常使用,特别是_nop_()函数,以下是<intrins.h>的内容: / ...
- intrins.h文件解读
文件内容 #ifndef __INTRINS_H__ #define __INTRINS_H__extern void _nop_ (void); extern bit _testbit_ (bit) ...
- 标准库intrins.h中的循环指令在多种流水灯方式上的应用
标准库intrins.h中的循环指令在多种流水灯方式上的应用 内部函数 描述: crol 字符循环左移 cror 字符循环右移 irol 整数循环左移 iror 整数循环右移 lrol 长整数循环左移 ...
最新文章
- jQuery之替换节点
- Windows11提前曝光!全新UI引发争议,网友:一股苹果味
- UML作业第五次:分析系统,绘制状态图
- 描述文件安装失败无法连接到服务器_iOS13 Beta安装失败解决办法
- Fedora下网络配置及相关命令
- 为什么Jedis操作后要主动归还?
- 在mysql-workbench的存储过程中使用循环while,repeat,loop
- 【Java】Java复习笔记-第三部分
- android Tabhost 组件
- Safari 是什么
- Groovy小结:java调用Groovy方法并传递参数
- 学术论文-结果描述常用表达
- 使用Photoshop软件巧去影像的白点空洞
- [SSD核心技术:FTL 15] 固态存储FTL映射表的神秘面纱
- vue点击把某个区域变成图片数据
- FinClip11月产品更新:FIDE 插件开发功能优化;开发者文档英文版上线
- 基于Java的建筑工程综合管理信息系统
- 安徽隐秘后花园,景色绝美动人,人生必去不去遗憾
- 微信小程序 滚动列表(无限滚动)
- Seay代码审计系统审计实战