汇编语言中的内存地址是否一次静态分配?

时间:2015-05-15 11:32:24

标签: c assembly memory-management static allocation

我想编写一个C程序,它分配20,000个内存行,每行包含8个字节,标记范围为2500到24999 ..程序实际上模拟了一个简单的汇编语言IDE。所有20,000个存储器行可以一次使用,也可以不使用。建议我如何为C程序中的那些位置分配内存。它应该是静态分配吗? 访问http://screencast.com/t/69T7u0avH

1 个答案:

答案 0 :(得分:1)

尝试

unsigned char (*ptrtomem)[8];
unsigned char (*ptr)[8];
/* ... */
    ptrtomem = malloc(20000*8);
    ptr = ptrtomem-2500;
/* use ptr[2500][] to ptr[24999][] */
/* when done */
    free(ptrtomem);

或者如果要分配堆栈,请使用_alloca()(或alloca(),具体取决于编译器。)