C51中实现循环左移、右移的库函数:
#includeunsigned char _crol_( unsigned char c, /*charactertorotateleft*/ unsigned char b); /*bitpositionstorotate*/ unsigned char _cror_(unsigned char ,unsigned char ); unsigned int _iror_(unsigned int ,unsigned char ); unsigned long _lror_(unsigned long ,unsigned char ); unsigned char _crol_(unsigned char ,unsigned char ); unsigned int _irol_(unsigned int ,unsigned char ); unsigned long _lrol_(unsigned long ,unsigned char )
自己实现同样的功能:
unsigned char crol(unsigned char c,unsignedb){ unsigned char left=c<>( sizeof (unsigned char )-b) unsigned char temp=left|right; return temp; } unsigned char cror(unsigned char c,unsignedb){ unsigned char right =c>>b; unsigned char left =c<