我正在学习 C 编译器中的 8 位 6502 编程 (www.cc65.org)
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 的内存。