《初学者C51自学笔记》之流水灯实现(移位操作)

#include <reg52.h>
#define uchar unsigned char 
#define uint unsigned int

void delay(void)
{
	uchar a,b;
	for(a=0;a<200;a++)
	for(b=0;b<200;b++);
}

void main()
{
	uchar k,i;
	while(1)
	{
	k=0xfe;    //11111110	
	for(i=0;i<8;i++)
	{
	P0=k;
	delay();
	k=k<<1;   //11111100
	k=k|0x01; //末尾变为1 11111100 | 00000001  = 11111101(有1即1)
	         
	}		  
	}		  
			 

}

同理二次循环为移位结果K=11111010,或运算结果K=11111011

猜你喜欢

转载自blog.csdn.net/qq_40691438/article/details/81382902