介绍
二进制数可以分为有符号数和无符号数,有符号数,又可以分为原码、反码、补码。
什么是有符号呢?
就是 识别正和负数的,在首尾代表 0 为正 1为负。无符号就是相反啦。
原码、反码、补码
正数的原码、反码、补码都是一样,没有可讲的。
负数
负数的原码,最高位是1,反码是除了最高位,其余的与原码取反,补码是反码加1。
举例:
十进制数 | 原码 | 反码 | 补码 |
---|---|---|---|
1 | 0000 0001 | 0000 0001 | 0000 0001 |
-1 | 1000 0001 | 1111 1110 | 1111 1111 |
二进制算法
主要说明二进制的加、减、乘、除的运算
加法:逢二进一。
0+0=0,0+1=1,1+0=1,1+1=10
减法:向高位借一当二。
1-1=0,1-0=1,0-0=0,0-1=1
乘法:同时为“1”时结果才为“1”
0×0=0,0×1=0,1×0=0,1×1=1
除法:跟十进制数的除法类似,只不过结果只有0、1。
另外,关于乘法和移位的关系
左移或者是右移都是二进制数的运算,为了方便我们人们计算,我们和乘法联系起来。
二进制数左移N位,就是这个二进制数对应的十进制数乘以2的N次方。
右移N位,就是十进制数除以2的N次方。
如: 二进制数0000 0100(4) 左移2位是 0001 0000 也就是4X2^2=16