gpt4 book ai didi

binary - 计算机如何区分二进制中的字母和数字?

转载 作者:行者123 更新时间:2023-12-04 12:06:55 24 4
gpt4 key购买 nike

我只是好奇,因为 65 与字母 A 相同

如果这是错误的堆栈抱歉。

最佳答案

“65与字母A相同”:如果你说是的话,那是真的。但不说更多不是很有用。

没有文本,只有编码文本。没有数字,只有编码数字。对于 CPU 来说,一些数字编码是原生的,其他一切都只是未区分的数据。

(有些数据只是程序的数据,有些数据是程序的 CPU 指令。如果 CPU 不恰本地将数据作为指令执行,这是一个安全问题。有些架构将程序数据和指令分开。)

常见的 native 数字编码是 1、2、4 和 8 字节的有符号和无符号整数以及 IEEE-754 单精度和 double 浮点数。有符号整数通常是二进制补码。多字节整数具有字节顺序(或字节序),因为在典型机器上,每个字节都是可单独寻址的。如果数字编码不是原生的,则需要一个程序库来处理此类数据。

文本是字符集中的编码字符序列。有数百个字符集。字符集是将概念字符分配给称为代码点的数字。有时概念性字符是 categorized作为小写字母、数字、符号等。代码点值使用字符编码映射到字节。大多数字符集只有一种编码,但 Unicode有几个。一些字符集是其他字符集的子集——这种关系通常没有用,因为在任何一种上下文中都只使用一个字符集。

程序是一组对数据进行操作的指令。它必须对正确的数据应用正确的操作。所以,它是区分文本和数字的程序,通常是通过它的位置或流动路径。

存储的数据必须采用已知的编码文本和数字布局。有时也会存储布局。布局称为元数据。如果没有数据随附的元数据,或者没有达成一致,数据就不能使用。

通过适当的簿记,这一切都非常简单。但是有几种簿记方法,因此没有关于如何在没有元数据的情况下处理数据的通用解决方案。方法包括:众所周知和/或注册的文件扩展名、HTTP header 、MIME 类型、HTML 元字符集标记、XML 编码声明。某些方法仅适用于特定上下文,例如具有四字符代码 (FourCC) 的音频/视频编解码器,以及具有 shebang 的 unix shell 脚本。 .某些方法仅有助于缩小猜测范围,例如文件签名。不用说,应该避免猜测;它会导致安全问题和数据丢失。

不幸的是,文本文件通常没有元数据。就元数据达成一致或单独传达这一点尤为重要。

没有元数据的数据是“二进制的”。因此,文本作者必须与读者就使用哪种字符编码达成一致。同样,对于所有类型的数据。这里的读者和作者既是人和程序。

关于binary - 计算机如何区分二进制中的字母和数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45103926/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com