gpt4 book ai didi

c - 8 位 NES 程序内存限制

转载 作者:行者123 更新时间:2023-12-04 19:43:40 26 4
gpt4 key购买 nike

我正在学习 C 编译器 (www.cc65.org) 中的 8 位 6502 编程

NES FC 具有 8 位 6502 处理器和 2K RAM。但是,以下 C 编译(到 nes 文件中)并在 VirtualNES 模拟器中成功加载。

#include "conio.h"
#include "stdlib.h"

int dump[1000];

void main()
{
int *a;
a = (int*)malloc(19222999);
cputs("Hello, World!");
a[0] = 1;
for(;;); // loop forever, never ends
}

为什么这样可以?显然我在上面的 C 代码中分配了超过 2K 的内存。

最佳答案

段错误是现代奇妙而神奇的福音;它们代表我们的计算机每时每刻都在 self 诊断自己的错误。

相比之下,在过去,几乎没有办法让计算机“崩溃”,因为计算机会意识到出现了问题,从而导致它做其他事情。在这里,您已将 1 写入内存中的某处(很可能会覆盖重要的内容!),然后计算机继续运行。

要点:在旧架构和嵌入式系统中,“不崩溃”是一个非常低的清除阈值,并不表示一切正常。

关于c - 8 位 NES 程序内存限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20197215/

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