二进制转换十进制、十六进制

二进制值:

半字节中各位的位值               字节中各位的位值

8 4 2 1                            128 64 32 16 8 4 2 1

二进制到十进制转换表:

二进制值                                十进制值

10000000                                128

11000000                                192

11100000                                224

11110000                                240

11111000                                248

11111100                                252

11111110                                254

11111111                                255

11111111若要计算字节对应的十进制值,可将所有取值为1 的位的位值相加,如下所示:

128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255 ,这是字节的最大可能取值。

二进制数还可对应众多其他的十进制值,下面来看一些例子。假设二进制数取值如下:

10010110

哪些位的取值为1 呢?答案是位值为128 、16 、4 和2 的位,因此只需将这些位值相加: 128+ 16+4+

2= 150。

再举个例子,假设二进制数取值如下:

01101100

哪些位的取值为1 呢?答案是位值为64 、32 、8 和4 的位,因此只需将这些位值相加: 64+32+8+4=

108。再者,如果二进制数取值如下:

11101000

哪些位的取值为1 呢?答案是位值为128 、64、32 和8 的位,因此只需将这些位值相加: 128+64+32+

8=232 。



二进制转十六进制:       

十六进制只能使用数字0-9 ,而不能使用10 、11 、12 等(因为它们是二位数),因此使用A 、B 、C、D 、E 和F 分别表示10 、11 、12 、13 、14 和15 。

每个十六进制字符相当于半字节,而两个十六进制字符相当于一字节。假设有十六进制数Ox6A,

要计算该十六进制数对应的二进制值,可将这两个字符分别转换为半字节,然后将它们合并为一个字节:6=0110 ,而A= 1010 ,因此整个字节为01101010,64+32+8+2=108.

假设有二进制数01010101 。首先将其划分为半字节0101 和0101 ,这些半字节的值都是5 ,因为

取值为1 的位对应的位值分别是1 和4。因此,其十六进制表示为Ox55 。要将二进制数01010101 转换

为十进制数,方法为64 + 16 + 4 + 1 = 85 。

另一个二进制数11001100其中1100=12 , 1100= 12 ,因此它对应的十六进制数为cc。将其转换为十进制时,答案为128+64+8 +4 =204.

时间: 2025-01-08 19:25:46

二进制转换十进制、十六进制的相关文章

(转 枫伶忆)二进制 八进制 十进制 十六进制之间转换

什么是二进制? 二进制是计算技术中广泛采用的一种数制.二进制数据是用0和1两个数码来表示的数.它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现.当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的.计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0. 信息的存储单位 位(Bit) :度量数据的最小单位 字节(Byte):最常用的基本单位,一个字节有8位 b7  b6 b5 b4 b3 b2 b1

二进制,八进制,十进制,十六进制!!!!

一直以为进制转换离我很远,不会碰到这个问题,就算碰到了,百度一下就能解决,所以一直没关注过这个问题.直到有一天,碰到了一个进制转换问题,却不可以用百度...FUCK. 所以总结一下,二进制,八进制,十进制,十六进制如下: * 二进制全是0.1 * 八进制以0开头表示,0-7 * 十进制不能以0开头表示,0-9 * 十六进制以0x开头表示,0-9,A-F java中进制转换: A.十进制转换其他 十进制转成二进制  Integer.toBinaryString(int i) 十进制转成八进制  I

3、将二进制转换成十六进制

/* 将二进制转换成十六进制 */ class BinaryToHex { public static void main(String[] args) { int num = 120; char[] result = new char[1024]; int count = 0; while((num & 15) > 0) { int tmp1 = num & 15; if(tmp1 > 9) { result[count] = (char)(tmp1 - 10 + 'A');

二进制 八进制 十进制 十六进制之间的转换

一. 十进制与二进制之间的转换 (1)十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数.下面举例: 例:将十进制的168转换为二进制 得出结果 将十进制的168转换为二进制,(10101000)2 分析:第一步:将168除以2,商84,余数为0.  第二步:将商84除以2,商42余数为0. 

二进制 八进制 十进制 十六进制

一. 十进制与二进制之间的转换 (1) 十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数.下面举例: 例:将十进制的168转换为二进制 得出结果 将十进制的168转换为二进制,(10101000)2 分析:第一步,将168除以2,商84,余数为0. 第二步,将商84除以2,商42余数为0. 

二进制转换十进制 算法解析

java里面是有进制间互换现成的方法的: public class 十进制与各进制的相互转换 { public static void main(String[] args){ //java已经实现的机制:十进制转换为二进制 int decimal = 10; System.out.println("十进制数:"+decimal+",转换为二进制:"+Integer.toBinaryString(decimal)); System.out.println("

【宋红康程序思想学习日记2】逻辑与实现二进制转换成十六进制运算

/** 进制转化 二进制60转化为十六进制 */class WeiExercise2{ public static void main(String[] args) { int i=60;// 0011 1100 int b=i&15;//&15: 0000 1111=(0000 1100=12=b) //int c=b-10; //int d=(c>10)?c+'a':c;//d=b-10+'a'=='c'.得到c String k1=(b<=9)?b+""

二进制、十进制和十六进制的转换

二进制只使用数字0 和1 ,其中每个数字对应于一位( 二进制位).通常,我们将每4 位或8 位作为一组,分别称它们为半字节(nibble) 和字节. 我们感兴趣的是二进制值对应的十进制值一一十进制以10 为基数,我们从幼儿园起就开始使用 它了.二进制位按从右向左的顺序排列,每向左移动一位,位值就翻一倍. 表2-1 列出了半字节和字节中各位代表的十进制值.别忘了,半字节包含4 位, 字节包含8 位. 这意味着如果某一位的取值为1 ,则计算半字节或字节对应的十进制值时,应将其位值与其他所 有取值为1

二进制和十进制的相互转换

一. 什么是进制 1. 进制:就是进位制,是人们规定的一种进位方法. 对于任何一种进制--X进制,就表示某一位置上的数运算时是逢X进一位.二进制就是逢二进一,,十进制是逢十进一,. 2.  十进制的由来 十进制的由来是因为人类有十个手指. 3. :二进制的由来 其实二进制来源与中国,请看史料记载 18世纪德国数理哲学大师莱布尼兹从他的传教士朋友鲍威特寄给他的拉丁文译本<易经>中,读到了八卦的组成结构,惊奇地发现其基本素数(0)(1),即<易经>的阴爻yao- -和__阳爻,其进位制