首页 > 其他 > 详细

二进制

时间:2018-08-12 14:45:17      阅读:125      评论:0      收藏:0      [点我收藏+]
  • 十进制    (减法  借一当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 (十进制)

 

      

二进制

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!