刚学单片机,有点小疑问

刚学单片机,书里的:
char m=0xfe;
while(1)
{
for(i=0;i<8;i++)
  {
      P2=m;
      m=_cro1_(m,1);
      P1=led_mod[i];
      delay(5);
   }
}

这个cro1我猜应该是移动0的位置?但是怎么实现的,或者这个cro1有啥用?
谢谢!
m=_crol_(m,1);    //_crol_循环左移,该函数在#include <intrins.h>函数库中。
m=_cror_(m,1);    //_cror_循环右移,该函数在#include <intrins.h>函数库中。
比如
m=0x81; m=_crol_(m,1);  //m就等于0x03

应该是_crol_吧 你那写错了吧 循环左移的意思
https://blog.csdn.net/weixin_34343689/article/details/86036969

crol的l是"left"的意思,不是"1",表示将一个8位(二进制)的数循环左移,移动的时候不是单独移动0,而是所有都移动。
比如代码中m=0xfe,二进制为11111110,
直接左移1位的话变成了11111100,最高位的1被移出去了;
循环左移1位是把最高位的1补到最低位,即11111101