为什么十六进制编辑器被称为二进制编辑器?

为什么十六进制编辑器被称为二进制编辑器?

十六进制和二进制是两种不同的进制。在我看来,十六进制只是二进制更易于使用和更方便的版本。

不过,我经常听说十六进制编辑器是二进制编辑器。如果你在 Google 上搜索“二进制编辑器”,你就会得到十六进制编辑器。

答案1

A二进制编辑器编辑文件二进制文件

二进制文件 - 维基百科

A二进制文件是非文本文件的计算机文件。术语“二进制文件”通常用作表示“非文本文件”的术语,并且通常被认为是字节序列。... 二进制文件通常包含旨在解释为文本字符以外的其他内容的字节。

A十六进制编辑器是一种二进制编辑器其中数据表示为十六进制

十六进制编辑器 - 维基百科

A十六进制编辑器(或者二进制文件编辑器或者字节编辑器) 是一种计算机程序,可用于处理构成计算机文件的基本二进制数据。名称“hex”来自“十六进制”:以 16 为基数的数字的标准表示法。

答案2

术语很难。不同的人对事物有各种不同的称呼。

在这种情况下,十六进制“十六进制编辑器”中的 是指每个字节值的常规人类可读表示,而二进制“二进制编辑器”中的“二进制”指的是您实际上是在字节层编辑文件(计算机以二进制形式存储字节),而不考虑更高级别的文本编码等。回想一下,出于同样的原因,无法以更高级别的文本形式表示的文件被称为“二进制文件”或“二进制文件”。

从技术角度来说,这两种说法都没错,只是从不同的角度看待命名问题。不过,就我个人而言,我倾向于认为“二进制编辑器”总体上令人困惑。

答案3

二进制编辑器显示(二进制)

00000000 | 11111011 11111011 11111011 11111011 11110101 11111011 11111011 11111011
00001000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011
00010000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011
00011000 | 11110101 11111011 11111011 11111011 11111011 11111011 11111011 11111011
00100000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011
00101000 | 11111011 11111011 11101111 11111011 11111011 11111011 11111011 11111011
00110000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011
00111000 | 11111011 11111011 11111011 11101111 11111011 11111011 11111011 11111011
01000000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011
01001000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011
01010000 | 11101111 11111011 11111011 11111011 11111011 11111011 11111011 11111011
01011000 | 11101111 11111011 11111011 11111011 11111011 11111011 11111011 11111011
01100000 | 11111011 11111011 11111011 11111011 11111011 11101111 11111011 11111011
01101000 | 11111011 11111011 11111011 11111011 11111011 11111011 11111011 11111011

二进制编辑器显示(十六进制)

00 | fb fb fb fb f5 fb fb fb fb fb fb fb fb fb fb fb
10 | fb fb fb fb fb fb fb fb f5 fb fb fb fb fb fb fb 
20 | fb fb fb fb fb fb fb fb fb fb ef fb fb fb fb fb 
30 | fb fb fb fb fb fb fb fb fb fb fb ef fb fb fb fb 
40 | fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb 
50 | ef fb fb fb fb fb fb fb ef fb fb fb fb fb fb fb 
60 | fb fb fb fb fb ef fb fb fb fb fb fb fb fb fb fb

二进制编辑器确实应该允许您以二进制形式处理字节,但正如您所见,基数 2 太小,无法给出紧凑的数字。

二进制为原始数据,而非二进制

一般而言,“二进制“ 在二进制编辑器不是指二进制,它实际上是“文本编辑器“。
不同之处在于文本编辑器旨在显示文本,因此非打印字符、换行符、控制字符、无效的 utf-8 代码单元等不需要安全处理。
打开文件并立即保存的简单操作可以改变它(由于编辑器内部转换、故障)。

另一方面,二进制编辑器不会尝试赋予数据任何语义,而是让用户安全地将其作为字节/位/字的流来处理。

十六进制编辑器

完美的二进制编辑器会知道所有可能的二进制格式并允许您编辑它,但由于每个人都可以制作自己的二进制格式,而且它们经常更改,因此尝试支持所有格式是徒劳的。
编辑器能做的最好的事情就是显示字节本身,并且由于已经讨论过的 16 进制属性,十六进制数字非常方便!

此外,经验丰富的用户可以在阅读时在脑海中将 bin 转换为 hex。
设置/获取以十六进制编写的字节中的位实际上绝对不会比以 bin 编写的字节花费更多精力。
说实话,我发现 hex更轻松比二进制更容易读取。

答案4

根据几种编程语言和操作系统的约定,文件有两种类型:

  • 由一组文本行组成的文本文件,每行由一组可打印字符(包括一些控制字符)组成,并以行尾结束
  • 包含任意一组字节(包括文本文件中禁止的空字节)的二进制文件。

文本编辑器能够打开文本文件,而二进制编辑器对其处理的文件类型没有任何限制。

事实上,二进制编辑器通常以十六进制表示并允许输入数据只是为了方便(它们通常也显示并允许替换 ascii 字符),仅以纯二进制显示数据会使数据不太清晰。

一个流行的二进制编辑器名为十六进制编辑

在此处输入图片描述

它正确地将自己视为二进制编辑器和十六进制编辑器:

在此处输入图片描述

甚至还有一个选项,不以十六进制显示数据,而只显示文本

在此处输入图片描述

相关内容