FAR型过程中有指令“RET 4”执行前SP=1000H,则该指令执行完后SP的值为()。A、0FF6HB、0FF8HC、1006HD、1008H

题目

FAR型过程中有指令“RET 4”执行前SP=1000H,则该指令执行完后SP的值为()。

  • A、0FF6H
  • B、0FF8H
  • C、1006H
  • D、1008H

相似考题
更多“FAR型过程中有指令“RET 4”执行前SP=1000H,则该指”相关问题
  • 第1题:

    已知(IP)=1000H,(SP)=2000H,(BX)=2817H,CALL WORD PTR[BX]指令的机器代码是FFl7H,试问执行该指令后,SS:1FFEH字节单元中的数据是( )。

    A.28H

    B.3FH

    C.00H

    D.02H


    正确答案:D

  • 第2题:

    已知IP=1000H,(SP)=2000H,(BX)=283FH,CALL WORD PTR [BX]指令的机器代码是 FF17H,试问执行该指令后,(IFFEH)=( )

    A.28H

    B.3FH

    C.00

    D.02H


    正确答案:D
    解析:下一IP=1000H+2=1002H,CALLWORDPTR[BX]是段内调用。只要压入IP的值就可以了。堆栈的内容为1002H(即下一IP的值。)压入IP后,SP-2=1FFEH。(1FFEH)应该=02H(即栈顶的值)。

  • 第3题:

    假设某子程序使用的返回指令是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再加立即数。

  • 第4题:

    已知(SS)=1000H,(SP)=0110H,执行下列程序后(SP)=( )。 MOV BX,N1 PUSH BX MOV BX,N2 PUSH BX CALL L1 … L1:… RET2

    A.0100H

    B.010EH

    C.OOFEH

    D.0102H


    正确答案:B

  • 第5题:

    若SP=1000H,则执行指令PUSHAX后,(SP)=0FFEH。()


    答案:对
    解析:

  • 第6题:

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

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

    正确答案:D

  • 第7题:

    设堆栈指针(SS)=2000H,(SP)=1000H,在执行PUSH AX指令后,(SS)=()(SP)=()


    正确答案:2000H;0FFEH

  • 第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题:

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


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

  • 第10题:

    假设PC=1000H是当前该指令的地址,执行SJMP02H,则单片机要执行的下一条指令的地址是多少?


    正确答案:(1000H+2)+2=1004H

  • 第11题:

    已知SP=25H,PC=4345H,(24H)=12H,(25H)=34H,(26H)=56H,当执行RET指令后,SP=(),PC=()。


    正确答案:23;3412H

  • 第12题:

    单选题
    设堆栈指针(SP)=4EH,执行下面两条指令,当刚进入子程序P1执行时,SP的值是()。PUSHF CALL FAR PTR P1
    A

    48H

    B

    4CH

    C

    52H

    D

    54H


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

  • 第13题:

    已知IP=1000H,SP=2000H,BX=283FH,指令CALL WORD PTR [BX]的机器代码是FF17H,执行指令后,(1FFEH)=( )。

    A.20H

    B.3FH

    C.02H

    D.28H


    正确答案:C
    解析:已知CALL指令为2B,因此下一条指令的返回地址应该为当前的IP+2=1002H,这就是在调用子程序前应该压栈保存的返回地址。执行CALL指令时,SP-2送入SP,SP=1FFEH, (1FFEH)=02H,(1FFFH)=10H。

  • 第14题:

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

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

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

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

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


    正确答案:B

  • 第15题:

    执行下列指令后,SP寄存器的值是( )。 MOV SP,1000H PUSH AX

    A.OFFEH

    B.OFFFH

    C.1001

    D.1002H


    正确答案:A

  • 第16题:

    已知(IP)=1000H,(SP)=2000H,(BX)=2817H,CALL,WORD PTR[BX]指令的机器代码是FFl7H,试问执行该指令后,SS: 1FFEH字节单元中的数据是( )。

    A.28H

    B.3FH

    C.OOH

    D.02H


    正确答案:D

  • 第17题:

    若SS=2000H,SP=1000H,执行指令PUSHAX后,AX内容压入21000H字单元中。()


    答案:对
    解析:

  • 第18题:

    设堆栈指针(SP)=4EH,执行下面两条指令,当刚进入子程序P1执行时,SP的值是()。PUSHF CALL FAR PTR P1

    • A、48H
    • B、4CH
    • C、52H
    • D、54H

    正确答案:D

  • 第19题:

    设堆栈指针SP的初值为1000H,AX=2000H,BX=3200H,试问: 1、执行指令PUSH AX后SP=? 2、再执行PUSH BX及POPAX后SP、AX、BX?


    正确答案:1、SP=0FFEH;
    2、SP=0FFEH;AX=3200H;BX=3200H。

  • 第20题:

    已知(SP)=1000H,执行PUSH AX指令后,(SP)=()。

    • A、0FFEH
    • B、0FFFH
    • C、1001H
    • D、1002H

    正确答案:A

  • 第21题:

    CALL指令和RET指令的用法,正确的说法是()。

    • A、CALL指令和RET指令都对堆栈操作
    • B、只有CALL指令使用堆栈
    • C、只有RET指令使用堆栈
    • D、CALL指令和RET指令都不用堆栈

    正确答案:A

  • 第22题:

    如8051的SP的内容是40H,执行RET这样的指令后,()。

    • A、 当前寄存器SP中的内容为38H
    • B、 当前寄存器SP中的内容为3EH
    • C、 当前寄存器SP中的内容为RET所对应的地址单元的内容
    • D、 内存RAM的41H42H单元中存放RET指令所对应的PC值

    正确答案:B

  • 第23题:

    单选题
    CALL指令和RET指令的用法,正确的说法是()。
    A

    CALL指令和RET指令都对堆栈操作

    B

    只有CALL指令使用堆栈

    C

    只有RET指令使用堆栈

    D

    CALL指令和RET指令都不用堆栈


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