zoukankan      html  css  js  c++  java
  • [学习心得] 我总结的进制转换

    一、十六进制转化为十进制
      例:2AF5换算成10进制:
       
      第1位: 5 * 160 = 5
      第2位: F * 161 = 240
      第3位: A * 162 = 2560
      第4位: 2 * 163 = 8192 +
      -------------------------------------
       10997
      直接计算就是:
      5 * 160 + F * 161 + A * 162 + 2 * 163 = 10997
      (别忘了,在上面的计算中,A表示10,而F表示15)
       
      现在可以看出,所有进制换算成10进制,关键在于各自的权值不同。
      假设有人问你,十进数 1234 为什么是 一千二百三十四?你尽可以给他这么一个算式:
      1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100
      
      
      二、如何迅速将十六进制转换为二进制数呢?
      
      利用8、4、2、1凑 如 B(11) 就是8+0+2+1 所以是1011
      
      三、十进制转换成二进制数
      
      把要转换的数,除以2,得到商和余数,
      
      将商继续除以2,直到商为0。最后将所有余数倒序排列,得到数就是转换结果
      
      比如要转换6为二进制数。
      
       6 ÷ 2,得到商是3,余数是0。
       3 ÷ 2, 得到商是1, 余数是1
       1 ÷ 2, 得到商是0,余数是1
      
      现在商已经是0。
      
      我们三次计算依次得到余数分别是:0、1、1,将所有余数倒序排列,那就是:110了! 
      
      6转换成二进制,结果是110。
      10进制数转换成8进制的方法,和转换为2进制的方法类似,惟一变化:除数由2变成8
      10进制数转换成16进制的方法,和转换为2进制的方法类似,惟一变化:除数由2变成16
      
      四、二进制的转化
      二进制数要转换为十六进制,就是以4位一段,从右向左分。分别乘8、4、2、1、转换为十六进制。
      二进制数要转换为八进制,就是以3位一段,从右向左分。分别乘4、2、1、转换为八进制。
       如果一个二进制数很,长们还可以先将这个二进制转换成16进制,然后再转换为10进制,这样比较快速计算
      
      五、负数如何用二进制表达
      
      在计算机中,负数以其正值的补码形式表达。
      
      反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。取反操作指:1变0; 0变1
      反码加1称为补码

  • 相关阅读:
    git 学习笔记
    参看gitlab版本号
    PHP7.1安装xdebug
    言不由衷
    容器镜像上传和下载
    利用docker搭建ubuntu+nginx+PHP容器
    生产者消费者模式(转)
    白盒测试以及基路径法测试
    分页的简单实现
    排列2(全排列next_permutation 注意格式)
  • 原文地址:https://www.cnblogs.com/shenlian/p/1925912.html
Copyright © 2011-2022 走看看