正确答案是:MCS-51单片机的堆区只能在RAM__中设置。堆栈寄存器SP是8__位寄存器。
在汇编语言中,SP寄存器是指堆栈指针寄存器,用于堆栈操作。PUSH和POP指令用于从SP寄存器获得当前堆栈段中的偏移量。因此,SP寄存器被称为堆栈指针,SP总是指向堆栈的顶部。
堆栈是计算机中广泛使用的一种技术。基于栈的zd数据进出后进先出特性,常用于保存中断断点、保存子程序调用的返回点、保存CPU字段数据等,也可用于在程序之间传递参数。
扩展资料:
为了更准确地描述了堆栈,据的增减方向堆栈指针操作期间压栈,栈分为“增加堆栈”(SP的方向变化较大的值)和“减少栈”(SP的变化方向的小值)。
根据SP指向的存储单元是否包含堆栈数据,将堆栈分为“满栈”(SP点单元包含堆栈有效数据)和“空栈”(SP点单元不包含堆栈有效数据)。
堆栈模式有四种:全递增、空递增、全递减和空递减。
ARM处理器的堆栈操作非常灵活,并且支持所有四种类型的堆栈。
楼上所说:“...低128字节”,是错误的说法,高128字节也是可以当做堆栈使用的。
正确答案是:
MCS―51单片机的堆栈区只可设置在__片内RAM__,堆栈寄存器SP是__8__位寄存器。
MCS―51单片机的堆栈区只可设置在_07H~7FH_,堆栈寄存器5P是_8_位寄存器
楼上说的很清楚了,我补充一下堆栈区一般设置在内部RAM(30H-7FH)的用户存储器中,复位是,SP一般是07H。所以要把SP改到用户存储器中。SP是八位的,16位的如PC DPTR等。
MCS―51单片机的堆栈区只可设置在(片内数据存储区的低128字节),堆栈寄存器5P是(8)位寄存器。