行翻转法.c

来自「基于c51的484按键扫描源程序 适合初学者」· C语言 代码 · 共 37 行

C
37
字号
#include <reg51.h>

unsigned trans(unsigned int i)
{
	unsigned int j;
	j=0;
	while(!(i&1))
	{
		j++;
		i=i>>1;
	}
	return j;
}

void main(void)
{
	unsigned int x,y,i;
	P0=0x0f;
	while(1)
	{
		if(P0!=0x0f)
		{
			x=~P0;
			x=0x0f&x; 
			P0=0xf0;
		   	y=~P0;
			y=y/16;
			y=trans(y);
			x=trans(x);
			P1=4*y+x;
			for(i=0;i<1000;i++);
			while(P0!=0xf0);
			while(P0!=0xf0);
			P0=0x0f;
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?