更多“单选题在32位处理器上,假设栈顶指针寄存器的当前值为0x00FFFFE8,那么在执行完指令“pusheax”(eax为32位寄存器)后,栈指针的当前值应为()A 0x00FFFFE4B 0x00FFFFE6C 0x00FFFFEAD 0x00FFFFEC”相关问题
  • 第1题:

    寄存器R15用作()。

    A.栈指针寄存器

    B.程序计数器

    C.当前程序状态寄存器

    D.基地址寄存器


    参考答案:B

  • 第2题:

    从一个栈顶指针为h的链栈中删除一个结点时,用x保存被删结点的值,可执行x=h->data;和()。(结点的指针域为next)
    h=h->next;

  • 第3题:

    设有一个非空的链栈,栈顶指针为hs,要进行出栈操作,用x保存出栈结点的值,栈结点的指针域为next,则可执行x=hs->data;()。
    hs=hs->next;

  • 第4题:

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


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

  • 第5题:

    在32位处理器上,假设栈顶指针寄存器的当前值为0x00FFFFE8,那么在执行完指令“pusheax”(eax为32位寄存器)后,栈指针的当前值应为()

    • A、0x00FFFFE4
    • B、0x00FFFFE6
    • C、0x00FFFFEA
    • D、0x00FFFFEC

    正确答案:A

  • 第6题:

    假设寄存器%eax的值为x,%ecx的值为y,那么汇编代码指令leal(%eax,%ecx,5),%edx存储在寄存器%edx中的值为()

    • A、5x
    • B、5y
    • C、5x+y
    • D、5y+x

    正确答案:D

  • 第7题:

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


    正确答案:SP=1078H

  • 第8题:

    填空题
    设有一个非空的链栈,栈顶指针为hs,要进行出栈操作,用x保存出栈结点的值,栈结点的指针域为next,则可执行x=hs->data;()。

    正确答案: hs=hs->next
    解析: 暂无解析

  • 第9题:

    填空题
    从一个栈顶指针为h的链栈中删除一个结点时,用x保存被删结点的值,可执行x=h->data;和()。(结点的指针域为next)

    正确答案: h=h->next
    解析: 暂无解析

  • 第10题:

    单选题
    假设寄存器%eax的值为x,%ecx的值为y,则指明下面汇编指令存储在寄存器%edx中的值() Leal(%eax,%ecx),%edx
    A

    x

    B

    y

    C

    x+y

    D

    x–y


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

  • 第11题:

    单选题
    下列叙述中正确的是(  )。
    A

    在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化

    B

    在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化

    C

    在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化

    D

    在栈中,栈中元素不会随栈底指针与栈顶指针的变化而动态变化


    正确答案: C
    解析:
    栈中元素遵循“先进后出”的原则。入栈和出栈都是对栈顶指针操作,因此,栈底指针不变,栈中元素随栈顶指针的变化而动态变化。答案选择C选项。

  • 第12题:

    单选题
    假设寄存器%eax的值为x,%ecx的值为y,那么汇编代码指令leal(%eax,%ecx,5),%edx存储在寄存器%edx中的值为()
    A

    5x

    B

    5y

    C

    5x+y

    D

    5y+x


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

  • 第13题:

    在32位处理器上,假设栈顶指针寄存器的当前值为0×00FFFFE8,那么在执行完指令“pusheax”(eax为32位寄存器)后,栈指针的当前值为()。

    A.0×00FFFFE4
    B.0×00FFFFE6
    C.0×00FFFFEA
    D.0×00FFFFEC

    答案:A
    解析:
    “pusheax”是一条进栈指令,进栈时要先修改栈指针,32位数据占4个字节,存储器按字节编址,所以栈指针-4。

  • 第14题:

    设有一个非空的链栈,栈顶指针为hs,要进行出栈操作,用x保存出栈结点的值,找结点的指针域为next,则可执行x=hs一>data;()。
    hs===hs一>next;

  • 第15题:

    假设寄存器%eax的值为x,%ecx的值为y,则指明下面汇编指令存储在寄存器%edx中的值() Leal(%eax,%ecx),%edx

    • A、x
    • B、y
    • C、x+y
    • D、x–y

    正确答案:C

  • 第16题:

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


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

  • 第17题:

    寄存器R15用作()。

    • A、栈指针寄存器
    • B、程序计数器
    • C、当前程序状态寄存器
    • D、基地址寄存器

    正确答案:B

  • 第18题:

    从一个栈顶指针为HS的非空链栈中删除结点并不需要返回栈顶结点的值和回收结点时,应执行()操作。


    正确答案:HS=HS->nex

  • 第19题:

    SP是()寄存器,用来指出当前堆栈段中栈顶的()。


    正确答案:指针;地址

  • 第20题:

    单选题
    寄存器R15用作()。
    A

    栈指针寄存器

    B

    程序计数器

    C

    当前程序状态寄存器

    D

    基地址寄存器


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

  • 第21题:

    填空题
    从一个栈顶指针为top的非空链式栈中删除节点并不需要返回栈顶结点的值和回收结点时,应执行()操作。

    正确答案: top=top→link
    解析: 暂无解析

  • 第22题:

    填空题
    设有一个非空的链栈,栈顶指针为hs,要进行出栈操作,用x保存出栈结点的值,找结点的指针域为next,则可执行x=hs一>data;()。

    正确答案: hs===hs一>next
    解析: 暂无解析

  • 第23题:

    单选题
    80X86中IP寄存器的作用是()
    A

    保存当前栈顶地址

    B

    保存代码段的基地址

    C

    指示下一条要执行的指令地址

    D

    暂存当前执行的指令地址


    正确答案: C
    解析: