4个回答
展开全部
左循环本征函数:
函数原型: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等,多样化数据采集与控制系统能够让单片机完成各项复杂的运算,无论是对运算符号进行控制,还是对系统下达运算指令都能通过单片机完成。
参考资料来源:百度百科-单片机
展开全部
左循环本征函数:
函数原型: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
函数原型: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
追问
也就是说,最后一位用0补上,右移也是同样的对么
追答
错了错了!补0的左右移C51有运算符>,直接使用就行了。
比如:
P2=P2>2;//P2右移2位,最高2位补0
但是,C51没有循环移位运算符,为弥补这一不足,才有了系统函数_crol_等。
_crol_(P2,1);将P2循环左移1位,最高位进最低位。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这程序,有些不良。
参加移位的,是从 P2 读入的内容。
具体的东西,要取决于 P2 外部的引脚电平。光看程序,不能确定。
参加移位的,是从 P2 读入的内容。
具体的东西,要取决于 P2 外部的引脚电平。光看程序,不能确定。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-12-19
展开全部
个人觉得你上面这个程序左移没有意义,因为是11111111,左移之后还是原来的值,不知道我说的对不对
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询