gpt4 book ai didi

lexical-analysis - 某种格式中的二进制数据是如何解析的?

转载 作者:行者123 更新时间:2023-12-04 04:33:10 29 4
gpt4 key购买 nike

考虑到一个二进制数据(视频/图像/音频/可执行文件)可以看作是一长串随机字节,
当数据采用特殊格式(SQL、数据库中的 BOLB、MP3、JSON、XML 等)时,解析器如何知道特殊字符(或字符序列,如 {,},\t,space,EOF)用于格式化,而不是二进制数据的一部分,反之亦然?

另外,我不太确定这个问题属于哪个类别,所以我把词法分析和语言学放在了一起。计算机科学的哪些学科/领域研究这个?

最佳答案

对于这个问题,这确实是一个奇怪的地方。我有点不清楚你在这里问的究竟是什么,但总而言之,并非所有的二进制数据(假设你的意思是机器可读的数据)都是平等的。例如:音频、图像、视频不是可执行数据,它们是解析数据;因此,它们的处理方式不同。

此外,“二进制数据”并不像您第一次打开十六进制编辑器时想象的那样随意:)。可执行文件被构造成 DATA 和 CODE 段,因此计算机知道如何正确处理这些标志。至于你提到的其他三种类型,它们的结构都不同,具体取决于它们的文件格式,这就是为什么有这么多不同的文件格式!解析这些文件的可执行程序知道如何根据代码中包含的关于文件格式的信息来处理它们,这当然意味着程序必须知道如何处理文件格式并知道如何对其进行分段加载它正确,这就是为什么您无法在 Microsoft Paint 中打开 MP3 的原因。

至于对文件格式和数据存储的研究,它在很多领域都有应用,它本身并不是一个真正的领域,而是一个出现在很多领域的话题。信息理论、逆向工程、自然语言处理和许多其他方法可用于理解不同的文件类型以及它们如何存储数据。无论如何,这只是一个简短、粗略的解释,您可以在 google 上搜索很多东西(尝试从 .exe 文件格式或 .jpg/.png 文件格式开始)。

关于lexical-analysis - 某种格式中的二进制数据是如何解析的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20228023/

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