什么是堆栈

作者&投稿:尾知 (若有异议请与网页底部的电邮联系)
堆是堆(heap),栈是栈(stack),虽然堆栈(heap and stack)有相似之处,但不要混为一谈。
本质上讲,堆(heap)是一种数据结构,是纯软件的实现。堆基于一定的程序基础(例如在操作系统),它更加偏向于软件实现动态的内存管理,令程序运行时根据所需来动态申请/释放内存。
而栈(stack)既存在软件实现又存在硬件实现。栈本质上是一种简单的先进先出结构,主要目的是为程序运行时保存关键的现场数据,尤其适合于(嵌套式)中断的配合。几乎所有的微控制器/微处理器都具备硬件栈。而软件/操作系统中又可以进一步建立软件栈,为线程建立专用的存储区域。

~

堆栈是什么意思
答:堆栈的解释[storehouse;warehouse;godown] 临时寄存货物的地方 详细解释 供临时存放货物的地方。 郭沫若 《洪波曲》 第八章三:“有一次 贺衷寒 竟于夜半突然搜查服务处的堆栈,但什么也没有查出。” 词语分解 堆的解释 堆 ī 累积在一起的 东西 :堆栈。堆房。土堆。 累积在一起,聚积在一起:...

堆栈是什么意思
答:堆栈是一种数据结构。系统或者数据结构栈中数据内容的读取与插入(压入)PUSH和删除POP是两回事。压入是增加数据,弹出是删除数据,这些操作只能从栈顶即最低地址作为约束的接口界面入手操作 ,但读取栈中的数据是随便的,没有接口约束之说。很多人都误解这个理念从而对栈产生困惑。而系统栈在计算机体系...

堆栈是什么意思
答:堆栈是一种运算受限的线性表。栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。栈地址是指栈顶的地址。当为局部变量分配栈内存时,系统就将局部变量存入到栈的某个内存块中;当子函数运行结束局部变量...

什么是堆栈?
答:在计算机领域,堆栈是一个不容忽视的概念,但是很多人甚至是计算机专业的人也没有明确堆栈其实是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。要点:堆:顺序随意 栈:后进先出(Last-In/First-Out)

什么事堆栈,堆栈有哪些运算,堆栈怎样存储
答:stack,其实就是一块内存空间,关键在于他的用途.1.对于程序指令来说 执行exe时,程序都会默认分配1M堆栈空间,vs2008等开发软件都可以进行调整实际大小.指令变成一条条机器码,cpu会一条条执行.例子:xxxxxxx call 0x403650 <- -- yyyyy 在执行call命令时,cpu会把下一条指令地址写入堆栈地址空间中,当然...

什么是堆栈?堆栈有何作用?
答:在计算机领域,堆栈是一个不容忽视的概念,但是很多人甚至是计算机专业的人也没有明确堆栈其实是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。要点:堆:顺序随意栈:后进先出(Last-In/First-Out).参考地址:http://baike.baidu.com/...

什么是堆栈
答:堆:顺序随意 栈:先进后出 堆和栈的区别 一、预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员...

什么是堆栈?
答:堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。在采用段式内存管理方式进行程序内存分配的架构中,堆栈段用来存放局部变量和函数返回地址。堆栈段是在程序运行时动态分配使用,只需要通过栈顶指针即可访问。大多数CPU中都有专用寄存器可以被用来存放栈顶地址。理论上,最小的...

什么是堆栈和指针,请生动的简单的解释一下
答:堆栈是一种执行“后进先出”算法的数据结构。设想有一个直径不大、一端开口一端封闭的竹筒。有若干个写有编号的小球,小球的直径比竹筒的直径略小。现在把不同编号的小球放到竹筒里面,可以发现一种规律:先放进去的小球只能后拿出来,反之,后放进去的小球能够先拿出来。所以“先进后出”就是这种结构...

堆栈是什么
答:在计算机领域,堆栈是一个不容忽视的概念,但是很多人甚至是计算机专业的人也没有明确堆栈其实是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。要点:堆:顺序随意 栈:后进先出(Last-In/First-Out)参考资料:http://baike.baidu.com/...