简述什么是堆栈?堆栈中入栈、出栈的过程?

题目

简述什么是堆栈?堆栈中入栈、出栈的过程?

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列关于8086系统堆栈的论述中,正确的是。()

A.堆栈的工作方式是“先进后出”,入栈时SP减小
B.堆栈的工作方式是“先进后出”,入栈时SP增大
C.堆栈的工作方式是“先进先出”,入栈时SP减小
D.堆栈的工作方式是“先进先出”,入栈时SP增大

答案:A
解析:

第2题:

“删除栈顶元素”、“删除栈底元素”、“判断堆栈是否为空”和“将堆栈置为空栈”这4种操作中,()不是堆栈的基本操作。


正确答案:“删除栈底元素”

第3题:

如果一个堆栈的入栈序列是a、b、c、d,那么堆栈的不可能的输出序列是( )。

A.cbad

B.acbd

C.bdac

D.cbda


参考答案:C

第4题:

在存储器堆栈中,保持不变的是()

  • A、 栈顶
  • B、 栈指针
  • C、 栈底
  • D、 栈中的数据

正确答案:C

第5题:

下列关于堆栈的说法,错误的是()

  • A、以“先入后出”为原则
  • B、栈区最高地址单元的前一个单元为栈底
  • C、运行中SP寄存器动态跟踪栈顶位置
  • D、压栈和弹出都是以字节为单位

正确答案:D

第6题:

堆栈寻址方式中,设A为某通用寄存器,SP为堆栈指示器,Msp为SP指示器的栈项单元,如果入栈操作的动作是(A)→Msp,(SP)-1→SP,那么出栈操作的动作应为()。

A.(SP)+1→SP,(Msp)→A
B.(Msp)→A,(SP)+1→SP
C.(SP)→1→SP,(Msp)→A
D.(Msp)→A,(SP)-1→SP

答案:A
解析:
由入栈操作的动作可知,堆栈指示器SP是向低地址扩充的,其指向的是栈项下一个单元的地址。那么在出栈时,首先将堆栈指示器SP指向栈顶元素,即将SP向高地址扩充一个单元(对应动作为:(SP)+1→SP).然后将该单元的内容存放到通用寄存器A中(对应动作为:(Msp)→A)。

第7题:

在存储器堆栈结构中,堆栈指针SP的内容是()。

  • A、栈顶单元地址
  • B、栈底单元地址
  • C、栈顶单元内容
  • D、栈底单元内容

正确答案:A

第8题:

堆栈的访问方式是(11),其中堆栈指针在数据入栈时(12)。

A.先进后出

B.先进先出

C.指令定位

D.用户可选


正确答案:A

第9题:

堆栈具有这样的特性,即最后一个入栈的元素,将是()出栈的元素。新入栈的元素将总是放在当前的()。不管什么时候,需要出栈时,总是从当前的()取走一个元素。


正确答案:最先;栈顶;栈顶

第10题:

堆栈的深度由哪个寄存器确定? 为什么说一个堆栈的深度最大为64KB? 在执行一条入栈或出栈指令时,栈顶地址将如何变化?


正确答案:堆栈的深度由SP决定,由于16位的SP=FFFFH可最大寻址64KB,故深度最大为64KB。当字数据出栈时,高8位放入由SP-2寻址单元,然后SP-2;当字数据出栈时,低8位从SP寻址的单元弹出,高8位从SP+1寻址的单元弹出,然后SP+2。

更多相关问题