左循环本征函数:
函数原型:unsigned char _crol_(unsigned char a,unsigned char n);
单片机左移函数用法:
例如,P2=0xff; P2=_crol_(P2,1);//语法是对的,但这是没意义的,因为执行程序后P2还是原值0xff
P2=0xfe; P2=_crol_(P2,1);//执行程序后P2=0xfd
扩展资料:
单片机相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。单片机也被称为单片微控器,属于一种集成式电路芯片。
在单片机中主要包含CPU、只读存储器ROM和随机存储器RAM等,多样化数据采集与控制系统能够让单片机完成各项复杂的运算,无论是对运算符号进行控制,还是对系统下达运算指令都能通过单片机完成。
参考资料来源:百度百科-单片机
也就是说,最后一位用0补上,右移也是同样的对么
追答错了错了!补0的左右移C51有运算符>,直接使用就行了。
比如:
P2=P2>2;//P2右移2位,最高2位补0
但是,C51没有循环移位运算符,为弥补这一不足,才有了系统函数_crol_等。
_crol_(P2,1);将P2循环左移1位,最高位进最低位。