参考答案和解析
正确答案:RET指令用在被调用的过程末尾处。SP的值是3010H。
更多“带参数的返回指令用在什么场合?设栈顶地址为3000H,当执行RET 0008后,问SP的值是多少?”相关问题
  • 第1题:

    PC中,设(SP)=0202H,(SS)=2000H,执行PUSHSP指令后,栈顶的物理地址为( )。

    A.0200H

    B.20102H

    C.20200H

    D.0102H


    正确答案:C

  • 第2题:

    假设(SP)=0100H,(SS)=200H,执行POP AX指令后,栈顶的物理地址是【 】。


    正确答案:2002H
    2002H

  • 第3题:

    假设由CALL指令调用的某子程序使用段内返回指令RET4,问该予程序执行到 RET4指令时( )实现返回操作?

    A.返回到CALL指令下面一条指令继续执行主程序

    B.按照(SP)和(SP+1)中存放的地址执行返回操作

    C.按照(SP+4)和(SP+5)中存放的地址执行返回操作

    D.返回到CALL指令下面第4条指令继续执行主程序


    正确答案:B

  • 第4题:

    假设某子程序使用的返回指令是RET4,则返回地址为( )。

    A.CALL指令下面第二条指令的地址

    B.(SP+1)和(SP)中存放的地址

    C.SP+5)和(SP+4)中存放的地址

    D.CALL 指令下面第四条指令的地址


    正确答案:B
    解析:返回指令。一种方式是段内返回。先将栈顶的字送入IP,然后SP增2。若带立即数,SP再加立即数(丢弃一些在执行CALL之前入栈的参数)。二是段间返回。栈顶的字送入IP后(SP增2),再将栈顶的字送入CS,SP再增2。若带立即数,则SP再加立即数。

  • 第5题:

    假设由CALL指令调用的某子程序使用段内返回指令RET4,该子程序执行到RET4指令时( )实现返回操作。

    A.返回到CALL指令下面一条指令继续执行主程序

    B.按照(SP)和(SP+1)中存放的地址执行返回操作

    C.按照(SP+4)和(SP+5)中存放的地址执行返回操作

    D.返回到CALL指令下面第4条指令继续执行主程序


    正确答案:B

  • 第6题:

    已知(CS)二1500H,(1P)二2050H,(SS)二3000H,(SP)二0050H,所在段的段基址为4000H,偏移地址为0350H,执行CALLFARPROC指令后,请问: (1)保存的断点偏移值是多少? (2)子程序开始执行时的入口地址是多少?


    正确答案:(1)断点偏移值是:1500H:2055H;
    (2)子程序开始执行时的入口地址是:4000H:0350H

  • 第7题:

    若堆栈段驻留在存储器地址20000H~2FFFFH处,为了能寻址20FFFH地址的栈顶,问应装入栈指针(SP)的值是多少?


    正确答案:装入SP的值为1000H。

  • 第8题:

    带参数的返回指令用在什么场合?设堆栈顶为4000H,当执行RET 0008H后,SP指针的值是多少?


    正确答案:在某些情况下,执行返回指令后,往往需要自动修改堆栈指针,以便废弃一些CALL指令执行前入栈的参数。为了达到这一目的,RET指令可带一个操作数,其指令格式为RET N,其中N为一个偶数。当RET指令完成返回地址出栈后,还进一步执行(SP)←(SP)+N,从而实现了修改堆栈指针目的。
    设堆栈顶为4000H,当执行RET 0008H后,如果是段内返回(SP)←(SP)+2+8=400AH;如果从段间返回,则(SP)←(SP)+4+8=400CH。

  • 第9题:

    设SP=0100H,SS=2000H,执行指令PUSHBP指令后,栈顶(即SP所指向的单元)物理地址是:()

    • A、00FEH
    • B、20102H
    • C、200FEH
    • D、0102H

    正确答案:C

  • 第10题:

    一个堆栈从3000H:0000H开始,最后一个字的偏移地址为0200H,SP内容为0052H,问:栈顶逻辑地址和物理地址、栈底逻辑地址和物理地址、SS的内容是多少?存入1234H后,SP内容是多少?堆栈内容如何变化?


    正确答案: 栈顶逻辑地址为3000H:0052H,物理地址为30052H;
    栈底逻辑地址为3000H:0200H,物理地址为30200H;
    SS=3000H;
    存入1234H后,SP=0050H,[30050H]=1234H。

  • 第11题:

    问答题
    设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行PUSHBX指令后,栈顶地址和栈顶2个字节的内容分别是什么?

    正确答案: 当前栈顶的地址:2010H*10+FE00H=2FF00H;
    执行PUSHBX指令后,堆栈地址指针SP减2,则栈顶地址为:2FEEDH;
    栈顶2个字节的内容为:57H、34H。
    解析: 暂无解析

  • 第12题:

    问答题
    若堆栈段驻留在存储器地址20000H~2FFFFH处,为了能寻址20FFFH地址的栈顶,问应装入栈指针(SP)的值是多少?

    正确答案: 装入SP的值为1000H。
    解析: 暂无解析

  • 第13题:

    PC机中,设(SP)=0100H,(SS)=2000H,执行PUSH3P指令之后,栈顶的物理地址是______。


    正确答案:200FEH
    200FEH 解析:对于堆栈段数据,PA=(SS)左移4位+(SP):PUSH将数据压入堆栈,同时 SP-2 送SP,所以物理地址=20000H+0100H-2H。

  • 第14题:

    PC机中,设(SP)=0100H,(SS)=2000H,执行PUSH SP指令之后,栈顶的物理地址是【 】。


    正确答案:200FEH
    200FEH 解析:当执行PUSH操作时,SP的值减2。所以它的物理地址为:2000H*10H+OFEH= 200FEH。

  • 第15题:

    设(SP)=0100H, (SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是( )。

    A.00FEH

    B.20102H

    C.20FEH

    D.0102H


    正确答案:C
    解析:PUSH指令是入栈操作,因此SP=0100-2=00FEH,其物理地址可由SS+SP计算得出:2000H+00FEH=20FEH。

  • 第16题:

    设SS=2000H,SP=0100H,执行PUSHBP指令后,栈顶的物理地址是______。

    A.2000H

    B.00FEH

    C.20FEH

    D.1000H


    正确答案:C
    解析:PUSH执行入栈操作,SP=0100-2=00FEH,其物理地址可由SS+SP计算得出;2000H+00FEH=20FEH。因此正确答案为C。

  • 第17题:

    设SP=4AH,执行段内返回指令RET4后,SP的值是()。

    • A、44H
    • B、48H
    • C、4CH
    • D、50H

    正确答案:D

  • 第18题:

    设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行PUSHBX指令后,栈顶地址和栈顶2个字节的内容分别是什么?


    正确答案: 当前栈顶的地址:2010H*16+FE00H=2FF00H;
    执行PUSHBX指令后,堆栈地址指针SP减2,则栈顶地址为:2FEEDH;
    栈顶2个字节的内容为:57H、34H。

  • 第19题:

    带参数的返回指令用在什么场合?设栈顶地址为4000H,当执行RET 0008H后,SP指针的值是多少?


    正确答案: 当调用程序为子程序提供一定的参数或参数的地址,这些参数是通过堆栈传递给子程序时;在子程序运行结束返回时,这些参数或参数地址已经没有在堆栈中保留的必要。因此,使用带参数的返回指令RET n,以便废弃一些CALL指令执行前入栈的参数。
    设栈顶地址为4000H,当执行RET 0008H后,执行SP ← SP+n的操作,SP=4008H。

  • 第20题:

    SP的作用是用来表示()

    • A、栈底指针
    • B、栈顶指针
    • C、下一条执行指令的地址
    • D、段基地址

    正确答案:B

  • 第21题:

    HLT指令用在什么场合?如CPU在执行HLT指令时遇到硬件中断并返回后,以下应执行哪条指令?


    正确答案: H.LT用在使CPU处于暂停状态而等待硬件中断的场合。
    在执行HLT指令遇到硬件中断并返回后将执行HLT后面的一条指令。

  • 第22题:

    单选题
    设SP=3000H,执行下列指令后,SP寄存器的值是()POP BXPUSH AX
    A

    2FFEH

    B

    3000H

    C

    3002H

    D

    3004H


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

  • 第23题:

    问答题
    带参数的返回指令用在什么场合?设栈顶地址为3000H,当执行RET 0008后,问SP的值是多少?

    正确答案: RET指令用在被调用的过程末尾处。SP的值是3010H。
    解析: 暂无解析