c/c++中k<<=1什么意思啊

日期:2021-12-27 20:55:50 人气:1

c/c++中k<<=1什么意思啊

机器码你应该知道吧:就是0,1序列,位移操作建立在补码的基础之上。
1.无符号位移
无符号位移:左移,高位截去,低位补零。右移,高位补零,低位截去。
举个无符号位移的例子:
假设int i=3:转换成原码:0000 0011
i<<=1则表示将以上的二进制码往左移动一位,低位补零。结果是:0000 0110即十进制的6.
所以无符号位移有结论:i<<=n 等价于 i=i*(2的n次方); i>>=n
    A+
热门评论