已知一个堆栈中包含了4个元素,而且知道他们在堆栈中的位置依次是a,b,c,d(从栈底开始往上数),现在让这个堆栈进行连续出栈操作,直到堆栈空,则这些元素的出栈顺序是()。A.dcbaB.abcdC.abdcD.cdab

题目

已知一个堆栈中包含了4个元素,而且知道他们在堆栈中的位置依次是a,b,c,d(从栈底开始往上数),现在让这个堆栈进行连续出栈操作,直到堆栈空,则这些元素的出栈顺序是()。

A.dcba

B.abcd

C.abdc

D.cdab


相似考题
参考答案和解析
D
更多“已知一个堆栈中包含了4个元素,而且知道他们在堆栈中的位置依次是a,b,c,d(从栈底开始往上数),现在让这个堆栈进行连续出栈操作,直到堆栈空,则这些元素的出栈顺序是()。”相关问题
  • 第1题:

    若3个元素a,b,c按此先后次序进入一个初始为空的堆栈,那么,下面给出的四个选择中,不可能是该堆栈的出栈序列的是()。

    • A、a,b,c
    • B、c,b,a
    • C、b,a,c
    • D、c,a,b

    正确答案:D

  • 第2题:

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

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

    正确答案:A

  • 第3题:

    在存储器堆栈中,若栈底地址为A,SP指针初值为A--1,当堆栈采用从地址小的位置向地址大的位置生成时,弹出操作应是()

    • A、先从堆栈取出数据,然后SP指针减
    • B、先从堆栈取出数据,然后SP指针加
    • C、SP指针先加1,然后从堆栈取出数据
    • D、SP指针先减1,然后从堆栈取出数据

    正确答案:A

  • 第4题:

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


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

  • 第5题:

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

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

    正确答案:C

  • 第6题:

    在堆栈中保持不变的是()

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

    正确答案:B

  • 第7题:

    MSC-51属向上增长型堆栈,这种堆栈的操作规则是进栈操作时,先()后写入数据;出栈时,先读出数据()。


    正确答案:SP加1;SP减1

  • 第8题:

    何谓堆栈?为什么要设置堆栈?栈区是怎样确定的?数据进栈、出栈按照何种规律?进栈用什么指令?出栈用什么指令?进栈、出栈时栈指针如何变化?通常栈底所指是什么内容?


    正确答案:微型计算机中的堆栈是读写存储器RAM中的一个特殊的区域,是一组按照“先进后出”的方式工作的、用于暂存信息的存储单元。
    设置堆栈的目的是便于保护断点地址与现场信息。
    用堆栈指针指示堆栈所在的位置。
    数据进栈、出栈“按先进后出”的原则工作。
    进栈用PUSH指令,出栈用POP指令。进栈时指针向地址增加的方向变化,出栈时指针向地址减小的方向变化。
    栈底是最先进栈的信息所在的单元。

  • 第9题:

    单选题
    在存储器堆栈中,若栈底地址为A,SP指针初值为A--1,当堆栈采用从地址小的位置向地址大的位置生成时,弹出操作应是()
    A

    先从堆栈取出数据,然后SP指针减

    B

    先从堆栈取出数据,然后SP指针加

    C

    SP指针先加1,然后从堆栈取出数据

    D

    SP指针先减1,然后从堆栈取出数据


    正确答案: C
    解析: 堆栈是按特定顺序进行访问的存储区,其访问方式是后进先出,即先存入的数据后读出。对堆栈的访问由堆栈指针寄存器SP控制,当堆栈采用从地址小的位置向地址大的位置生成时,入栈操作是SP指针先加1,然后将数据存人堆栈,从堆栈取出弹出操作是先从堆栈取出数据,然后SP指针减1。

  • 第10题:

    单选题
    在堆栈中保持不变的是()
    A

    栈指针

    B

    栈底

    C

    栈顶

    D

    栈中数据


    正确答案: B
    解析: 暂无解析

  • 第11题:

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

     栈顶

    B

     栈指针

    C

     栈底

    D

     栈中的数据


    正确答案: A
    解析: 暂无解析

  • 第12题:

    单选题
    若3个元素a,b,c按此先后次序进入一个初始为空的堆栈,那么,下面给出的四个选择中,不可能是该堆栈的出栈序列的是()。
    A

    a,b,c

    B

    c,b,a

    C

    b,a,c

    D

    c,a,b


    正确答案: D
    解析: 暂无解析

  • 第13题:

    某堆栈初始为空,符号PUSH和POP分别表示1次进栈操作和1次出栈操作。对于进栈序列a,b,c,d,e,经过PUSH, PUSH, POP, PUSH, POP, PUSH, PUSH时,得到的出栈序列是什么?


    正确答案:得到的出栈序列是b,c

  • 第14题:

    若5个元素的进栈序列是a、b、c、d、e,利用堆栈操作能否得到出栈序列b、c、a、e、d和d、b、a、c、e?对于不能得到的出栈序列,请说明理由。


    正确答案:能够得到出栈序列b、c、a、e、d,但不能得到出栈序列d、b、a、c、e。因为若出栈序列以元素d开始,则说明在d之前的进栈元素有a、b和c,三个元素中c是此刻的栈顶元素,b和a不可能先于元素c出栈,因此,不可能得到出栈序列d、b、a、c、e。

  • 第15题:

    堆栈指针的作用是()。

    • A、指明栈底的位置
    • B、指明栈顶的位置
    • C、操作数地址
    • D、指令的地址

    正确答案:B

  • 第16题:

    堆栈指SP的内容是()。

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

    正确答案:A

  • 第17题:

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


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

  • 第18题:

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


    正确答案: 堆栈是在内部RAM中按“后进先出”的规则组织的一片存储区。
    入栈操作时,先将SP的内容加1,然后将指令指定的直接地址单元的内容存入SP指向的单元;出栈操作时,先将SP指向的单元内容传送到指令指定的直接地址单元,然后SP的内容减1

  • 第19题:

    因为SP所指栈顶为“实”栈顶,所以在入栈和出栈操作时都要先修改堆栈指针SP,再执行入栈、出栈操作。


    正确答案:错误

  • 第20题:

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

    正确答案: “删除栈底元素”
    解析: 暂无解析

  • 第21题:

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

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

  • 第22题:

    问答题
    若5个元素A,B,C,D,E按此先后次序进入一个初始为空的堆栈,那么,在所有可能的出栈序列中,第一个元素为C、且第二个元素为D的出栈序列有哪些?(写出结论即可)

    正确答案: 满足题目要求的出栈序列一共有3个,分别是C,D,B,A,E,C,D,E,B,A和C,D,B,E,A。
    解析: 暂无解析

  • 第23题:

    判断题
    因为SP所指栈顶为“实”栈顶,所以在入栈和出栈操作时都要先修改堆栈指针SP,再执行入栈、出栈操作。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第24题:

    问答题
    若5个元素的进栈序列是a、b、c、d、e,利用堆栈操作能否得到出栈序列b、c、a、e、d和d、b、a、c、e?对于不能得到的出栈序列,请说明理由。

    正确答案: 能够得到出栈序列b、c、a、e、d,但不能得到出栈序列d、b、a、c、e。因为若出栈序列以元素d开始,则说明在d之前的进栈元素有a、b和c,三个元素中c是此刻的栈顶元素,b和a不可能先于元素c出栈,因此,不可能得到出栈序列d、b、a、c、e。
    解析: 暂无解析