#STACK_START 具体是什么值?
我现在用SP=0x00;SPH=0x0C;来确定1K的堆栈地址为0x0C00;不知有没有问题 说一不二 发表于 2026-4-6 22:06
我现在用SP=0x00;SPH=0x0C;来确定1K的堆栈地址为0x0C00;不知有没有问题
有问题,程序死机了,SP=0x00;SPH=0x08; 没问题了,我的程序堆栈要2K! 说一不二 发表于 2026-4-6 21:55
#STACK_START 具体是什么值?
根据需求自定义数值 说一不二 发表于 2026-4-6 21:55
#STACK_START 具体是什么值?
可能需要自定义 说一不二 发表于 2026-4-6 21:55
#STACK_START 具体是什么值?
STACK_START是堆栈的起始地址
如果你要自行设置堆栈初始值,则需要你自己定义这个起始地址
说一不二 发表于 2026-4-6 21:55
#STACK_START 具体是什么值?
设了
#define STACK_START 0x0c00
SP = (STACK_START) & 0xff);
SPH = (STACK_START >> 8) & 0xff);
程序跑死了
改为
#define STACK_START 0x0800
SP = (STACK_START) & 0xff);
SPH = (STACK_START >> 8) & 0xff);
程序正常, 就是说我的程序要2K的堆栈才行 说一不二 发表于 2026-4-9 20:39
设了
#define STACK_START 0x0c00
SP = (STACK_START) & 0xff);
看来,编译的提示 edata+hdata=256就是把256以上到4096的字节都给了堆栈
页:
1
[2]