精华内容
下载资源
问答
  • 数制及相互转换一、单选题1、下列数据中数值最小的是A、01110000BB、249DC、125QD、AAH2、下列数据中数值最大的是A、3FHB、64DC、77QD、111110B3、下列数据中数值最大的是A、100HB、100DC、100QD、100B4、十进制数24...

    数制及相互转换

    1-124-jpg_6_0_______-596-0-0-596.jpg

    一、单选题

    1、下列数据中数值最小的是

    A、01110000B

    B、249D

    C、125Q

    D、AAH

    2、下列数据中数值最大的是

    A、3FH

    B、64D

    C、77Q

    D、111110B

    3、下列数据中数值最大的是

    A、100H

    B、100D

    C、100Q

    D、100B

    4、十进制数24转换成二进制数是

    A、11100

    B、11010

    C、11000

    D、10100

    5、下列数据中数值最小的是

    A、11110000(二进制)

    B、249(十进制)

    C、274(八进制)

    D、FA(十六进制)

    6、下列数据中数值最大的是

    A、11101101(二进制)

    B、235(十进制)

    C、351(八进制)

    D、EE(十六进制)

    7、下列各数中最大的是

    A、11010110B

    B、D7 H

    C、214D

    D、325Q

    8、与二进制数100101等值的十进制数是

    A、34

    B、35

    C、36

    D、37

    9、与十进制数256等值的二进制数是

    A、1000000

    B、10000000

    C、100000000

    D、1000000000

    10、与十六进制数ACE等值的十进制数是

    A、2766

    B、2765

    C、2764

    D、2763

    11、十六进制数111与八进制数111之和,用八进制数表示为

    A、310

    B、1222

    C、1000

    D、532

    12、按某种进制运算2 × 4=12,那么4 × 5为

    A、20

    B、32

    C、24

    D、12

    13、若216是某种数制的一个数,它的值与十六进制数8E相等,则该数是()进制数。

    A、六

    B、八

    C、九

    D、十

    14、下列各数中,属于合法的五进制数的是

    A、216

    B、123

    C、354

    D、189

    15、下列无符号十进制中,能用8位二进制表示的是

    A、257

    B、288

    C、256

    D、255

    16、无符号二进制数后加上一个0,形成的数是原来的几倍?

    A、1

    B、2

    C、1/2

    D、4

    17、下列数据中数值最大的是

    A、(10000)2

    B、(17)8

    C、(17)10

    D、(10)16

    18、某学校有1500名学生,若用二进制来编学号,需要多少位来表示。

    A、10

    B、11

    C、12

    D、13第1页

    19、十进制数153转换成二进制数应为

    A、10011001

    B、10100001

    C、10000110

    D、1110110

    20、与二进制数1011001等值的十进制数是

    A、88

    B、98

    C、89

    D、92

    21、将八进制数154转换成二进制数是

    A、1111010

    B、1110100

    C、1110110

    D、1101100

    22、下列数据中最小的是

    A、1110001

    B、35Q

    C、27H

    D、65D

    23、将十六进制数163转换成二进制数是

    A、1101010101

    B、110101010

    C、1110101011

    D、101100011

    24、与十进制776等值的十六进制数是

    A、308

    B、213

    C、231

    D、132

    二、多选题

    1、下列数中,与(123)12 的值相同的有

    A、(10101011)2

    B、(253)8

    C、(170)10

    D、(AB)16

    2、下列数中,数值相等的数据有

    A、(101010)2

    B、42

    C、(52)8

    D、(2A)16

    3、下列数中,与八进制数100相等的是

    A、(1000000)2

    B、(144)6

    C、65

    D、(40)16

    4、下列数中,与十六进制数100相等的是

    A、(100000000)2

    B、(400)8

    C、256

    D、(194)12

    5、下列叙述正确的是

    A、计算机内所有的信息都转换为二进制进行存储和处理

    B、在计算机内部使用二进制有很多优点

    C、计算机能直接识别二进制数和八进制数

    D、二进制是由“1”和“2”两个基本符号组成

    6、与二进制数11011等值的数是

    A、330

    B、27D

    C、27H

    D、1BH

    7、与十进制数55等值的数是

    A、110110B

    B、110111B

    C、67Q

    D、37H

    8、与八进制数73等值的数是

    A、111110B

    B、59D

    C、49H

    D、2BH

    9、计算机内部采用二进制来表示信息和进行运行的原因是

    A、两种物理状态容易实现

    B、两种状态的系统稳定性高

    C、二进制运算简单

    D、硬件容易实现

    三、判断题

    1、152是某种数制的一个数,若它的值要与十六进制数6A相等,则该数必须是十进制数。

    2、十六进制的17与八进制的27是等值的,十六进制的27和八进制的47也是等值的。

    3、与十六进制数7DQ等值的十进制数是2000。

    4、与十进制数4095等值的十六进制数是FFF。

    5、以计算机处理的信息最终都必须转换成二进制编码,才能被计算机识别。

    6、把二进制数小数点向右移动1位,数值就扩大到原来的2倍。

    7、把任意R进制数按权展开求和,就实现了R进制对十进制的转换。第2页

    3-309-png_6_0_0_135_304_498_348_892.979_1262.879-443-0-370-443.jpg

    奔波在俗世里,不知从何时起,飘来一股清流,逼着每个人优秀。

    人过四十,已然不惑。我们听过别人的歌,也唱过自己的曲,但谁也逃不过岁月的审视,逃不过现实的残酷。如若,把心中的杂念抛开,苟且的日子里,其实也能无比诗意。第3页

    借一些时光,寻一处宁静,听听花开,看看花落,翻一本爱读的书,悟一段哲人的赠言,原来,日升月落,一切还是那么美。

    洗不净的浮沉,留给雨天;悟不透的凡事,交给时间。很多时候,人生的遗憾,不是因为没有实现,而是沉于悲伤,错过了打开心结的时机。

    有人说工作忙、应酬多,哪有那么多的闲情逸致啊?记得鲁迅有句话:“时间就像海绵里的水,只要挤总是有的。”

    不明花语,却逢花季。一路行走,在渐行渐远的时光中,命运会给你一次次洗牌,但玩牌的始终是你自己。

    坦白的说,我们遇到困扰,经常会放大自己的苦,虐待自己,然后落个遍体鳞伤,可怜兮兮地向世界宣告:自己没救了!可是,那又怎样?因为,大多数人关心的都是自己。一个人在成年后,最畅快的事,莫过于经过一番努力后,重新认识自己,改变自己。学会了独自、沉默,不轻易诉说。因为,更多的时候,诉说毫无意义。

    伤心也好,开心也好,过去了,都是曾经。每个人都要追寻活下去的理由,心怀美好,期待美好,这个世界,就没有那么糟糕。

    或许,你也会有这样的情节,两个人坐在一起,杂乱无章的聊天,突然你感到无聊,你渴望安静,你想一个人咀嚼内心的悲与喜。

    透过窗格,发着呆,走着神,搜索不到要附和的词。那一刻,你明白了,这世间不缺一起品茗的人,缺的是一个与你同步的灵魂。

    没有了期望的懂,还是把故事留给自己吧!每个人都是一座孤岛,颠沛流离,浪迹天涯。有时候,你以为找到了知己,其实,你们根本就是两个世界的人。

    花,只有在凋零的时候,才懂得永恒就是在落红中重生;人,只有在落魄的时候,才明白力量就是在破土中崛起?.

    因为防备,因为经历,我们学会了掩饰,掩饰自己内心的某些真实,也在真实中,扬起无懈可击的微笑,解决一个又一个的困扰。

    人生最容易犯的一个错误,就是把逝去的当作最美的风景。所以,不要活在虚妄的世界,不要对曾经存在假设,不要指望别人太多。

    有些情,只可随缘,不可勉强;有些人,只可浅交,不可入深;有些话,只可会意,不可说穿。

    或许,有这么一段情,陪你度过漫长冰冷的寒冬;有那样一个人,给你抑郁的天空画上了温暖的春阳。

    但时光,总会吹散很多往事,把过去一片片分割,移植到不同区域,并贴上标签,印着不同的定义,也定义着自己的人生态度。

    正如庄子所说:“唯至人乃能游于世不避,顺人而不失己。”外在的世界,只是一个形式,而你内在的世界,才是真正的江山。

    丰富自己,取悦自己,随缘,随顺,随境,你的心才会敞开,才会接纳更多的有可能。这样的人生,眼睛里的笑意,尽是踏实与真味。

    年少时,那些说给蓝天白云的梦想,早已遗忘在风中,再也飞不到岁月的枝头。褪去稚气与懵懂,我更喜欢现在的自己,心里撑着宽阔,却不动声色。

    即便,一份静谧的从容是多么的难,但我依旧期待。我相信,人生还会很长,还会一直邂逅,但最美的,必是那个明天的自己。第4页

    5-581-png_6_0_0_135_119_588_654_892.979_1262.879-523-0-676-523.jpg

    \第5页

    展开全文
  • 1 #-*- coding: utf-82 from decimal importDecimal3 def bTod(n, pre=4):4 '''5 把一个带小数的二进制数n转换成十进制6 小数点后面保留pre位小数7 '''8 string_number1 = str(n) #number1 表示二进制数,number2...

    1 #-*- coding: utf-8

    2 from decimal importDecimal3 def bTod(n, pre=4):4 '''

    5 把一个带小数的二进制数n转换成十进制6 小数点后面保留pre位小数7 '''

    8 string_number1 = str(n) #number1 表示二进制数,number2表示十进制数

    9 decimal = 0 #小数部分化成二进制后的值

    10 flag =False11 for i in string_number1: #判断是否含小数部分

    12 if i == '.':13 flag =True14 break

    15 if flag: #若二进制数含有小数部分

    16 string_integer, string_decimal = string_number1.split('.') #分离整数部分和小数部分

    17 for i inrange(len(string_decimal)):18 decimal += 2**(-i-1)*int(string_decimal[i]) #小数部分化成二进制

    19 number2 = int(str(int(string_integer, 2))) +decimal20 returnround(number2, pre)21 else: #若二进制数只有整数部分

    22 return int(string_number1, 2)#若只有整数部分 直接一行代码二进制转十进制 python还是骚

    23

    24 def dTob(n, pre=4):25 '''

    26 把一个带小数的十进制数n转换成二进制27 小数点后面保留pre位小数28 '''

    29 string_number1 = str(n) #number1 表示十进制数,number2表示二进制数

    30 flag =False31 for i in string_number1: #判断是否含小数部分

    32 if i == '.':33 flag =True34 break

    35 ifflag:36 string_integer, string_decimal = string_number1.split('.') #分离整数部分和小数部分

    37 integer =int(string_integer)38 decimal = Decimal(str(n)) -integer39 l1 = [0,1]40 l2 =[]41 decimal_convert = ""

    42 whileTrue:43 if integer == 0: break

    44 x,y = divmod(integer, 2) #x为商,y为余数

    45 l2.append(y)46 integer =x47 string_integer = ''.join([str(j) for j in l2[::-1]]) #整数部分转换成二进制

    48 i =049 while decimal != 0 and i

    展开全文
  • 一、 十进制二进制之间的转换 1.1 十进制转换二进制,分为整数部分和小数部分 【1】整数部分 ...举个栗子:将十进制数168转换二进制数 除数 被除 商 余数 168 / 2 = 84 ...... ...

    一、 十进制与二进制之间的转换

    1.1 十进制转换为二进制,分为整数部分和小数部分

    【1】整数部分

    方法:采用"除2取余,逆序排列"法

    即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。

    举个栗子:将十进制数168转换为二进制数

                 除数       被除数           商           余数

    第0位:168      /        2       =     84  ......    0

    第1位:84       /         2       =     42 ......     0

    第2位:42       /         2       =     21 ......     0

    第3位:21       /         2       =     10 ........   1

    第4位:10       /         2       =      5 ........    0

    第5位:5         /         2       =      2 ........    1

    第6位:2         /         2       =      1 ........    0

    第7位:1         /         2       =      0 ........    1

    最后,读数字从最后的余数向前读,即10101000

    (2)小数部分

    方法:采用"乘2取整,顺序排列"法

    即将小数部分乘以2,然后取整数部分;剩下的小数部分继续乘以2,然后取整数部分;剩下的小数部分又乘以2,一直取到小数部分为零为止。

    如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时,就根据后面一位是0还是1,取舍,如果是零,舍掉,如果是1,向入一位。

    换句话说就是0舍1入。读数要从前面的整数读到后面的整数。

    栗子1:将0.125换算为二进制

                 乘数            乘数           积           整数部分      小数部分

    第2位:0.125     *      2       =     0.25    ......     0    ......    0.25 

    第1位:0.25       *      2       =     0.5      ......     0    ......    0.5

    第0位:0.5         *      2       =     1.0      ......     1    ......    0.0

    最后读数,从整数部分自上而下排序,第一位读起,读到最后一位,即为0.001

    栗子2:将0.45转换为二进制(保留到小数点第四位)

                乘数            乘数              积           整数部分     小数部分

    第4位:0.45      *      2         =     0.9    ......     0      ......    0.9

    第3位:0.9        *      2         =     1.8    ......     1      ......    0.8 

    第2位:0.8        *      2         =     1.6    ......     1      ......    0.6 

    第1位:0.6        *      2         =     1.2    ......     1      ......    0.2 

    第0位:0.2        *      2         =     0.4    ......     0      ......    0.4

    从上面步骤可以看出,当第5次做乘法时候,得到的积是0.4,那么小数部分继续乘以2,得0.8;继续,0.8又乘以2的,得到1.6;然后一直乘下去,最后不可能得到小数部分为零。因此,这个时候只好学习十进制的方法进行四舍五入了,但是二进制只有0和1两个,于是就出现0舍1入。这个也是计算机在转换中会产生误差,但是由于保留位数很多,精度很高,所以可以忽略不计。

    最后度数,从整数部分自上而下,可知将0.45转换为二进制约等于0.0111

    上面介绍的方法是十进制转换为为二进制的方法,需要大家注意的是:

    • 十进制转换为二进制,需要分成整数小数两个部分分别转换。

    • 当转换整数时,用的是除2取余法;

    • 当转换小数时,用的是乘2取整法。

    • 注意转换进制数的读数方向。

    因此,我们从上面的方法,我们可以得出十进制数168.125转换为二进制为10101000.001,或者十进制数转换为二进制数约等于10101000.0111。


    1.2 二进制转换为十进制

    方法:按权相加法

    以小数点(.)为分界点,整数部分二进制转为十进制要从右到左用二进制的每个数去乘以2的相应次方,而小数点后的则是从左往右。

    即将二进制每位上的数乘以权,然后相加之和即是十进制数。

    举个栗子:将二进制数101.101转换为十进制数。

    101.101 =1*2^2+0*2^1+1*2^0+1*2^(-1)+0*2^(-2)+1*2^(-3) = 4+0+1+1/2+0+1/8 = 5.625​​​ 

    得出结果:(101.101)2=(5.625)10

    大家在做二进制转换成十进制需要注意的是:

    • 要知道二进制每位的权值。

    • 要能求出每位的值。


    二、 二进制与八进制之间的转换

    首先,我们需要了解一个数学关系,即23=8,24=16,而八进制和十六进制是用这关系衍生而来的,即用三位二进制表示一位八进制,用四位二进制表示一位十六进制数。

    接着,记住4个数字8、4、2、1(23=8、22=4、21=2、20=1)。现在我们来练习二进制与八进制之间的转换。

    (1) 二进制转换为八进制

    方法:取三合一法

    即从二进制的小数点为分界点,向左(向右)每三位取成一位,接着将这三位二进制按权相加,得到的数就是一位八位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的八进制数。如果向左(向右)取三位后,取到最高(最低)位时候,如果无法凑足三位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足三位。

    栗子1:将二进制数101110.101转换为八进制

    按照取三合一原则,将101110.101划分为:101 110 101每三位对应一位八进制数,则

    101 ----->1* 2^2 + 0* 2^1 + 1* 2^0 = 5 

    110 ----->1* 2^2 + 1* 2^1 + 0* 2^0 = 6 

    101 ----->1* 2^2 + 0* 2^1 + 1* 2^0 = 5 

    最后得到结果:将二进制101110.101转八进制数为56.5

    栗子2:将二进制数1101.1转换为八进制

    按照取三合一原则,不够三位的在高位补0,将1101.1划分为:001 101 100 每三位对应一位八进制数,则

    001 ----->0* 2^2 + 0* 2^1 + 1* 2^0 =

    101 ----->1* 2^2 + 0* 2^1 + 1* 2^0 =

    100 ----->1* 2^2 + 0* 2^1 + 0* 2^0 = 54

    得到结果:将十进制数1101.1转八进制数为15.4

    (2) 将八进制转换为二进制

    方法:取一分三法

    即将一位八进制数分解成三位二进制数,用三位二进制按权相加去凑这位八进制数,小数点位置照旧

    举个栗子:

    1.将八进制数67.54转换为二进制

    因此,将八进制数67.54转换为二进制数为110111.101100,即110111.1011

    大家从上面这道题可以看出,计算八进制转换为二进制

    首先,将八进制按照从左到右,每位展开为三位,小数点位置不变

    然后,按每位展开为22,21,20(即4、2、1)三位去做凑数,即a×22+ b×21 +c×20=该位上的数(a=1或者a=0,b=1或者b=0,c=1或者c=0),将abc排列就是该位的二进制数

    接着,将每位上转换成二进制数按顺序排列

    最后,就得到了八进制转换成二进制的数字。

    以上的方法就是二进制与八进制的互换,大家在做题的时候需要注意的是:

    • 他们之间的互换是以一位与三位转换,这个有别于二进制与十进制转换
    • 大家在做添0和去0的时候要注意,是在小数点最左边或者小数点的最右边(即整数的最高位和小数的最低位)才能添0或者去0,否则将产生错误

    三、 二进制与十六进制的转换

    方法:与二进制与八进制转换相似,只不过是一位(十六)与四位(二进制)的转换

    (1) 二进制转换为十六进制

    方法:取四合一法

    即从二进制的小数点为分界点,向左(向右)每四位取成一位,接着将这四位二进制按权相加,得到的数就是一位十六位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的十六进制数。如果向左(向右)取四位后,取到最高(最低)位时候,如果无法凑足四位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足四位。

    1.例:将二进制11101001.1011转换为十六进制

    按照取四合一原则,不够四位的在高位补0,将11101001.1011划分为:1110 1001 1011 每四位对应一位八进制数,则

    1110 ----->1*2^3 + 1* 2^2 + 1* 2^1 + 0* 2^0 = 14=

    1001 ----->1*2^3 + 0* 2^2 + 0* 2^1 + 1* 2^0 =

    1011 ----->1*2^3 + 0* 2^2 + 1* 2^1 + 1* 2^0 = 11=B

    得到结果:将二进制11101001.1011转换为十六进制为E9.B

    2.例:将101011.101转换为十六进制

    因此得到结果:将二进制101011.101转换为十六进制为2B.A

    (2)将十六进制转换为二进制

    方法:取一分四法

    即将一位十六进制数分解成四位二进制数,用四位二进制按权相加去凑这位十六进制数,小数点位置照旧。

    1.将十六进制6E.2转换为二进制数

    因此得到结果:将十六进制6E.2转换为二进制为01101110.0010即110110.001


    四、八进制与十六进制的转换

    方法:一般不能互相直接转换,一般是将八进制(或十六进制)转换为二进制,然后再将二进制转换为十六进制(或八进制),小数点位置不变。那么相应的转换请参照上面二进制与八进制的转换和二进制与十六进制的转。


    五、八进制与十进制的转换

    (1)八进制转换为十进制

    方法:按权相加法

    即将八进制每位上的数乘以位权,然后相加之和即是十进制数。

    例:1.将八进制数67.35转换为十进制

    (2)十进制转换为八进制

    十进制转换成八进制有两种方法:

    1)间接法:先将十进制转换成二进制,然后将二进制又转换成八进制

    2)直接法:前面我们讲过,八进制是由二进制衍生而来的,因此我们可以采用与十进制转换为二进制相类似的方法,还是整数部分的转换和小数部分的转换,下面来具体讲解一下:

    1.整数部分

    方法:除8取余法,即每次将整数部分除以8,余数为该位权上的数,而商继续除以8,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数起,一直到最前面的一个余数。

    2.小数部分

    方法:乘8取整法,即将小数部分乘以8,然后取整数部分,剩下的小数部分继续乘以8,然后取整数部分,剩下的小数部分又乘以8,一直取到小数部分为零为止。如果永远不能为零,就同十进制数的四舍五入一样,暂取个名字叫3舍4入。

    例:将十进制数796.703125转换为八进制数

    解:先将这个数字分为整数部分796和小数部分0.703125

    因此,得到结果十进制796.703125转换八进制为1434.55

    上面的方法大家可以验证一下,你可以先将十进制转换,然后在转换为八进制,这样看得到的结果是否一样


    六、十六进制与十进制的转换

    (1)十六进制转换为十进制

    方法:按权相加法

    即将十六进制每位上的数乘以位权,然后相加之和即是十进制数。

    16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这六个字母来分别表示10,11,12,13,14,15。字母不区分大小写。

    十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……

    所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。

    举个栗子:将十六进数 0X5FA5转为十进制数

    第0位:5 *16^0 = 5

    第1位:A*16^1 = 10*16^1 = 160

    第2位:F*16^2 = 15*16^2 = 3840

    第3位:5*16^3 = 20480

    将十六进数 0X5FA5转为十进制数即24485

    可以看出,所有进制换算成10进制,关键在于各自的权值不同。

    (2)十进制转换为十六进制

    十进制转换成十六进制有两种方法:

    1)间接法:先将十进制转换成二进制,然后将二进制又转换成十六进制。

    2)直接法:前面我们讲过,十六进制是由二进制衍生而来的,因此我们可以采用与十进制转换为二进制相类似的方法,还是整数部分的转换和小数部分的转换。

    下面来具体讲解一下直接法:

    • 整数部分

    方法:除16取余法

    即每次将整数部分除以16,余数为该位权上的数,而商继续除以16,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止。另外,所得到的商的最后一位余数是所求二进制数的最高位。最后读数时,从最后一个余数起,一直到最前面的一个余数。

    • 小数部分

    方法:乘16取整法

    即将小数部分乘以16,然后取整数部分,剩下的小数部分继续乘以16,然后取整数部分,剩下的小数部分又乘以16,一直取到小数部分为0为止。如果永远不能为零,就同十进制数的四舍五入一样,暂取个名字叫3舍4入。故该法称“乘基取整法”

    例:将十进制数120.12转换为十六进制数

    解:先将这个数字分为整数部分120和小数部分0.12

    因此,得到结果十进制120.12转换十六进制为0x78.1eb851eb852


    七、Java代码测试十进制分别转换为十六进制,二进制,八进制

    核心思想:余数定理

    测试类:

    /**
     * 测试:十进制数分别转换为十六进制,二进制,八进制数
     * 核心思想:余数定理
     */
    public class DataConvertDemo{
    	public static void main(String[] args){
    
    		int a = 27, b = 37, c = 47;
    
    		System.out.print("十进制数" + a + "=>十六进制输出:");
    		cha_16(a);
    
    		System.out.println();
    		System.out.print("十进制数" + b + "=>二进制输出:");
    		cha_2(b);
    
    		System.out.println();
    		System.out.print("十进制数" + c + "=>八进制输出:");
    		cha_8(c);
    	}
    
    	/**
    	 *
    	 * 转为16进制
    	 */
    	static void cha_16(int n) {
    		if (n >= 16) {
    			cha_16(n / 16);
    		}
    		if (n % 16 < 10) {
    			System.out.print(n % 16);
    		} else{
    			System.out.print((char) (n % 16 + 55));
    		}
    	}
    
    	/**
    	 * 转为2进制
    	 */
    	static void cha_2(int n) {
    		if (n >= 2){
    			cha_2(n / 2);
    		}
    		System.out.print(n % 2);
    	}
    
    	/**
    	 * 转为8进制
    	 */
    	static void cha_8(int n) {
    		if (n >= 8) {
    			cha_8(n / 8);
    			System.out.print(n % 8);
    		} else{
    			System.out.print(n);
    		}
    	}
    }

    测试结果:

    十进制数27=>十六进制输出:1B
    十进制数37=>二进制输出:100101
    十进制数47=>八进制输出:57

     

    展开全文
  • 事情是这样的:将点十进制IP地址转换二进制(Python)input: 142.55.33.1output (base 10): [2385977601]output (base 2): [10001110 00110111 00100001 00000001]到目前为止,我已经成功地将其转换成一个base10地址...

    我需要一个将用户输入的IPv4地址转换为二进制和基地址10的程序。事情是这样的:将点十进制IP地址转换为二进制(Python)

    input: 142.55.33.1

    output (base 10): [2385977601]

    output (base 2): [10001110 00110111 00100001 00000001]

    到目前为止,我已经成功地将其转换成一个base10地址,但我似乎无法得到解决的基础问题2:

    #!/usr/bin/python3

    ip_address = input("Please enter a dot decimal IP Address: ")

    #splits the user entered IP address on the dot

    ListA = ip_address.split(".")

    ListA = list(map(int, ListA))

    ListA = ListA[0]*(256**3) + ListA[1]*(256**2) + ListA[2]*(256**1) + ListA[3]

    print("The IP Address in base 10 is: " , ListA)

    #attempt at binary conversion (failing)

    #ListA = ListA[0]*(2**3) + ListA[1]*(2**2) + ListA[2]*(2**1) + ListA[3]

    #print("The IP Address in base 2 is: " , ListA)

    任何帮助将不胜感激。谢谢。

    展开全文
  • php二进制、八进制、十进制、十六进制相互转换二进制、八进制、十进制、十六进制相互转换方法:除2取余,逆序排列,即每次将整数部分除以2,余数为该位权上的,而商继续除以2,余数又为上一个位权上的,这个步骤...
  • C语言实现十进制数n到b进制的转换

    千次阅读 2019-06-08 23:37:49
    将非负十进制整数n转换成b进制。(其中b=2~16) .算法设计 三.源代码 //非递归 #include <iostream> using namespace std; int main() { long n; int p,c,m=0,s[100]; cout<<"输入要...
  • Evernote Export 数制间的转换 一、 十进制转换为非十进制 1、十进制整数转换为非十进制整数 ...例:将十进制整数55转换二进制整数 55除以2-- 商为27--余数为1 27除以2-- 商为13--余数为1 13除以...
  • 在计算机系统中,通常将十进制数作为人机交互的媒介,而数据则以二进制数的形式存储和运算。 计算机采用二进制的主要原因有以下几点: (1)易于物理实现 二进制在技术上最容易实现。这是因为具有两种稳定状态的...
  • "请输入一个十进制数:" ); scanf ( "%d" ,&n); printf ( "请输入要转换的进制:" ); scanf ( "%d" ,&choice); switch (choice){ case 2 : case 8 : while (n) { PushStack(s,n%choice); n=n/...
  • 当存在无符号十六进制(出现的字母为小写),通过代码使其转换成十进制数 代码实现 知识准备: 简单十六进制0~15为:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f 。 0~15对应的ASCII表值为:48,...
  • 帮忙看一下这个c语言问题:输入一个十进制整数,将其转换成十六进制,并输出转换后的结果。以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!帮忙看...
  • 下面在安静的音乐中,让我们开始学习吧公式库网03:40来自生活用电在我们接触编程知识时,总会接触有关进制转换的知识,最常见的就是10进制与二进制或十六进制之间的转换,很多时候我们总会遗忘,虽然现在也出现了很...
  • 十进制转换为十六进制,也就是 采用 除k取余法 ,直接让10处以16,再对 数据如果小于10和大于10进行处理,代码如下: #include<iostream> #include<string> using namespace std; int main() { ...
  • 1、二进制数、八进制、十六进制十进制数有一个公式:二进制数、八进制、十六进制的各位数字分别乖以各自的基数的(N-1)次方,其和相加之和便是相应的十进制数。个位,N=1;十位,N=2...举例:110B=1*2的2...
  • 一、十进制转换成十六进制第一种情况:待转换数字随机CREATE FUNCTION ufn_ConvertInt2Hex ( @Num BIGINT )RETURNS VARCHAR(500)ASBEGINDECLARE @Result VARCHAR(500)SET @Result = ''WHILE ( @Num > 0 )BEGINSET...
  • 十进制二进制的互相转换 二进制 计算机中的数据不同于人们生活中的...十进制8转换成二进制,结果是1000 方法:除以2得到的余数,按从下向上的顺序排序就得到了二进制的值 二进制100101转换成十进制,结果是37 ...
  • java将十进制数转换为任意进制

    千次阅读 2017-09-27 16:44:49
    java十进制转换任意进制的实现
  • 如:我们将128转换二进制数 输入格式:128 2 输出格式:10000000 #include <iostream> #include <stdlib.h> #include <cmath> using namespace std; #define STACK_INIT_SIZE 10 #define STACK...
  • 其原因在于二进制只有两种状态,制造一个只有两个稳定状态的物理器件要比多个稳定状态的物理期间容易得多,使用高、低电位或脉冲...
  • 这里的十进制数 29 转换二进制数后为 11101。 十进制转八进制 使用十进制的数据不断除以8,直到商为0为止。从下往上取余数就是对应的八进制。 十进制转为八进制和十进制二进制差不多,看图: 因此,十进制数45...
  • 十进制数转换成二进制、八进制、十六进制算法 递归算法: //将数字a转b进制 public static void anInt(int a, int b) { if (a / b != 0) { an(a / b, b); } if (a % b >= 10) { System.out.print(...
  • 55 ;  m = m / base ;  p ++ ;  }   * p = ' \0 ' ; } 2、形参采用数组 #include  " stdio.h " #include  " conio.h " #include  " string.h " void  main() {   int  i,radix;   long  n;   char  ...
  • 请从键盘读入一个非负整数n(n是一个不超过18位的正整数),将n转换为16进制! 注意:16进制即逢16进1,每一位上可以是从小到大为0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F共16个大小不同的,即逢16进1,...
  • 十进制到二进制、八进制、十六进制的转换十进制到二进制、八进制、十六进制的转换二进制、八进制、十六进制到十进制的转换 十进制到二进制、八进制、十六进制的转换 #include <iostream> #include <vector&...
  • 输入一个十进制数N,将它转换成R进制输出。

    千次阅读 多人点赞 2020-01-19 20:31:14
    为每个测试实例输出转换后的,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。 #include<stdio.h> int main() { int i=0,j,n,b,m,r; char a[1000]; wh...
  • 对于相关进制问题大约都是十进制与其余进制相互之间的转换问题,首先介绍数学的解题思想,进而通过java语言进行实现。...假设有一个十六进2AF5,转化为十进制用竖式计算:2AF5换算10进制:第0位:5*
  • 十进制二进制

    千次阅读 2019-08-31 00:00:56
    一)进制简介 十进制是人与人之间一种通用计算方式。 二进制是计算机中一种通用计算...整数位转换原理:十进制二进制采用“除2取余,逆序排列”法。 例如:把十进制11转二进制步骤如下: 第一步:11除以2=5 余...
  • 彻底明白各进制数之间的转换

    千次阅读 2020-11-29 18:16:43
    二进制数据是用0和1两个数码来表示的。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。现代的计算机和依赖计算机的设备里都用到二进制。每个数字称为一个比特(Bit,Binary digit的缩写)。 1 ~ 9...
  • 1、程序代码如下(利用栈... printf("请输入要转换十进制数:"); scanf("%d",&number); printf("请输入要转换的数制:"); scanf("%d",&cet); Fun_10_2_8_16(number,cet); return 0; } 2、运行截图:
  • 例:①将八进制67.35转换十进制(2)十进制转换为八进制十进制转换成八进制有两种方法:1)间接法:先将十进制转换成二进制,然后将二进制转换成八进制2)直接法:前面我们讲过,八进制是由二进制衍生而来的,因此...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 34,060
精华内容 13,624
关键字:

十进制数55转换成二进制数是

友情链接: dandianxuanfu_PID.rar