天津四季酒店开业照片:单片机C语言编程中,怎样用C语言实现高效易用的堆栈?

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/03 17:31:47
在单片机编程中,汇编语言用PUSH 和 POP 语句可以直接使用堆栈功能,在KEIL C 中是否需要自己建立一个堆栈区。如果是,怎样建立?效率能达到汇编的效率么?希望高人能帮忙给个例子。不胜感激!!!

keil的堆栈是不需要自己分配的。
使用keil编程时,keil有个startup.a51文件,该文件会和你的源程序一起编译生成目标代码,该startup.a51中有一条语句MOV SP,#?STACK-1用来进行堆栈分配,而?STACK作为一个变量,其值是编译器根据你的程序自动决定的;
所以,使用keil编程不需要理会堆栈的。
by the way:你可以参照keil下自带的一些例子,这些例子在..\keil\c51\examples下