如何将十六进制代码转换为十进制代码,反之亦然

时间:2021-05-27 14:52:50

标签: hex decimal converters

我怎么知道这些十六进制代码是什么意思?

02 00 A0 E3 1E FF 2F E1

任何将这些代码转换为十进制代码(如 1、2、3 等或反之亦然,如十进制代码到此类十六进制代码)的转换器?

谢谢

2 个答案:

答案 0 :(得分:2)

这是我在堆栈溢出时的第一个反应。所以这里是...

十六进制代码(又名十六进制)代表什么纯粹取决于它的上下文,或者它对程序或机器意味着什么。它可以是字符串、机器代码(汇编语言)、标志、内存指针、数据、图像的一部分或其他任何内容。这也取决于此代码所在的处理器。

每个 2 位十六进制代码是一个字节,代表十进制数(0-255 或 00-FF),半字节或 1 位十六进制代码称为半字节。

将十六进制代码转换为十进制是微不足道的。从十进制转换为十六进制,不是那么简单。

有许多内置此功能的计算器。 0-9 => 0 – 9,A=10,B=11,C=12,D=13,E=14,F=15。

现在,如果您想转换一个 2 位数字,如 12 十六进制(即 0x12 或 12h )。这是公式。

(16 x 1) + (1 x 2) = 18(十进制)

四位十六进制 4A3E =>

(4096 x 4) + (256 x 10) + (16 x 3) + (1 x 14) = 19006(十进制)

C# 中的整数是 4 个字节,因此您的示例十六进制代码也可以表示 C# 中的 2 个整数。或者它可能只是 C# 中的 1 个数字,称为“long”,它是 8 个字节,可以表示介于两者之间的数字:

0 到 18,446,744,073,709,551,615 unsigned long 或 -9,223,372,036,854,775,808 至 9,223,372,036,854,775,807 签署多头

还有一点需要注意,十六进制代码也代表称为 ASCII(发音为 a·skee)的字符。这是微处理器内的内部映射,可能会有所不同。 00 未映射,因此通常表示字符串的结尾。

答案 1 :(得分:0)

像这样的十六进制代码可以代表一个二进制数。例如,您可以将“0200A0E31EFF2FE1”粘贴到像 this 这样的转换器中,以找出该数字的十进制表示形式是“144292085413916641”。

但是,从您的十六进制代码的分组方式来看,您似乎正在查看二进制数据,而不是以十六进制表示的单个整数。当十六进制代码成对分组时,每组两个字符代表一个字节。 https://en.wikipedia.org/wiki/Hexadecimal#Written_representation