其他分享
首页 > 其他分享> > 单片机移位运算符和循环移动函数

单片机移位运算符和循环移动函数

作者:互联网

比如P2=EF;   1110 1111

P2<<=1;表示左移1位,移位运算符是在低位自动补0;移动之后的二进制数:1101 1110

P2=_crol_(P2,1);表示循环左移,它不会补0啥的,真的是循环;移动之后的二进制数:1101 1111

while(1)
	{
		P2=0XEF;     //1110 P24位选码选中
		for(i=1;i<=4;i++){
			P0=led[i]; //段码位赋值
			for(k=0;k<20;k++);
			P0=0X00;
			//P2<<=1;
			P2=_crol_(P2,1);
		}													
	}

如果用字符型二进制循环左移函数,移动过程是:1101 1111、   1011 1111、 0111 1111 ;

如果用左移运算符,移动过程是:1101 1110 、1011 1100、0111 1000;  

标签:P2,1111,1110,左移,运算符,单片机,循环,1101,移位
来源: https://www.cnblogs.com/YYZYCS/p/16330107.html