niusouti.com
更多“在堆栈操作中,当进栈数据全部弹出后,这时SP应指向()”相关问题
  • 第1题:

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

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

    答案:A
    解析:

  • 第2题:

    在向下生成的堆栈中,如果入栈指令PUSHX的操作定义为:SP←(SP)+1,M(SP)←M(X),则出栈指令POPX应定义为()。

    A.SP←(SP)-1,M(X)←M(SP)
    B.SP←(SP)+1,M(X)←M(SP)
    C.M(X)←M(SP),SP←(SP)-1
    D.M(X)←M(SP),SP←(SP)+1

    答案:C
    解析:
    入栈是先定位栈顶指针然后存储数据,出栈是先出数据,然后再定位栈顶指针。

  • 第3题:

    在向上生成(地址码减小方向)堆栈中,若约定位是顶栈(即堆顶指针随时指向实有数据的堆顶),则正确的压入数据操作为()。

    A.先使(sP)+1,再写入数据
    B.先写入数据,再使(SP)+1
    C.先使(SP)-1,再写入数据
    D.先写入数据,再使(SP)-1

    答案:D
    解析:
    把要压栈的数据先写进堆栈指针现在所指的地址,再改变堆栈指针。因为地址码的方向是减小,所以是(SP)-1。

  • 第4题:

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

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

    正确答案:A

  • 第5题:

    51单片机中,堆栈存放数据的原则是先进后出,后进先出,数据进栈后,栈顶向下移动,栈指针SP值随之减小。


    正确答案:错误

  • 第6题:

    已知堆栈段指针寄存器(SP)=1027H,进栈5个数,然后再出栈4个数后(SP)为多少?


    正确答案:(SP)=1029H

  • 第7题:

    堆栈是一个特殊的存储器区域,其操作是以2字节单元为单位按照先进后出原则来处理;采用SP指向栈顶地址,入栈时地址变化为()。


    正确答案:SP<=(SP)-2

  • 第8题:

    在存储器堆栈结构中,在栈底为最大地址的堆栈操作中压栈是指()。

    • A、先使SP减1,再将数据存入SP所指单元
    • B、先使SP加1,再将数据存入SP所指单元
    • C、先将数据存入SP所指单元,再将SP减1
    • D、先将数据存入SP所指单元,再将SP加1

    正确答案:A

  • 第9题:

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


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

  • 第10题:

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

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

    B

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

    C

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

    D

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


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

  • 第11题:

    单选题
    堆栈寻址方式中,设A为累加寄存器,SP为堆栈指示器,Msp为SP指示器的栈顶单元,如果操作的动作是:(A)→Msp,(SP)-1→SP,那么出栈操作的动作为:()
    A

    (Msp)→A,(SP)+1→SP

    B

    (SP)+1→SP,(Msp)→A

    C

    (SP)-1→SP,(Msp)→A

    D

    (Msp)→A,(SP)-1→SP


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

  • 第12题:

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

    B


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

  • 第13题:

    在堆栈寻址中,设A为累加器,SP为堆栈指示器,Msp为SP指示的栈顶单元。如果进栈操作顺序是:(SP)-1→SP,(A)→Msp,那么出栈操作的顺序应是()。

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

    答案:A
    解析:
    堆栈是按特定顺序进行访问的存储区,其访问方式是后进先出,即先存入的数据后读出。对堆栈的操作有入栈和出栈两种,两者的操作完全相反,包括功能和顺序均相反。

  • 第14题:

    堆栈寻址方式中,设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)。

  • 第15题:

    在8086CPU中堆栈操作是字操作还是字节操作?已知SS=1050H,SP=0006H,AX=1234。若执行对AX的压栈操作后,则AX中的数据存放在何处?SP为什么值?


    正确答案: 堆栈操作是字操作。
    对AX压栈后,AX中的数据在10504H,10505H单元中,其中
    (10504H)=34H,(10505H)=12H,SP=0004H。

  • 第16题:

    已知堆栈段指针寄存器(SP)=1027H,进栈5个数后(SP)为多少?


    正确答案:(SP)=1031H

  • 第17题:

    堆栈寻址方式中,设A为累加寄存器,SP为堆栈指示器,Msp为SP指示器的栈顶单元,如果操作的动作是:(A)→Msp,(SP)-1→SP,那么出栈操作的动作为:()

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

    正确答案:B

  • 第18题:

    SP的内容可以不指向堆栈的栈顶


    正确答案:错误

  • 第19题:

    SP指针始终指向堆栈的栈底


    正确答案:错误

  • 第20题:

    堆栈指针SP存放栈顶的地址,进栈时自动加1,出栈时自动减1,因此,SP总是指向栈顶


    正确答案:正确

  • 第21题:

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


    正确答案:错误

  • 第22题:

    判断题
    51单片机中,堆栈存放数据的原则是先进后出,后进先出,数据进栈后,栈顶向下移动,栈指针SP值随之减小。
    A

    B


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

  • 第23题:

    判断题
    堆栈寻址中,在压入操作时,先减小SP后将数据压入堆栈;在弹出操作时,先从堆栈弹出数据后增加SP值.
    A

    B


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

  • 第24题:

    判断题
    堆栈寻址中,在压入操作时,先将数据压入堆栈后减小SP的值;在弹出操作时,先增加SP的值后将数据弹出堆栈。
    A

    B


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