移位运算的意义 30
移位运算的意义算数移位运算的意义我还能理解,降低运算的压力,减少运算时间。但是逻辑移位运算到底有啥用?然后跟符号位又有什么关系?这两者到底有啥区别?求教!...
移位运算的意义算数移位运算的意义我还能理解,降低运算的压力,减少运算时间。但是逻辑移位运算到底有啥用?然后跟符号位又有什么关系?这两者到底有啥区别?求教!
展开
1个回答
展开全部
仅举2个逻辑运算的例子:
串行通信接口,发送缓冲器里得到的数据以字节为单位,比如0xa1 (10100001),则在一根发送数据线上只能一个位一个位的往外送,比如MSbit在前,总线上会依次看到 1、0、1、0、0、0、0、1这8个bit,然后接收端再用移位寄存器依次接收8bit,恢复成字节。
简单易记的表示立即数。有时候微处理器的寄存器操作,需要给特定位置成特定的数,比如还是上面那个Reg = 0xa1,写成二进制10100001读起来挺麻烦,所以C语言里经常写成这样的形式: Reg = (1 << 7) + (1 << 5) + (1 << 0);
写程序的人一看就知道,只把bit7、5、0置成1,其余的位都是0逻辑运算是无符号运算,没有符号位的概念。只有数值运算才考虑符号位。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询