zoukankan      html  css  js  c++  java
  • 2、8、10、16进制的转换

    电脑上的常用进制有:2、8、10、16四种,我们有时候需要对他们的表现形式做一些转换,最基本的我们需要知道:
    2转16:
    4个2进制位为一个16进制数,2进制1111为16进制F,2进制中千位的1=8,百位的1=4,十位的1=2,个位的 1=1,将各个位的数作相应转换再相加得到的数就是10进制数0-15,可轻松转换成16进制。如01011100,可看成是两组2进制数0101和 1100,则这个数就是16进制的5C。

    10转16:
    100以内一点的10转16心算比较快,复杂的用“计算器”算 了。10转16用传统的计算方式可以了,就是大于15小于256的10进制数除以16得到的值为十位的16进制数,其余数为个位的16进制数,没余数则个位 为0。如61的16进制是3D,61除以16得3余13,3作十位数,13转成D为各位数。

    16转10:
    用相反的道理,将十位数乘以16加上个位数。如5A,将5乘以16得80,加上A的10进制10,结果是90。

    个人推荐使用:WINDOWS中点击“开始”--”程序“--“附件”--“计算器”,按 “查看”再选“科学型”,就可以方便的进行各进制的转换了(如:你要转换10进制90000000为16进制,点“十进制”,输入90000000,再点 一下“16进制”,就会看到55D4A80,转换就完成了。其他同理)

    程序中这4种制式的转换:

    在.net Framework中,System.Convert类中提供了较为全面的各种类型、数值之间的转换功能。其中的两个方法可以轻松的实现各种进制的数值间的转换:

    Convert.ToInt32(string value, int fromBase):

    可以把不同进制数值的字符串转换为数字,其中fromBase参数为进制的格式,只能是2、8、10及16:

    如Convert.ToInt32(”0010”,2)执行的结果为2;

    Convert.ToString(int value, int toBase):

    可以把一个数字转换为不同进制数值的字符串格式,其中toBase参数为进制的格式,只能是2、8、10及16:

    如Convert.ToString(2,2)执行的结果为”0010”

    现在我们做一个方法实现各种进制间的字符串自由转换:选把它转成数值型,然后再转成相应的进制的字符串:


    public string ConvertString(string value, int fromBase, int toBase)
    {
      
    int intValue = Convert.ToInt32(value, fromBase);
      
    return Convert.ToString(intValue, toBase);
    }

    其中fromBase为原来的格式

    toBase为将要转换成的格式

  • 相关阅读:
    近期学习情况
    java连接数据库的两种方法总结
    近两个星期学习成果
    云笔记第一阶段总结
    圆面积
    C++计算器项目的初始部分
    C++视频课程
    A+B Format
    大一下学期的自我目标
    Kohana的请求流
  • 原文地址:https://www.cnblogs.com/trendline/p/1248887.html
Copyright © 2011-2022 走看看