二进制、八进制、十进制、十六进制,我来为大家讲解一下关于二进制十进制十六进制?跟着小编一起来看一看吧!
二进制十进制十六进制
二进制、八进制、十进制、十六进制
区别:数运算时逢几进位,例如十进制就是1-9满10进位。
转换:
1.十进制转二进制
一个数一直除以2(直到商为0),得到的余数从尾到头就是该数的二进制
2.二进制转十进制
把二进制展开,每个数对应一个2^n
例如:100010——>1*2^5 0*2^4 0*2^3 0*2^2 1*2^1 0*2^0
3.二进制转八进制
把一个二进制数拆分为3位一个(从右到左,不够就用0代替),再运算
例如:10100010——>010 100 010——>0*2^2 1*2^1 0*2^0(2) 1*2^2 0*2^1 0*2^0(4) 0*2^2 1*2^1 0*2^0(2)
所以该二进制数的八进制就是242
4.八进制转二进制
就是二进制转八进制的倒转
就以242为例,把242拆分为2 4 2,再对每个数除以2,不够在最左边补0。
5.二进制转十六进制(A<—>10,B<—>11,C<—>12,D<—>13,E<—>14,F<—>15)
与二进制转八进制近似,八进制取3合1,十六进制取4合1,也是从右到左,不够就用0代替
6.十进制、八进制、十六进制之间的转换
(一)要么先把十进制转换成二进制,在用二进制进行转换
(二)或者直接把十进制除以8或16
原码、反码、补码
在计算机中都是以二进制表示,计算机中一个字长为8位,比如:1000 0001,这也叫机器数
在二进制中怎么表示正负的呢?就是以8位二进制数的第一位,0正1负,1000 0001的真值就是 000 0001= 1
1.原码也就是符号位加上绝对值的真值
2.反码
正数的反码就是本身
负数的反码在原码的基础上,符号位不变,其余各位取反
3.补码
正数的补码就是本身
负数的补码在原码的基础上,符号位不变,其余各位取反,最后 1
为什么使用原码、反码、补码?
因为符位号会让计算机变得复杂,所以去掉了减法,只运算加法
比如1-1就可以等于1 (-1),这个通过原码运算1-1是错误的,1-1=0000 0001 1000 0001=1000 0010=-2
所以就出现了反码,但是通过反码运算,1-1又会出现-0,而且0这个值会有两个二进制表示1000 0000 和0000 0000
这样就又出现了补码,这样0就用0000 0000表示,而不会出现1000 0000,1000 0000会表示为-128,因为-128是使用之前的-0的补码来表示的,所以-128没有原码和反码
,