C51中的 intrins.h中的循环移位函数和标准C中的移位符号"<<"和">>"疑惑,望牛人
C51中的 intrins.h中的循环移位函数和标准C中的移位符号和疑惑,望牛人解答!_crol_, _cror_,等等函
C51中的 intrins.h中的循环移位函数和标准C中的移位符号"<<"和">>"疑惑,望牛人解答!
_crol_, _cror_,等等函数我知道,是循环移位的意思,这些函数的功能和标准C的移位操作符"<<"和">>"有什么区别呢!
他们在执行效率上有不同!
[解决办法]
标准C的移位操作符"<<"左移一次,超过8位的就被舍去了,最低位补0
">>"右移一次,超过8位的就被舍去了,最高位补0
_crol_, _cror_,是循环移位
执行效率肯定是标准C的移位效率高,因为不用管移出的超过8位的位
[解决办法]
[解决办法]同意楼上
[解决办法]循环,就是带进位移位,C中的>>和<<是不带进位的。
ACC >>= 1;和
ACC = ACC >> 1;
是一样的
ACC >>= 1;//是C风格而
ACC = ACC >> 1;//是basic风格。
[解决办法]C里面没有循环位移
[解决办法];原来就没有“循环”的说法
RR A;原名:Rotate Right
RL A; Rotate Left
;
RCR A;原名 Rotate Right through Carry、
RCL A