gpt4 book ai didi

assembly - 当高级语言存在时,为什么旧​​游戏要用汇编语言编写?

转载 作者:行者123 更新时间:2023-12-04 00:01:12 27 4
gpt4 key购买 nike

我注意到大多数(如果不是全部)Nes/Atari 等游戏都是在汇编中编码的,但是当时存在 C、COBOL 和 FORTRAN,我认为它们会使编码更容易,对吗?那么为什么他们选择汇编而不是这些可用的高级语言呢?

最佳答案

那些游戏有 8 位 CPU 芯片和微型内存,比如 2kB。这个答案会占用一半以上的内存。

编译代码是不可能的。即使在具有“大”内存的 8 位 CPU 上,例如“64K”(哇!)编译后的代码也很难使用;直到 16 位微处理器出现时,才经常看到它。

此外,唯一可能有用的语言是 C,它还没有占领世界。当时几乎没有用于 8 位微型计算机的 C 编译器。

但 C 不会有多大帮助。这些游戏中的黑客攻击非常便宜,几乎需要特定于时间的指令循环……例如, Sprite 的 Y 坐标可能取决于其控制寄存器的写入时间(在视频扫描中)。 (不寒而栗...)

现在有一种很好的解释型字节码语言大约在那个时候或者稍后:UCSD Pascal在 UCSD P 系统上运行。虽然我不是 Pascal 的忠实粉丝,但对于那些早期的处理器来说,它远远领先于其他一切。但是,它不适合游戏或运行得足够快以进行游戏。

关于assembly - 当高级语言存在时,为什么旧​​游戏要用汇编语言编写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4904707/

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