金时虚度不觉察,技到用时慌匮乏。劝君莫生无用悔,一分一秒惜年华。
前言
操作符,是一个很容易被忽视,被遗忘的知识,所以,yena将这个知识点整理出来,供大家和自己随时查阅和巩固。
1.移位操作符
1.1 代码基础介绍
1.1.1 二进制,八进制,十进制,十六进制
1.1.1.1 二进制
二进制由数字 0 1 组成,例如00000101,计算方法为从右向左看
从右向左分别是1*2^0,0*2^1, 1*2^2,……相加,得出次二进制代码等于5.

1.1.1.2 八进制
8进制由数字0~7 组成。
二进制转八进制:二进制代码从右向左,每3位二进制数转为1位8进制。
第一步:分组,从右至左,每三位一组,不够三个数在左边补0.
第二步:计算出每一组的值,每一组按2的0次方,2的1次方,2的二次方计算,例如第一组是2+4=6.
第三步:将每组的值合到一起,就是转换后的8进制。如下,转换后的8进制为146

8进制转十进制:如下图,将8进制数146 转为十进制。

1.1.1.3 十进制
十进制数由数字0~9构成,和数学中的数字计算意义无异。
十进制转二进制:如下图,方法是除2取余数,最后从下至上,写下来,就是转换后的二进制数
1.1.1.4 十六进制
十六进制代码由数字0~9,和字母A–F构成,A–F代表数字10–15.
二进制转十六进制:如下图,将二进制代码从右至左,每四位一组,不足时补0.计算出每一组的值,合起来就是转换后的十六进制。十六进制一般以0x开头。

十六进制转十进制,方法与八进制转十进制相同。

1.1.2 原码,反码,补码
二进制代码最高位为符号位,最高位为0,此数为正数,最高位为1,说明此数为负数。
正数的原码反码补码都是本身。
负数的反码:符号位不变,其余按位取反
负数的补码:反码加1.
如下图实例。
注意:编译系统中,储存的是补码,打印出来的是原码。

1.2 左移操作符,<<
1.2.1 正数左移
5<<1,方法为5的补码左边删去1位,右边补0.
如下示例,将此二进制代码向左移一位,右边补0。大家可以在编译器上自行编写检验。


最低0.47元/天 解锁文章
1968

被折叠的 条评论
为什么被折叠?



