二进制数从ASCII转换为十进制

时间:2014-08-09 01:32:05

标签: c binary decimal

案例A: 来自ASCII table的十进制值2以位表示为0100110 转换二进制数0100​​110得到十进制值38

案例B: 将十进制值2转换为二进制数给出10 转换二进制数10得到十进制值2

有人可以解释一下 一世。为什么案例A返回38而不是2 ii。使用案例A和B的背景

3 个答案:

答案 0 :(得分:1)

这是一次拍摄:

ASCII表中的“十进制值2”不是十进制值2.它表示字符'2',即我们用来表示数字2或十进制值2的字符.ASCII表是只是一种表示标准可打印字符的惯例,它使得字符'2'位于第38号单元格

回答你的答案。

案例A用于打印数字信息。

案例B用于二进制计算。

答案 1 :(得分:0)

ASCII码代表标准字符值,ASCII也需要代表A-Z,符号等。 所以ASCII为2(作为一个字符是38)。 这个2是非数字的,只是代表人类识别为2的符号。

实际数值2只需要2位,其中ASCII代表它所代表的符号范围需要很多。

答案 2 :(得分:0)

你的问题答案是正确的,尽管它有一些问题。

  • 首先,你将数字的各个部分混淆了。 0110010是实际的二进制数。
  • 十进制值为50

我不确定你不明白,但我怀疑你不明白ASCII是什么。这是一个允许我们用数字表示字符的代码。 ASCII中数字2的字符不是实际的数字2.这本来很方便,但它不是如何完成的。