用什么软件把16进制转换成10进制
DEC2HEX则反过来。
函数DEC2HEX可以将一个数字变成16进制,但是这个16进制数不能直接运算。
HEX2DEC再转成10进制,百度了个答案:整个表格换成16进制吗?好像不行,仅仅是字符串。
所以你需要先把它转换成10进制才能计算。
HEX2DEC是把16进制变成10进制的。
excel里面的16进制数不是真正的数自己复制到EXCEL里头...
请问16进制转换成10进制因该怎么算?
一)、数制 计算机中采用的是二进制,因为二进制具有运算简单,易实现且可靠,为逻辑设计提供了有利的途径、节省设备等优点,为了便于描述,又常用八、十六进制作为二进制的缩写。
一般计数都采用进位计数,其特点是: (1)逢N进一,N是每种进位计数制表示一位数所需要的符号数目为基数。
(2)采用位置表示法,处在不同位置的数字所代表的值不同,而在固定位置上单位数字表示的值是确定的,这个固定位上的值称为权。
在计算机中:D7 D6 D5 D4 D3 D2 D1 D0 只有两种0和1 8 4 2 1 二)、数制转换 不同进位计数制之间的转换原则:不同进位计数制之间的转换是根据两个有理数如相等,则两数的整数和分数部分一定分别相等的原则进行的。
也就是说,若转换前两数相等,转换后仍必须相等。
有四进制 十进制:有10个基数:0 ~~ 9 ,逢十进一 二进制:有2 个基数:0 ~~ 1 ,逢二进一 八进制:有8个基数:0 ~~ 7 ,逢八进一 十六进制:有16个基数:0 ~~ 9,A,B,C,D,E,F (A=10,B=11,C=12,D=13,E=14,F=15) ,逢十六进一 1、数的进位记数法 N=a n-1*p n-1+a n-2*p n-2+…+a2*p2+a1*p1+a0*p0 2、十进制数与P进制数之间的转换 ①十进制转换成二进制:十进制整数转换成二进制整数通常采用除2取余法,小数部分乘2取整法。
例如,将(30)10转换成二进制数。
将(30)10转换成二进制数 2| 30 ….0 ----最右位 2 15 ….1 2 7 ….1 2 3 ….1 1 ….1 ----最左位 ∴ (30)10=(11110)2 将(30)10转换成八、十六进制数 8| 30 ……6 ------最右位 3 ------最左位 ∴ (30)10 =(36)8 16| 30 …14(E)----最右位 1 ----最左位 ∴ (30)10 =(1E)16 3、将P进制数转换为十进制数 把一个二进制转换成十进制采用方法:把这个二进制的最后一位乘上20,倒数第二位乘上21,……,一直到最高位乘上2n,然后将各项乘积相加的结果就它的十进制表达式。
把二进制11110转换为十进制 (11110)2=1*24+1*23+1*22+1*21+0*20= =16+8+4+2+0 =(30)10 把一个八进制转换成十进制采用方法:把这个八进制的最后一位乘上80,倒数第二位乘上81,……,一直到最高位乘上8n,然后将各项乘积相加的结果就它的十进制表达式。
把八进制36转换为十进制 (36)8=3*81+6*80=24+6=(30)10 把一个十六进制转换成十进制采用方法:把这个十六进制的最后一位乘上160,倒数第二位乘上161,……,一直到最高位乘上16n,然后将各项乘积相加的结果就它的十进制表达式。
把十六制1E转换为十进制 (1E)16=1*161+14*160=16+14=(30)10 3、二进制转换成八进制数 (1)二进制数转换成八进制数:对于整数,从低位到高位将二进制数的每三位分为一组,若不够三位时,在高位左面添0,补足三位,然后将每三位二进制数用一位八进制数替换,小数部分从小数点开始,自左向右每三位一组进行转换即可完成。
例如: 将二进制数1101001转换成八进制数,则 (001 101 001)2 | | | ( 1 5 1)8 ( 1101001)2=(151)8 (2)八进制数转换成二进制数:只要将每位八进制数用三位二进制数替换,即可完成转换,例如,把八进制数(643.503)8,转换成二进制数,则 (6 4 3 . 5 0 3)8 | | | | | | (110 100 011 . 101 000 011)2 (643.503)8=(110100011.101000011)2 4、二进制与十六进制之间的转换 (1)二进制数转换成十六进制数:由于2的4次方=16,所以依照二进制与八进制的转换方法,将二进制数的每四位用一个十六进制数码来表示,整数部分以小数点为界点从右往左每四位一组转换,小数部分从小数点开始自左向右每四位一组进行转换。
(2)十六进制转换成二进制数 如将十六进制数转换成二进制数,只要将每一位十六进制数用四位相应的二进制数表示,即可完成转换。
例如:将(163.5B)16转换成二进制数,则 ( 1 6 3 . 5 B )16 | | | | | (0001 0110 0011. 0101 1011 )2 (163.5B)16=(101100011.01011011)2
16进制的数字如何转换成10进制
1:返回字符串表示的数(-1为出错)//pch:十六进制字符串//at:计算的位置(从最后一个字符开始到第0的位置,开始时是strlen(pch))int myto(char* pch , int at){if( at return 0;char a = pch[--at];if(a>='0'&&a{a-='0';}else if(a>='a'&&a{a-='a';a+=0xa;}else if(a>='A'&&a{a-='A';a+=0xa;}else{return -1;}int b = myto( pch , at );return b==-1 ? -1 : (int(a) + 16 * b);}这是c语言的方法要用自己手算也可以:比如:十六制的(123)转化过程为:1乘以16的2次方加上2乘以16的1次方加上3乘以16的0次方结果就是所转化的十进制数
16进制怎么转为10进制.
16进制转换10进制的方法: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开始)位上,如果是数a (a大于等于0,并且a小于等于 15,即:F)表示的大小为 a*16的N次方。
假设有一个十六进数 2AF5直接计算就是:5*16o+F*161+A*162+2*163=10997 也可以用竖式表示:第0位: 5*160=5第1位: F*161=240第2位: A*162=2560第3位: 2*163=819216进制十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法。
同我们日常生活中的表示法不一样。
它由0-9,A-F组成,字母不区分大小写。
与10进制的对应关系是:0-9对应0-9;A-F对应10-15;N进制的数可以用0~(N-1)的数表示,超过9的用字母A-F。
16进制转换10进制,如何转换这个数字
可以先把16进制的转换成2进制,0F 01就是0000 1111 0000 0001,然后换成10进制就是3841了;16进制换成2进制是基础,一个1位的16进制数为一个4位的2进制数,本身没有什么诀窍,记住就可以了,0H(16进制)=0000(2进制)、1H=0001、2H=0010、3H=0011、4H=0100、5H=0101、6H=0110、7H=0111、8H=1000、9H=1001、A=1010、B=1011、C=1100、D=1101、E=1110、F=1111。
当然你也可以直接转换,公式类似于2进制转10进制一样。
即第1位(从右到坐,即从低位开始算)乘以16的0次方+第2位乘以16的1次方+第3位的乘以16的2次方……这样一直这样,加到位结束。
如上例就是0F01=1*16的0次方+0乘以的16的1次方+15乘以16的2次方+0乘以16的3次方=1+0+3840+0=3841。
最后给出你例子的答案:0F01=3841;1C01=7169;你可以利用计算机的科学计算器试试!
VC++ 16进制数转换10进制???
1.如果是输出用,没必要转换吧!fprint里的输出格式中,有%d十进制输出。
也有16进进输出,好象是%x,你查一下书吧。
而程序编译时,不管是什么进制的,全部自动转为机器码。
2.DWORD,双字,指的是变量a的内存分配,它是一个宏32-bit unsigned integer. This type is declared in WinDef.h as follows:typedef unsigned long DWORD;//32位无符号的整型。
----------语法Visual C++ public:static String^ Hex(int Number)参数Number类型:System..::.Int32必选。
任何有效的数值表达式或 String 表达式。
返回值类型:System..::.String返回表示某数十六进制值的字符串。
===========一般的数据进制包括十进制,二进制,十六进制.十进制就是我们日常生活用到的数据进制,因此也是我们最熟悉和清楚的;二进制是计算机的基础进制,主要是因为便于用物理器件实现二进制;八进制和十六进制因为和二进制的天然的亲密关系,并且表示比二进制更方便,因而也成为计算机的常用表示方法.VB中涉及到的数据进制之间的转换函数主要有如下几个:Hex 函数: 返回代表十六进制数值的 String;Oct 函数: 返回代表一数值的八进制值的Variant (String);Cint函数: 强制将一个表达式转换成-32,768 至 32,767的整型;CLng函数: 强制将一个表达式转换成-2,147,483,648 至 2,147,483,647的长整型;Cdec函数: 强制将一个表达式转换成Decimal 数据类型;CDbl函数: 强制将一个表达式转换成Double 数据类型;以上这些函数是最基本的几个数据进制之间的转换函数,其中以前三个函数最常用,也最有用.从上面几个函数我们可以看到,VB中没有为我们提供专门的函数供我们将表达式或是数据转换成十进制和二进制,不过十进制的转换我们可以通过Cint函数轻松完成,而二进制的实现我们可以通过二进制和八进制,十六进制的关系轻松转换.下面几个例子为Hex函数和Oct函数以及Cint函数的实例:(1). A= hex(5) 返回5;(2). B=hex(10) 返回A(3). C=hex(23) 返回17(4). D=oct(5) 返回5(5). E=oct(10) 返回12(6). F=oct(23) 返回27(7). G=Cint(&H17) 返回23(8) . H=Cint(&O12) 返回10以上这些函数的应用比较简单,就不多说了,值得一提的是Hex函数和Oct函数返回的都是字符串,如果是想将十六进制或是八进制的字符串变量转换成十进制,可以按如下方法进行:C=”17” 17为十六进制数值的StringC=”&H” & CIc=Cint(C) 返回23=========我只是帮你查了一下,没有试过,自已试吧
16进制怎么换算10进制?
楼上的是不是太复杂了?16进制转10进制:像10进制数一样的说,把16进制数看成有个位数,十位数,百位数……将“个位数”乘上16的0次方(*16^0),将“十位数”乘上16的1次方(*16^1),将“百位数”乘上16的2次方(*16^2),…………最后将所有上面得到的数加起来就是他的十进制数了例如:将16进制的 (10A) 转换成10进制的数A*1=100*16=01*16^2=256所以所得的数为10+0+256=26610进制转16进制:这个有点麻烦…… 将给定的十进制整数除以基数16,余数便是等值的16进制的最低位。
将上一步的商再除以基数16,余数便是等值的16进制数的次低位。
重复上一步骤,直到最后所得的商等于0为止。
各次除得的余数,便是16进制各位的数,最后一次的余数是最高位例如:10进制的 (100) 变为16进制先把100除以16,得到6余数为4,则“个位数”为4;用6除以16,得到0余数为6,则“十位数”为6。
所以100的16进制为“64”。
依此类推。
注:A=10 B=11 C=12 D=13 E=14 F=15
16进制数怎么转换成10进制的
进制转换 1。
二进制与十进制数间的转换 (1)二进制转换为十进制 将每个二进制数按权展开后求和即可。
请看例题: 把二进制数(101.101)2=1*22+0*21+1*20+1*2-1+0*2-2+1*2-3=(5.625)10 (2)十进制转换为二进制 一般需要将十进制数的整数部分与小数部分分开处理。
整数部分计算方法:除2取余法 请看例题: 十进制数(53)10的二进制值为(110101)2 小数部分计算方法:乘2取整法,即每一步将十进制小数部分乘以2,所得积的小数点左边的数字(0或1)作为二进制表示法中的数字,第一次乘法所得的整数部分为最高位。
请看例题: 将(0.5125)10转换成二进制。
(0.5125)10=(0.101)2 2。
八进制、十六进制与十六进制间的转换 八进制、十六进制与十六进制之间的转换方法与二进制,同十进制之间的转换方法类似。
例如: (73)8=7*81+3=(59)10 (0.56)8=5*8-1+6*8-2=(0.71875)10 (12A)16=1*162+2*161+A*160=(298)10 (0.3C8)16=3*16-1+12*16-2+8*16-3=(0.142578125)10 十进制整数→→→→→八进制 方法:“除8取余” 十进制整数→→→→→十六进制 方法:“除16取余” 例如: (171)10=(253)8 (2653)10=(A5D)16 十进制小数→→→→→八进制小数 方法:“乘8取整” 十进制小数→→→→→十六进制小数 方法:“乘16取整” 例如: (0。
71875)10=(0.56)8 (0.142578125)10=(0.3C8)16 3. 非十进制数之间的转换 (1)二进制数与八进制数之间的转换 转换方法是:以小数点为界,分别向左右每三位二进制数合成一位八进制数,或每一位八进制数展成三位二进制数,不足三位者补0。
例如: (423。
45)8=(100 010 011.100 101)2 (1001001.1101)2=(001 001 001.110 100)2=(111.64)8 2。
二进制与十六进制转换 转换方法:以小数点为界,分别向左右每四位二进制合成一位十六进制数,或每一位十六进制数展成四位二进制数,不足四位者补0。
例如: (ABCD。
EF)16=(1010 1011 1100 1101.1110 1111)2 (101101101001011.01101)2=(0101 1011 0100 1011.0110 1000)2=(5B4B。
68)16 PS:我个人喜欢先把十六进制换成二进制 在转化成十进制,反之亦然用C写的函数使用ltoa或itoa函数 #include #include void main( void ) { char buffer[20]; int i = 3445; long l = -344115L; unsigned long ul = 1234567890UL; _itoa( i, buffer, 10 );//转换成10进制字符 printf( "String of integer %d (radix 10): %s\n", i, buffer ); _itoa( i, buffer, 16 );//转换成16进制字符 printf( "String of integer %d (radix 16): 0x%s\n", i, buffer ); _itoa( i, buffer, 2 );//转换成2进制字符 printf( "String of integer %d (radix 2): %s\n", i, buffer ); _ltoa( l, buffer, 16 ); printf( "String of long int %ld (radix 16): 0x%s\n", l, buffer ); _ultoa( ul, buffer, 16 ); printf( "String of unsigned long %lu (radix 16): 0x%s\n", ul, buffer ); }
转载请注明出处51数据库 » 软件16进制变为10进制