哈希中“字符”和“八位字节”的区别

8
我在有关哈希随机数的文献中看到了“八位字节”这个术语,它似乎与“字符”同义,尽管使用这些词汇有一定的模式。这让我相信两者之间存在正式区别。如果有人能够告诉我这是什么区别,我将不胜感激。(请不要讲解八进制字符编码或八进制(基于8的)数字;我谈论的是名词“八位字节”,而不是形容词)。编辑:事实证明,我正在寻找的单词是“八位字节”。
3个回答

25
您可能正在思考“八位字节”这个术语,它通常被用作与单字节(非Unicode)字符同义的词。在这种情况下,“八位字节”意味着八个二进制位。一个字符可以是8位、16位甚至更多位,但“八位字节”始终是指八个二进制位。

就是这样——要么我读错了,要么我正在阅读的文本的作者也混淆了术语。无论哪种方式,你说得完全正确,“八位组”就是我要找的词。感谢你快速而简明的回答。 - Jens Roland

5
一个八位组是8位数据的一部分,也就是一个字节(虽然字节不一定有8位)。字符是文本的最小单位。它们是完全独立的概念,将它们混为一谈表明对文本编码复杂性的严重无知。不幸的是,这种无知在很多情况下都很普遍,而C标准明确定义char的大小为1个字节并没有帮助解决这个问题。
特别地,我会非常警惕任何使用“字符”来表示“字节”(或“八位组”)的加密文本。

3
确实存在一些奇怪、晦涩的系统,其字长为36位,字节为9位(参见“八进制的用途”,http://weblogs.asp.net/george_v_reilly/archive/2004/12/13/284388.aspx),但是争论一个字节不等于8位是纠缠小节。强烈同意八位组不等于字符。 - George V. Reilly

2

Octet是一个字节的法语单词,它被称为八位组,因为它包含了8个比特位。这个术语主要用于电信领域,可能是由于在CCITT中存在重大的法国影响。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接