码迷,mamicode.com
首页 > 其他好文 > 详细

二进制

时间:2018-08-12 15:47:09      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:ima   info   png   .com   进制   1.0   inf   符号位   分享图片   

  • 十进制    (减法  借一当10)

    加法 :   9 + 1 = 10 ; 99 + 1 = 100;        满10加1   相同位数的值相加 满10  向前+1

    减法 :  20 - 5 = 15   (个位数为0 , 不足以减5  ; 向十位数借1充当个位数的10(十进制),于是现在个位数为10  10-5 = 5;  个位数结果为5   ;十位数被借了1  于是  2 -1 = 1;结果为1   ;最终结果 15)

  • 二进制    (减法  借一当2)     

              加法 :  101 + 11 = 1000;   1 + 1 = 10    满2加1   相同位数的值相加 满2  向前+1

             减法 :  100010 - 1010 = 011000   (个位数都为0,十位数结果 1-1 = 0,百位数都为0,千位数为0不足以-1,向前借1当2,于是结果2-1 = 1,万位数为0,被借了1,不足以-1,向前借1,于是结果2-1 = 1;十万位被借了1,于是结果1-1=0;最终结果011000)

 

  • 整数十进制转二进制   

              65 ----- >    1000001    

    计算 :

技术分享图片

  • 小数转二进制   

    13.25 -------->1101.01

    计算:  13.25 = 13 + 0.25;  13 转二进制结果为1101   ; 0.25转二进制  0.25 * 2 = 0.5  整数位结果0   0.5 * 2 = 1.0 整数位结果为1  最终结果 0.01;所以13.25转二进制结果为1101 + 0.01 =  1101.01;

 

  • 原码,反码,补码

    原码:一个数的绝对值得二进制     最高位为符号位  正数为0 负数为1    -13  --->  |-13|----> 1101   ---->  10001101  (8字节,向前补4个0,负数 最高位为1);

    反码:正数的反码是其原码,负数的反码是其原码 的符号位不变,其余每个位取反 (0变为1,1变为0)  10001101 -----> 1 1110010;

    补码:正数的补码是其原码,负数的补码是其原码 的反码 + 1;

  • 为什么要补码?

    计算机只能进行加法运算 ,减法会用补码的方式当成加法来算(结果是补码)

    12 - 14 = 12 +(-14) =  00001100(12的原码) + 11110010(14的补码) = 11111110(结果的补码) --->11111101(-1)---> 10000010(结果的原码:符号位不变,其他位取反) ----> -2 (十进制)

 

      

二进制

标签:ima   info   png   .com   进制   1.0   inf   符号位   分享图片   

原文地址:https://www.cnblogs.com/dong-eng/p/9462760.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!