一、数制转换

目标:

1)请将下列数字转换为十进制数:

(110010011111)2 、(10110101110)2

2)请将下列十进制数转换为二进制:

156、2608、1043

方案:

使用按权展开法将二进制数转换为十进制数,使用短除法除2取余计算十进制数转换为二进制数。

步骤:

步骤一:二进制转十进制

1)二进制数110010011111,转为十进制的结果是3231,转换过程如下:

(1100 1001 1111)2
    = 1x211+1x210+0x29+0x28+1x27+0x26+0x25+1x24+1x23+1x22+1x21+1x20
    = 2048+1024+0+0+128+0+0+16+8+4+2+1
    = 3231

2)二进制数10110101110,转为十进制的结果是1454,转换过程如下:

(101 1010 1110)2
    = 1x210+0x29+1x28+1x27+0x26+1x25+0x24+1x23+1x22+1x21+0x20
    = 1024+0+256+128+0+32+0+8+4+2+0
    = 1454

步骤二:十进制转二进制

1)十进制数156,转为二进制的结果是10011100,转换过程如下:

156除以2,商为78,余数为0;
    78除以2,商为39,余数为0;
    39除以2,商为19,余数为1;
    19除以2,商为9,余数为1;
    9除以2,商为4,余数为1;
    4除以2,商为2,余数为0;
    2除以2,商为1,余数为0;
    1除以2,商为0,余数为1;
    综上,将余数倒序排列,得10011100 。

2)十进制数2608,转为二进制的结果是1010 0011 0000,转换过程如下:

2608除以2,商为1304,余数为0;
    1304除以2,商为652,余数为0;
    652除以2,商为326,余数为0;
    326除以2,商为163,余数为0;
    163除以2,商为81,余数为1;
    81除以2,商为40,余数为1;
    40除以2,商为20,余数为0;
    20除以2,商为10,余数为0;
    10除以2,商为5,余数为0;
    5除以2,商为2,余数为1;
    2除以2,商为1,余数为0;
    1除以2,商为0,余数为1;
    综上,将余数倒序排列,得1010 00111 1100 。

3)十进制数1043,转为二进制的结果是100 0001 0011,转换过程如下:

1043除以2,商为521,余数为1;
    521除以2,商为260,余数为1;
    260除以2,商为130,余数为0;
    130除以2,商为65,余数为0;
    65除以2,商为32,余数为1;
    32除以2,商为16,余数为0;
    16除以2,商为8,余数为0;
    8除以2,商为4,余数为0;
    4除以2,商为2,余数为0;
    2除以2,商为1,余数为0;
    1除以2,商为0,余数为1;
    综上,将余数倒序排列,得100 0001 0011 。

Network基础(二):数制转换的更多相关文章

  1. Python全栈开发【基础二】

    Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...

  2. Java 基础 IO流(转换流,缓冲)

    一,前言 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStr ...

  3. 2、JavaScript 基础二 (从零学习JavaScript)

     11.强制转换 强制转换主要指使用Number.String和Boolean三个构造函数,手动将各种类型的值,转换成数字.字符串或者布尔值. 1>Number强制转换 参数为原始类型值的转换规 ...

  4. Java基础-进制转换

    Java基础-进制转换 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Java 程序中常用的进制 1>.十进制,由“0123456789” 这10个数字组成,逢十进一: ...

  5. NOIP考前复习-数制转换,数论模板与文件读写

    数制转换有两种题型,一般一题,分值1.5分. 题型一:R进制转十进制 解法就是:按权展开,但要注意各个位的权,最低位(最右边)的权是0次方,权值为1. 纯整数的情况: (11010110)2 = 1× ...

  6. 【.Net基础二】浅谈引用类型、值类型和装箱、拆箱

    目前在看CLR via C#,把总结的记下来,索性就把他写成一个系列吧. 1.[.Net基础一] 类型.对象.线程栈.托管堆运行时的相互关系 2.[.Net基础二]浅谈引用类型.值类型和装箱.拆箱 引 ...

  7. 10-08C#基础--进制转换

    (一).数制 计算机中采用的是二进制,因为二进制具有运算简单,易实现且可靠,为逻辑设计提供了有利的途径.节省设备等优点,为了便于描述,又常用八.十六进制作为二进制的缩写.一般计数都采用进位计数,其特点 ...

  8. Java面试题总结之Java基础(二)

    Java面试题总结之Java基础(二) 1.写clone()方法时,通常都有一行代码,是什么? 答:super.clone(),他负责产生正确大小的空间,并逐位复制. 2.GC 是什么? 为什么要有G ...

  9. 数制转换itoa atoi int转字符串 字符串转int string转int int转string

    在苦于昨晚最后一个数制转换题,他的转换结果必须是整形数,纳尼?转换完放数组里又要变成整形数.这是什么操作,而且如果是16进制,用字母A,B-表示,在进行运算时都难以计算. 突发奇想,当十进制成立的时候 ...

随机推荐

  1. sqlserver 中的时间算法

    DECLARE @Date DATETIME SET @Date=GETDATE() --前一天,给定日期的前一天 ,@Date) AS '前一天' --后一天,给定日期的后一天 ,@Date) AS ...

  2. Android内存tips

    1. Android应用程序的默认最大内存值为16M,如何修改Android应用程序的默认最大内存值? 修改或添加/system/build.prop中的配置项: root@NX551J:/syste ...

  3. flutter中的列表组件

    列表布局是我们项目开发中最常用的一种布局方式.Flutter 中我们可以通过 ListView 来定义列表项,支持垂直和水平方向展示.通过一个属性就可以控制列表的显示方向.列表有以下分类:  垂直列表 ...

  4. Linux配置Selenium+Chrome+Python

    ---恢复内容开始--- 最近一个月没有更新博客了.最近都在复习LINUX与PYTHON知识.决定以后在LINUX环境下学习新知识. 包括后期的框架学习与平台知识方面. 直接记录今天下午的学习成果. ...

  5. Hive date_add 和 date_diff 函数

    date_add 函数 例子:date_add('day',-1,current_date) date_diff 函数 例子:date_diff('day',cast(a.dt1 as timesta ...

  6. 七. jenkins部署springboot项目(4)-linux环境--远程调试

    前提:linux环境,jenkins服务器和springboot服务器不在一台机器. linux环境,jenkins这里就不说了,主要说下和windows环境的不同. 1. jenkins服务器连接s ...

  7. 浅谈 STM32 硬件I2C的使用 (中断方式 无DMA 无最高优先级)(转)

    引子 STM32的硬件I2C很多人都对它望而却步.因为很多电工都说,STM32 硬件 I2C有BUG.不稳定.死机等等……最后都使用GPIO模拟I2C. 的确,模拟I2C好用.但是在我看来在一个72M ...

  8. struct和class的相同点与不同点

    struct是c语言中常用来定义结构体时使用的 class是c++中用来定义类时所使用的 相同 struct(结构体)和class(类)内均可有不同个数.不同类型的数据 定义时 都必须在前面加上str ...

  9. sourcetree配置gitlab

    一.准备 1.安装git,下载地址:https://git-scm.com/download 安装教程百度一下      git客户端(1.产生gitlab服务端和本地git相互传输时所需要校验的私钥 ...

  10. 从现在开始强迫自己使用 Reflect

    静态方法 Reflect.apply(target, thisArg, args) 等同于 Function.prototype.apply.call(func, thisArg, args) Ref ...