`
cms5
  • 浏览: 11343 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

二进制与十进制的转换

阅读更多
二进制的1101转化成十进制

IP地址分5类,A、B、C为基本类
A类:1.0.0.1—126.255.255.254
B类:128.0.0.1—191.254.255.254
C类:192.0.1.1—223.255.254.254
D类为多播地址,不常用
E类保留

1101=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13
转化成十进制,要从右到左,用二进制的每个数去乘以2的相应次方,次方要从0开始

十进制整数转二进制
如:255=(11111111)B
255/2=127=====余1
127/2=63======余1
63/2=31=======余1
31/2=15=======余1
15/2=7========余1
7/2=3=========余1
3/2=1=========余1
1/2=0=========余1
789=1100010101
789/2=394.5 =1 第10位
394/2=197 =0 第9位
197/2=98.5 =1 第8位
98/2=49 =0 第7位
49/2=24.5 =1 第6位
24/2=12 =0 第5位
12/2=6 =0 第4位
6/2=3 =0 第3位
3/2=1.5 =1 第2位
1/2=0.5 =1 第1位

怎么判断IP地址的是否在同一网段。  相信好多人都认为IP只要前三段相同,就是在同一网段了,其实,不是这样的,同样,我想把IP的每一段转换为一个二进制数,这里就拿IP:192.168.0.1,子网掩码:255.255.255.0做实验吧。

192.168.0.1 
11000000.10101000.00000000.00000001 
(这里说明一下,和子网掩码一样,每段8位,不足8位的,前面加0补齐。)

IP    11000000.10101000.00000000.00000001
子网掩码  11111111.11111111.11111111.00000000

在这里,向大家说一下到底怎么样才算同一网段。

要想在同一网段,必需做到网络标识相同,那网络标识怎么算呢?  各类IP的网络标识算法都是不一样的。A类的,只算第一段。B类,只算第一、二段。C类,算第一、二、三段。  算法只要把IP和子网掩码的每位数AND就可以了。 
AND方法:0和1=0 0和0=0 1和1=1  如:And 192.168.0.1,255.255.255.0,先转换为二进制,然后AND每一位

IP      11000000.10101000.00000000.00000001 子网掩码    11111111.11111111.11111111.00000000 得出AND结果  11000000.10101000.00000000.00000000 
转换为十进制192.168.0.0,这就是网络标识,
再将子网掩码反取,也就是00000000.00000000.00000000.11111111,与IP:192.168.0.1 AND 得出结果00000000.00000000.00000000.00000001,转换为10进制,即0.0.0.1, 这0.0.0.1就是主机标识。   

要想在同一网段,必需做到网络标识一样。     

我们再来看看这个改为默认子网掩码的B类IP 
如IP:188.188.0.111,188.188.5.222,子网掩码都设为255.255.254.0,在同一网段吗? 先将这些转换成二进制 
188.188.0.111
10111100.10111100.00000000.01101111

188.188.5.222
10111100.10111100.00000101.11011010
255.255.254.0 11111111.11111111.11111110.00000000
分别AND,
得  10111100.10111100.00000000.00000000
10111100.10111100.00000100.00000000
网络标识不一样,即不在同一网段。
分享到:
评论

相关推荐

    二进制与十进制转换PPT学习教案.pptx

    二进制与十进制转换PPT学习教案 一、十进制系统 十进制系统是一种基于10的数制系统,具有10个数字符号:0, 1, 2, 3, 4, 5, 6, 7, 8, 9。各位权是以10为底的幂。进位规则是逢10进1,借1当10。例如,十进制数315.76...

    二进制与十进制转换VB函数

    ### 二进制与十进制转换VB函数 在计算机科学领域中,数据表示和转换是非常重要的基础概念之一。在编程语言中,我们经常需要处理不同的数字系统之间的转换,例如二进制到十进制或者反过来。Visual Basic (VB) 是一种...

    进制间的转换二进制与十进制转换流程图解

    这里主要探讨的是二进制和十进制之间的转换方法。 **一、整数部分的转换** 1. **从十进制到二进制:短除法** 整数部分的转换通常采用短除法。例如,将十进制数156转换为二进制: - 首先用2去除156,得到商78余0...

    一个简单二进制与十进制的转换器

    本项目是一个使用C语言编写的简单二进制与十进制转换器,它能够帮助用户在两者之间进行快速转换。下面我们将深入探讨二进制与十进制的基本概念、转换原理以及C语言实现这些转换的方法。 首先,我们要理解二进制和十...

    c# 二进制与十进制的转换

    本文将深入探讨如何在C#中进行二进制与十进制之间的转换,并通过一个简单的控制台应用程序实例来演示这一过程。 二进制系统是基于2的,只有两个符号:0和1。而我们日常生活中使用的十进制系统则是基于10的,有十个...

    进制数转换二进制八进制十进制十六进制之间转换方法PPT学习教案.pptx

    * 十进制转换为二进制:将十进制数除以2,商数作为高位,余数作为低位。 * 二进制转换为十进制:将二进制数按位权乘以2的N-1次方。 (2)十进制与八进制之间的转换: * 十进制转换为八进制:将十进制数除以8,商数...

    二进制转十进制,十进制转二进制的原理

    ### 二进制与十进制转换原理详解 在计算机科学和信息技术领域中,数据的表示和处理至关重要。其中,二进制与十进制之间的转换是基础且重要的概念之一。本文将详细介绍从十进制转二进制以及从二进制转十进制的方法,...

    十进制与二进制转换课件

    关于十进制与二进制转换的讲解课件

    二进制转换为十进制(Verilog代码)

    虽然这种方法可能在某些特定应用中有效,但并不是通用的二进制到十进制转换方法。 总之,这段 Verilog 代码提供了一种非标准的方法将32位二进制数转换为十进制数。它利用逐位检查和位移操作,对输入的二进制数进行...

    基础算法-python二进制与十进制的相互转换

    【基础算法】-python二进制与十进制的相互转换 # 二进制转换十进制方法一: def BtoD(n): d=0 power=0 while n>0: d+=2**power*(n%10) n//=10 power+=1 return d num=int(input('请输入一个二进制数字:')) ...

    二进制十进制等转换工具

    例如,“进制转换工具.exe”很可能是一个执行二进制与十进制转换的程序,用户只需输入相应的数值,就可以得到另一种进制的表示。这样的工具简化了手动计算的过程,提高了效率,尤其在处理大量数据或复杂计算时更为...

    十进制转二进制的方法

    十进制数转二进制数、八进制数、十六进制数的方法是相同的,即整数部分用除基取余的算法,小数部分用乘基取整的方法,然后将整数与小数部分拼接成一个数作为转换的最后结果。 例如,要将 16 转换成二进制数,可以...

    二进制十进制互转

    在计算机科学中,二进制和十进制是两种最常见的数字表示法。二进制系统(Binary System)基于2的幂次...在C++中,通过自定义函数或类,我们可以灵活地处理整数和浮点数的二进制与十进制转换,包括带有小数部分的情况。

    Multisim数字模拟电路仿真实例源文件- 八位二进制转三位十进制电路.zip

    一、二进制与十进制转换基础 二进制系统是计算机科学的基础,它只使用两个符号(0和1)来表示数值。而十进制是我们日常生活中常用的计数系统,由0到9这十个符号组成。将二进制数转换为十进制数是计算机处理数据时...

    c++,二进制转换十进制

    c++ 二进制转换十进制 double power(double x,int n) { double v=1; while(n--) { v=v*x; } return v; }

    二进制八进制十进制十六进制之间的转换算法.pdf

    十进制转换为二进制可以分为整数部分和小数部分。整数部分使用除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数...

    二进制转十进制,十进制转二进制的算法

    ### 二进制与十进制转换算法详解 #### 一、引言 在计算机科学领域,二进制和十进制之间的转换是基础而重要的技能之一。无论是编程还是计算机系统设计,掌握这两种数制之间的转换方法对于理解和解决实际问题至关...

    汇编语言进制(二进制,八进制,十进制,十六进制)转换

    要将十进制转换为二进制或八进制,可以使用除法和取余的方法。 十六进制(Hexadecimal)是基于16的计数系统,使用0到9的数字和A到F(代表10到15)的字母。在汇编语言中,十六进制是常见的表示方式,因为它可以简洁...

    无符号数二进制转十进制

    在IT领域,尤其是在计算机科学与技术专业中,二进制与十进制转换是一项基础而重要的技能。本文将深入解析如何使用汇编语言实现无符号数的二进制输入到十进制输出的过程,通过分析给定代码段,我们将详细了解其中涉及...

    二进制和十进制之间的转换

    主要实现二进制和十进制的数字转换的源代码,void CharToHex(char * dest, char * buffer , int len)中实现了字母间的二进制转换

Global site tag (gtag.js) - Google Analytics