2301_78955411 2023-11-17 17:16 采纳率: 100%
浏览 8
已结题

汇编语言题,望解答!!

题目如下图所示,执行下面命令后,sp,bp,ax,bx分别是多少,答案选A

img

  • 写回答

3条回答 默认 最新

  • 虫鸣@蝶舞 2023-11-17 18:00
    关注

    1.PUSH AX: 这条指令将AX寄存器的内容(8A4BH)推入栈中。栈是向下增长的,所以SP将从2000H减少2,变为1FFEH。
    2.MOV AX, [BP]: 这条指令将BP指向的内存地址的内容移动到AX中。由于我们不知道[BP]的内容,AX的值未知。
    3.POP BX: 这条指令将栈顶的值弹出到BX中。由于最后一个被推入栈的值是8A4BH,所以BX将被设置为8A4BH。同时,SP将增加2,恢复为2000H。
    总结下:SP=2000H BP=1FFEH AX=未知 BX=8A4BH
    根据已知结果把C、D排除,只剩A和C(这两项的第三项AX相同),而A的第4项是BX=8A4BH,所以选A

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月26日
  • 已采纳回答 11月18日
  • 创建了问题 11月17日