二进制数从 ASCII 到十进制的转换

标签 c binary decimal

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

情况B: 将十进制值 2 转换为二进制数得到 10 转换二进制数 10 得到十进制值 2

有人可以解释一下吗 我。为什么案例 A 返回 38 而不是 2 ii.使用案例A和B的上下文

最佳答案

这是一张照片:

ASCII表中的“十进制值2”不是十进制值2。它代表字符“2”,即我们用来表示数字2或十进制值2的字符。ASCII表是只是表示标准可打印字符的约定,并且字符“2”恰好位于单元格号 38

这回答了你的 A。

例如,情况 A 用于打印数字信息。

情况B用于二进制计算。

关于二进制数从 ASCII 到十进制的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25214410/

相关文章:

c - 不兼容的类型分配

c++ - 简化三次贝塞尔路径?

c - 如何在 C 上将二进制 PORTB 位从 "11010000"镜像到 "00001011"?

c# - c# 中的 decimal 误解?

c - 函数内部重新分配 - 损坏的大小与 prev_size

c - 在 Linux 上测试内核 Crypto API

JAVA:从64位fpn转换为十进制

javascript - JS - 如何计算二进制数据的 MD5

mysql - SQL 中的小数位

Python 的丰富比较行为(或者,当 Decimal ('100.0' 时)< .01)