我对在FreeDOS上用C进行编程感兴趣,同时又学习了一些基本的ASM,使用FreeDOS是否可以使我的程序访问比标准640K更大的内存?
其次,关于ASM,我知道在现代处理器上,由于CPU体系结构的复杂性,很难在汇编上进行编程,但是使用FreeDOS是否将我限制在大概更简单的16位指令集上?
没有任何扩展程序,程序在DOS上最多可以使用640KB的低内存。但是每个结构都将限制为一个段的大小,即64KB。这意味着您可以拥有10个大小为64KB的大型阵列。当然,您可以通过在一个段中包含多个数组来使用更多的数组,但它们的总大小不得超过该段的大小。
MS-DOS和FreeDOS使用“ HIMEM”区域:这些是: