精华内容
下载资源
问答
  • 一、十进制转二进制 我们可以做除法,用该数除以2,记录余数,得到的商再除以2,直到商为0,停下来。然后将所有余数倒叙排列,得到转换结果。比如把10从十进制转换为二进制。 二、十进制转十六进制 我们可以做...

    一、十进制转二进制

    我们可以做除法,用该数除以2,记录余数,得到的商再除以2,直到商为0,停下来。然后将所有余数倒叙排列,得到转换结果。比如把10从十进制转换为二进制。

    二、十进制转十六进制

    我们可以做除法,用该数除以16,记录余数,得到的商再除以16,直到商为0,停下来。然后将所有余数倒叙排列,得到转换结果。比如把90从十进制转换为十六进制。

    三、java函数中有方法能直接把十进制数转换为二进制数或十六进制。

     

    int a=10;
    
    System.out.println(Integer.toBinaryString(a));  //转二进制
    System.out.println(Integer.toHexString(a)); //转十六进制

    又或者直接用print函数通过格式化去输出十六进制。

    int a=50;
    System.out.printf("%x,\n",a);   //十六进制

     

     

    展开全文
  • 一、二进制十进制 二进制转十进制 1011010.100101(2)=90.578125(10) 方法一:“按权相加”法 256 128 64 32 16 8 4 2 1 . 0.5 0.25 0.125 0.0625 0.03125 0.015625 0.078125 0.00390625 28 27 26 25...

    一、十进制与二进制互转

    1. 二进制转十进制

    1011010.100101(2)=90.578125(10)

    方法一:“按权相加”法

    256 128 64 32 16 8 4 2 1 . 0.5 0.25 0.125 0.0625 0.03125 0.015625 0.078125 0.00390625
    28 27 26 25 24 23 22 21 20 2-1 2-2 2-3 2-4 2-5 2-6 2-7 2-8
    / / 1 0 1 1 0 1 0 . 1 0 0 1 0 1 / /

    64+0+16+8+0+2+0+0.5+0+0+0.0625+0.015625=90.578125(10)

    方法二:

    1011010.100101(2)
    =1×26 + 0×25 + 1×24 + 1×23 + 0×22 + 1×21 + 0×20 + 1×2-1 + 0×2-2 + 0×2-3 + 1×2-4 + 0×2-5 + 1×2-6
    =64+0+16+8+0+2+0+0.5+0+0+0.0625+0+0.015625
    =90.578125(10)

    2. 十进制转二进制

    方法一:整数部分“除2倒取余”,小数部分“乘2正取整”

    90.578125(10)=90(10)+0.578125(10)
    90÷2=45 • • • • • • 0
    45÷2=22 • • • • • • 1
    22÷2=11 • • • • • • 0
    11÷2=5   • • • • • • 1
      5÷2=2   • • • • • • 1
      2÷2=1   • • • • • • 0
      1÷2=0   • • • • • • 1
    90(10)=1011010(2)
    0.578125(10)
    0.578125×2=0.15625• • • • • • 1
    0.15625×2  =0.3125  • • • • • • 0
    0.3125×2    =0.625    • • • • • • 0
    0.625×2      =0.25      • • • • • • 1
    0.25×2        =0.5        • • • • • • 0
    0.5×2          =0           • • • • • • 1
    0.578125(10)=0.100101(2)
    90(10)+0.578125(10)=1011010(2)+0.100101(2)=1011010.100101(2)

    方法二:整数使用“权位展开法”,小数部分“乘2正取整”

    90.578125(10)=64+0+16+8+0+2+0+0.5+0+0+0.0625+0+0.015625

    256 128 64 32 16 8 4 2 1
    / / 1 0 1 1 0 1 0

    0.578125(10)=同上
    90(10)+0.578125(10)=1011010(2)+0.100101(2)=1011010.100101(2)

    二、十进制与八进制互转

    十进制 32786 4096 512 64 8 1 . 0.125 0.015625
    八进制 85 84 83 82 81 80 8-1 8-2

    1.十进制转八进制

    十进制 8 16 24 64 128 192 512 4096 32768
    十进制 81 81×2 81×3 82 82×2 82×3 83 84 85
    八进制 10 20 30 100 200 300 1000 10000 100000

    方法一:整数部分“除8进位法(8(10)=10(8),8×8(10)=100(8),8×8×8(10)=1000(8))”,小数部分“乘8正取整”

    90.578125(10)=90(10)+0.578125(10)=132(8)+0.45(8)=132.45(8)
    90(10)
    90÷8=11 • • • • • • 2
    =11个八进制+2
    =8个八进制+3个八进制+2
    =100+30+2
    =132(8)
    0.578125(10)
    0.578125×8=0.625 • • • • • • 4
    0.625×8      =0        • • • • • • 5
    0.578125(10)=0.45(8)
    注意:如果小数部分乘8的结果永远带有小数部分,就需要根据实际情况“三舍四入”

    方法二:整数部分“除8倒取余”,小数部分“乘8正取整”

    90.578125(10)=90(10)+0.578125(10)=132(8)+0.45(8)=132.45(8)
    90÷8  =11 • • • • • • 2
    11÷8  =  1 • • • • • • 3
    1÷8    =  0 • • • • • • 1
    90(10)=132(8)
    0.578125(10)=0.45(8)

    2.八进制转十进制

    方法一:按权相加法

    132.45(8)=1×83-1+3×81+2×80+4×8-1+5*8-2=64+24+2+4×0.125+5×0.015625=90.578125(10)

    方法二(转换较复杂):整数部分“拆分法(100(8)=8×8(8),1000(8)=8×8×8(8),以数量级进行拆分)”,小数部分“按权相加法”

    132.45(8)
    =100(8)+30(8)+2(10)+(4×8-1)(10)+(5*8-2)(10)
    =8×8(8)+3×8(8)+2+4×0.125+5×0.015625
    =64+24+2+0.578125
    =90.578125(10)

    三、十进制与十六进制互转

    1.十进制转十六进制

    十进制 11 12 13 14 15 16
    十六进制 A B C D E F
    十进制 65536 4096 256 16 . 1 0.0625 0.00390625
    十六进制 164 163 162 161 160 16-1 16-2

    整数部分除16“倒取余”,小数部分乘16“正取整”
    90.578125(10)=90(10)+0.578125(10)=5A(16)+0.94(16)=5A.94(16)
    90(10)=5A(16)
    90÷16=5 • • • • • • 10=A
    5÷16  =0 • • • • • • 5
    0.578125(10)=0.94(16)
    0.578125×16=0.25 • • • • • • 9
    0.25×16        =0      • • • • • • 4

    2.十六进制转十进制(“按权相加”法)

    5A.94(16)=5×162-1+10×161+916-1+4×16-2=80+10+90.0625+4*0.00390625=90.578125

    四、二进制与八进制互转

    二进制 八进制 二进制 十六进制
    000 0 0000 0
    001 1 0001 1
    010 2 0010 2
    011 3 0011 3
    100 4 0100 4
    101 5 0101 5
    110 6 0110 6
    111 7 0111 7
    001 000 10 1000 8
    001 001 11 1001 9
    001 010 12 1010 A
    001 011 13 1011 B
    001 100 14 1100 C
    001 101 15 1101 D
    001 110 16 1110 E
    001 111 17 1111 F

    1. 二进制转八进制:从小数点位置起向左右两边划分,每三个为一组,不足三个的在最左边或最右边添0补齐,对照上边的表进行计算

    1011010.100101=001 011 010.100 101=132.45(8)
                                                 ←↑→

    2. 八进制转二进制:与“二进制转八进制”转换方法相反

    132.45(8)=001 011 010.100 101=1011010.100101(2)

    3. 二进制转十六进制:从小数点位置起向左右两边划分,每四个为一组,不足四个的在最左或最右添0补齐,对照上边的表进行计算

    1011010.100101=0101 1010.1001 0100=5A.94(16)
                                              ←↑→

    4. 十六进制转二进制:与“二进制转十六进制”转换方法相反

    5A.94(16)=0101 1010.1001 0100=1011010.100101(2)

    五、八进制与十六进制互转

    1. 八进制转十六进制:

    八进制数→二进制数→十六进制数
    八进制数→十进制数→十六进制数

    2. 十六进制转八进制:

    十六进制数→二进制数→八进制数
    十六进制数→十进制数→八进制数

    六、.NET Code

    /// <summary>
    /// 二进制转十进制
    /// </summary>
    public static decimal BinaryToDecimalism(decimal binary)
    {
        long integer = (long)binary;
        decimal @decimal = binary - integer;
        integer = Convert.ToInt64(integer.ToString(), 2);
        //使用权位来计算
        var temp = @decimal.ToString().Split('.');
        if (temp.Length <= 1) return integer;
        var decimals = temp[1].ToCharArray();
        decimal tempSum = 0;
        for (int i = 0; i < decimals.Length; i++)
        {
            int value = Convert.ToInt32(decimals[i].ToString());
            tempSum += value * Pow(2, -(i + 1));
        }
        return integer + tempSum;
    }
    
    /// <summary>
    /// 十进制转二进制
    /// </summary>
    /// <param name="decimalism">十进制数</param>
    /// <param name="reservedDecimalNumber">保留二进制小数位数</param>
    /// <returns></returns>
    public static string DecimalismToBinary(decimal decimalism, int reservedDecimalNumber = 32)
    {
        int integerPart = (int)decimalism;
        decimal fractionalPart = decimalism - integerPart;
        string integerPartResult = Convert.ToString(integerPart, 2);//由于Convert.ToDecimal(str)只能保留小数点后18位,所以方法返回字符串
        if (reservedDecimalNumber < 1 || fractionalPart == 0) return integerPartResult;
    
        string[] results = new string[reservedDecimalNumber];
        decimal loopIntegerPart = 0;
        decimal loopFractionalPart = fractionalPart;
        /*小数位乘2正取整*/
        for (int i = 0; i < reservedDecimalNumber; i++)
        {
            loopFractionalPart = loopFractionalPart * 2;
            loopIntegerPart = (int)loopFractionalPart;
            loopFractionalPart = loopFractionalPart - loopIntegerPart;
            if (loopFractionalPart > 0)
            {
                results[i] = loopIntegerPart.ToString();
            }
            else
            {
                results[i] = loopIntegerPart.ToString();
                break;
            }
        }
        return integerPartResult + "." + string.Join("", results);
    }
    
    private static decimal Pow(decimal x, int y)
    {
        decimal value = x;
        if (y > 0)
        {
            for (int i = 1; i < y; i++)
            {
                value *= x;
            }
        }
        else if(y < 0)
        {
            for (int i = 1; i < -y; i++)
            {
                value *= x;
            }
            value = 1 / value;
        }
        else
        {
            value=1;
        }
        return value;
    }
    
    展开全文
  • 1.1、基本原则:按权展开法,即把各数位乘权的i次方后相加1.2、实例:例1:二进制十进制的转换,带小数部分01011010.01B=0×2^7+1×2^6+0×2^5+1×2^4+1×2^3+0×2^2+1×2^1+0×2^0+0×2^-1+1×2^-2=90.25例2:八...

    1.1、基本原则:

    按权展开法,即把各数位乘权的i次方后相加

    1.2、实例:

    例1:二进制与十进制的转换,带小数部分

    01011010.01B=0×2^7+1×2^6+0×2^5+1×2^4+1×2^3+0×2^2  +1×2^1+0×2^0+0×2^-1+1×2^-2 = 90.25

    例2:八进制与十进制的转换,如有小数部分,对应乘相应8的-i次方【字母O,表示八进制】

    245O = 3x8^2+4x8^1+5x8^0 = 229

    例3:十六进制与十进制的转换,如有小数部分,对应乘相应16的-i次方【字母H,表示十六进制】

    F2DH = 15x16^2+2x16^1+13x16^0 = 3885

    2、十进制与非十进制的转换

    2.1、基本原则:

    原则1:整数部分与小数部分分别转换;

    原则2:整数部分采用除基数(转换为2进制则每次除2,转换为8进制每次除8,以此类推)取余法,直到商为0,而余数作为转换的结果,第一次除后的余数为最低为,最后一次的余数为最高位;

    原则3:小数部分采用乘基数(转换为2进制则每次乘2,转换为8进制每次乘8,以此类推)取整法,直至乘积为整数或达到控制精度。

    2.2、实例:

    例1:将十进制数725.625分别转换为十六进制、八进制、二进制

    转换为二进制,整数部分每次除2,小数部分每次乘以2:

    整数部分:                                 小数部分:

    2|725…………..余数=1        最低位           0.625

    2|362…………..余数=0                           ×       2

    2|181…………..余数=1                              1.250…..整数=1         小数部分最高位,靠近点的那位

    2|90……..……余数=0                              0.250

    2|45…………..余数=1                            ×       2

    2|22…………..余数=0                            0.500…..整数=0

    2|11…………..余数=1                            ×       2

    2|5…………..余数=1                            1.000…..整数=1         小数部分最低位,最远点的那位

    2|2…………..余数=0                            0.000

    2|1…………..余数=1        最高位                        >

    0¨商为0,转换结束                           积为0,转换结束

    转换结果为:725.625D=1011010101.101B

    展开全文
  •  例子:二进制数字:1011010 转换为十进制为:90  转换过程如下图: 十进制转换为二进制:  原理:将十进制数字作为被除数,除数为2,做整除运算,得到余数和商,一直除到商为0为止,然后倒序取余数,得到的...

    二进制转换为十进制:

      原理:从二进制数字的右边第一个数字开始,每个数字乘以2的n次方,n从0开始依次递增1,然后将每个乘积相加,结果就是该二进制对应的十进制数字。

      例子:二进制数字:1011010  转换为十进制为:90

      转换过程如下图:

    二进制转为十进制

    十进制转换为二进制:

      原理:将十进制数字作为被除数,除数为2,做整除运算,得到余数和商,一直除到商为0为止,然后倒序取余数,得到的结果就是转换的对应二进制数字

      例子:十进制数字:11  转换为二进制为:1011

      转换过程如下图:

    十进制转为二进制

     

    2019-03-22  17:36:06

     

    转载于:https://www.cnblogs.com/huashanlunjian/p/10579749.html

    展开全文
  • 标题 -(1) 头文件和端口之间关系...sfr P1=0X90 //此乃寄存器的定义地址,定义P1口,如果不想要这么麻烦, 就加宏定义include <reg52.h> ,此宏定义中包含了所有口端的名称 (2). 进制数的快速转换方法: ...
  • 转换成16进制 可以将四个二进制位看成一个十六进制位,之所以将四个二进制位看成一个十六进制位原因是,四个二进制位的值是五 八进制与十六进制之所以形成就是因为是以二进制为基数呈倍数增长形成的。 0101-...
  • 一、进制数 1. 二进制 ...1. 十进制转二进制十进制数不断 **除 2 ** 直到 商是 0 时结束,然后将 余数倒序 写出 2. 二进制转十进制 ​ 用 权重 转换 3. 二进制转八进制、十六进制 ​ 顺序是 从左往右
  • 例如十进制90 根据这个过程我们就得到了5A,那么根据十六进制的开头用前缀0x 90的十六进制0x5A (小写a大写A都可以) 发散: 1、为什么十六进制用4个二进制位表示嘛? 因为4个二进制位的最大值是15。 2、有32...
  • 进制转换

    2021-02-23 19:54:34
    其他进制转十进制:从右向左,第一个数乘20(即1),第个数乘21,以此类推。 T1:进制转换 题目描述 输入一个十进制下的正整数 N 和 R,输出这个整数N对应的R进制数。 输入 一行,包含两个正整数N和R。(N<=1e9,2&...
  • #include <stdio.h> int main(void){ int p; sscanf("0x90","%x",&p); printf("0x%x\n",p); return 0;} 转载于:https://www.cnblogs.com/zhangshenghui/p/11345722.html
  • [A-Z a-z 0-9]的ascii码十进制对照表

    千次阅读 2019-03-01 16:47:50
    做字符串相关的编程题目时,时常会遇到把字母转换为数字: 此时就必须要记住大小写转换几个关键ascii码: 'a~z'=97~122 'A~Z'=65 ~ 90 '0~ 9'=48 ~ 57 ... 二进制 十进制 十六进制 图形 ...
  • 今日大寒节气,也是24节气中的最后一个节气了!春节马上就要来了,各位加油!En十进制简介十进制:有 0 1 2 3 4 5 6 7 8 9 十个状态 ;10 11 12 13 14 15 ....19 20... 90....99 100二进制二进制: 有 0 1 两个状态 ...
  • 程序员二进制计算器 v1.36

    热门讨论 2014-07-16 16:21:43
    专为程序员打造的计算器,二进制运算强大,支持64位。 采用表达式驱动,输入表达式便即时显示结果,抛弃传统计算器繁琐的按钮,表达式可粘贴或回调重复使用。 支持二进制串直接运算,如0b1101 & 0b0011= 0b0001。 ...
  • 进制、标识符、变量、常量 1.进制类型: 十进制 二进制 八进制 十六进制 基数 10 2 8 ...二进制转十进制: ...​ =90 十进制转二进制: ASCII(阿寺克码): ​ 常用的: ​ 0 十进制是对应
  • 例如,用户提供了一个十进制数:10,要求将此数据以二进制形式转换,则通过进制转换器转换的最终结果应该:1010。 提示:此进制转换器可以在 2-36 进制之间对数据进行任意转换。各进制中对应的数字如下表: ASCII...
  • D02 标识符

    2018-05-22 22:18:59
    2.1关键字 2.2标识符 在程序中自定义的一些名称 2.4变量与常量 布尔型常量:true false null常量:只有一个数值就是null 对于整数形式,有三种: 十进制数 八进制(用0开头) ... 十进制90转换成十六进制...
  • IP地址是32位的。例如:01110000000011110101101011000011好记吗?好写吗?所以把它均分成四段,每段8个,以点号分隔例如:01110000. 00001111 .01011010 .11000011这样还是不好记...点分十进制转二进制: publi...
  • 嵌入式(二十二):定时器/计数器

    千次阅读 2020-05-29 15:40:16
    1、绝对编码器中用“二进制编码”问题: a、随着分辨率提高(bit数变大),问题变得复杂 b、二进制编码对各bit光电检测一致性要求很高 ①、制造难度加大,甚至不可能 ②、稍有差错,可能造成重大信息错误 2、“格雷...
  • Python3 基础

    2018-06-06 18:26:38
    type()p判断字符类型0b0110b10十进制20o11十六进制90xAE174bin (10) 二进制转换为十进制'0b1010'int(0o11)9任意进制转化为十进制oct(100)任意进制转化为十六进制’0o144'2/1&gt;&gt;2.0 2//1&gt;&...
  • python

    2018-06-23 19:27:00
    type()p判断字符类型:0b0110b10十进制20o11十六进制90xAE174bin (10) 二进制转换为十进制'0b1010'int(0o11)9任意进制转化为十进制oct(100)任意进制转化为十六进制’0o144'2/1&gt;&gt;2.0 2//1&gt;&...
  • 一,通用的ASCII码对照表 图解ASCII码对照表图,以字符A为例Dec表示十进制,如65Hx表示十六...具体字符转换函数说明请参考[PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明]十进制转二进制 decbin() 函
  • float编码方式(来自sonikk的专栏)

    千次阅读 2016-09-29 13:12:56
    先复习一下十进制二进制转换的知识点,以及小端大端的知识点: 十进制数与二进制数的转换 http://course.cug.edu.cn/21cn/%E7%94%B5%E5%AD%90%E6%8A%80%E6%9C%AF/resource/knowledge/zsd11/z1103.htm ...
  • c++中的int和float存储编码方法

    千次阅读 2013-05-25 18:54:01
    先复习一下十进制二进制转换的知识点,以及小端大端的知识点: 十进制数与二进制数的转换 http://course.cug.edu.cn/21cn/%E7%94%B5%E5%AD%90%E6%8A%80%E6%9C%AF/resource/knowledge/zsd11/z1103.htm ...
  • 把一组8位二进制数(无符号数)转换为十进制数并显示出来 ;msort.asm data segment nums1 db 100,34,78,9,160,200,90,65 data ends code segment assume cs:code start: mov ax,data mov ds,ax mov es,ax ...
  • 50道MYSQL基础练习题

    2020-07-14 22:47:11
    /1.ascii(str):返回指定字符串的第一个字符的ascii码 dual 虚表/ select ascii(‘Aello’) from dual ...select CONV(‘90’,10,2) --90十进制转二进制 select CONV(101011101,2,10) --二进制转十
  • 说明:本文描述的所有“黑魔法”都以Python3做示例代码,Python2示例代码请自行转换。本文不探讨Python基础课程,基础课程请自行学习。...17# 以上输入不允许出现小数1.2 进制转换# 十进制转二、八、十六进制...
  • python的一些内置函数

    2017-10-29 12:29:00
    r = bin(11)# print(r)2 # oct()#八进制# r = oct(14)# print(r)3 # int()#十进制4 # hex()#十六进制# r = hex(14)# print(r)5 #二进制转十进制# i = int('0b11',base = 2)# print(i)6# 生成一个随机数,65-90 ...
  • java......关于编码

    2017-08-04 12:34:08
    显示的时候也是将二进制数转换为十进制数字,去查找对应码表 来进行解码。ASCII:第一张码表,只兼顾了拉丁字符和常用符号 a--97 z--122 A--65 Z--90 0--48 1--49 9--57 该码表一共有128对,0-127的数字,每个...
  • java基础--关于编码

    2018-02-04 12:25:18
    显示的时候也是将二进制数转换为十进制数字,去查找对应码表来进行解码。ASCII:第一张码表,只兼顾了拉丁字符和常用符号a–97 z–122 A–65 Z–90 0–48 1–49 9–57 该码表一共有128对,0-127的数字,每个数字代表...
  • 201812-3 CIDR合并

    2020-03-17 20:45:55
    试题编号: 201812-3 试题名称: CIDR合并 时间限制: 1.0s 内存限制: 512.0MB 样例输入 2 1 2 样例输出 1.0.0.0/8 ...90分 运行超时 可能是将点分十进制转换为二进制字符串形式,最后输出的时候...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 159
精华内容 63
关键字:

十进制90转二进制