标题: 单片机intrins.h文件如何修改?可以循环移动4个字节的数据 [打印本页]

作者: xyxiyangyaang    时间: 2021-11-16 09:50
标题: 单片机intrins.h文件如何修改?可以循环移动4个字节的数据
intrins.h 这个文件,_crol_ 只能操作unsigned char 的数据,我想循环移动4个字节的数据,请问一下这个intrins.h 文件怎么改呢?还要改别的文件吗?
/*--------------------------------------------------------------------------
INTRINS.H

Intrinsic 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 */
#endif

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);
#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


作者: 名字不是重点    时间: 2021-11-16 11:03
不用改, _irol_    (unsigned int,  unsigned char);这个就行了
作者: xyxiyangyaang    时间: 2021-11-16 11:28
名字不是重点 发表于 2021-11-16 11:03
不用改, _irol_    (unsigned int,  unsigned char);这个就行了

_irol_    (unsigned int,  unsigned char); 用的是keil C51,版本5,单片机是C8051F330,你看他的参数,我是unsigned int,我单步调试的话,循环移动的是后面16位
作者: xyxiyangyaang    时间: 2021-11-16 11:37
用这个_lrol_,就可以对long进行操作了,谢谢




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1