2 ldd379077640 ldd379077640 于 2016.09.23 11:18 提问

十六进制转换十进制问题 求大神解答

FFFFFFFFDEAC8A12 如何转化为十进制,再取绝对值

6个回答

JenaeLi
JenaeLi   2016.09.23 11:32

用数学公式推导出十进制,然后按公式编程就可以了吧。十六进制转十进制,从最右边开始向左依次用该位的数乘上16的0次幂、1次幂、2次幂、、、直到最左边数字乘完,然后把这些数字加起来就是十进制了,希望能帮到你啦,

hijack00
hijack00   Rxr 2016.09.23 12:06

数了一下,上面的数值有64bit,所以要定义一个8字节的整型变量(int64_t, long long?),如果上面的字符串再长一点的话,就不能使用C的基本类型了,这时候就必须要考虑用字符串来做,否则会溢出

yoyo1204
yoyo1204   2016.09.23 11:35

在16进制中,10~15分别由A~E表示。

图片说明

cs1075341779
cs1075341779   2016.09.23 11:44

无论多少进制转换为十进制都是一样的,使用每一位的数值与当前位的位权相乘,然后相加,例如:十六进制数 A2 转换为十进制为 2*16的0次方加上10*16的一次方 的和 为162

qs52955339
qs52955339   2016.09.23 12:10

转化结果 18446744073150432080

senllang
senllang   2016.09.23 14:17

转换方法上面都说过了;
取绝对值,你这个有符号的数字的话,最高位bit是1,那就是负数,把最高位取反,最后的数字加1;如果最高是F就换成7,再转换后,加1,就是绝对值

senllang
senllang 哦,说错了,把所有位取反,再加1
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
十六进制转换成十进制的方法
看机器代码的时候,一般都是十六进制数,而我的心里还是觉得十进制比较爽,第一反应就是把他换成十进制的。对于正数而言比较好转换,一般就是按二进制转换成十进制的方法,就是乘16之类的;而对于有符号的数,就相对而言比较难点,特点是对于负数。总结方法如下:先根据最高位来判断正数OR负数,正数的话用无符号的方法解决;对于负数,一般而言就是前面大堆的FFFF之类的吧,如0XFFFFFEA0,我是这样解决的:取不是F的位,EA0,把其转化成FFF得加多少?15F,然后把其转化成十进制,1*16*16+5*16+15=251
汇编语言 十进制转换为十六进制数
将十进制的数据转换为十六进制的数据 完成数据之间的转换,达到各种进制之间的转化。
二进制,八进制,十进制,十六进制互相转化的C语言源代码
#include#include#includevoid D_B(int);void D_O(int);void D_X(int);void B_D(int);void B_O(int);void B_X(int);void O_B(int);void O_D(int);void O_X(int);void X_B(char r[],int k);void X_D(char r[],int k);
java中进行二进制,八进制,十六进制,十进制间进行相互转换
十进制转成十六进制:  Integer.toHexString(int i)  十进制转成八进制  Integer.toOctalString(int i)  十进制转成二进制  Integer.toBinaryString(int i)  十六进制转成十进制  Integer.valueOf("FFFF",16).toString()  八进制转成十进制  Integer.va
【c++程序】十六进制转换十进制
//进制转换 //本题知识点: 字符串 //题目描述 // //写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 ) // //输入描述: //输入一个十六进制的数值字符串。 // //输出描述: //输出该数值的十进制字符串。 // //输入例子: //0xA // //输出例子: //10 #include #include #include using n
Sql server实现十六进制和十进制的转换
写着玩玩-- 十六进制转十进制Create    function hextoint(@h varchar(8))returns bigint begin-- select dbo.hextoint(1705)declare @r bigint  set @r=0declare @i bigintset @i=1while @ibeginset @r=@r+convert(int,(case wh
汇编语言程序设计-十进制转换为十六进制的程序实现
DEC2HEX     SEGMENT                  ASSUME CS:DEC2HEX MAIN             PROC FAR REPEAT:       CALL DEC2BIN   ;十进制转换为二进制                  CALL CRLF     ;回车与换行                  CALL BIN2HEX   ;二进制
十六进制转成十进制的java程序实现
十六进制转成十进制的java程序实现,实在是没分了。没办法了。
如何实现十进制和十六进制转换Visual Basic6.0源程序,VB6.0源代码
如何实现十进制和十六进制转换Visual Basic6.0源程序,VB6.0源代码
二进制、十进制、十六进制转换
二进制、十进制、十六进制转换