我们正在学习将二进制转换为十进制(反之亦然)以及其他基本转换方法,但我不明白这些知识的必要性。
在不同基数之间转换数字是否有任何实际用途?
处理 Unicode 转义码'\u2014'
时——在 Javascript 中就是—
在 HTML 中
调试时——许多调试器以十六进制显示所有数字
编写位掩码时——以十六进制指定 2 的幂(或通过编写1 << 4
)更方便
在本文中,我描述了一个具体的用例。简而言之,假设您想要使用某种传输机制传输一系列字节,但您不能简单地将有效负载作为字节传递,因为您无法发送二进制内容。假设您只能使用 64 个字符对有效负载进行编码。解决此问题的方法是将字节(8 位字符)转换为 6 位字符。在这里,数字转换开始发挥作用。将字节序列视为一个以 256 为基数的大数。然后将其转换为以 64 为基数的数字,就完成了。新的 base 64 数字的每个数字现在表示编码有效负载的一个字符...
如果您的设备(例如硬盘驱动器)只能具有一定数量的状态,那么您只能在具有那么多状态的数字系统中计数。
因为计算机的字节只有on和off,所以只能表示0和1。因此使用base2系统。
如果您有一个具有 3 种状态的设备,您可以表示 0、1 和 2,因此计入基数为 3 的系统。