N 字节 'magic' 数字的用途是什么?

What is the purpose of a N-byte 'magic' number?

解析 NES rom 时,前四个字节是一个 'magic' 数字:

78/0x4E (N)
69/0x45 (E)
83/0x53 (S)
26/0x1A (DOS end of file character)

此示例或任何其他示例的目的是什么?

So-called “幻数”通常由二进制文件格式指定为文件格式的一种“签名”。读取文件格式的程序可以检查幻数,如果不匹配则将文件视为无效文件。这提供了一种早期捕获垃圾数据的简单方法。它还允许理解多种格式的程序找出它们正在读取的文件类型,以便对其进行适当处理。

对于 iNES 格式的 ROM 映像,也没有什么不同。 header 中幻数的目的是告诉模拟器(或其他程序)这是一个 iNES 格式的图像,应该这样解析它。