设堆栈指针SP的初值为1000H,(AX)=2000H,(BX)=3000H,试问:执行指令

设堆栈指针SP的初值为1000H,(AX)=2000H,(BX)=3000H,试问:执行指令
PUSH AX ; (SP)=
PUSH BX ; (BX)=
POP AX ; (SP)= ,(AX)=

我实在是不会呀、、、、、、

堆栈指针SP总是指向栈顶,每执行一次PUSH指令SP-2,执行一次POP 指令SP+2.所以,执行PUSH AX指令后,(SP)=22FEH;再执行PUSH BX及POP AX后,(SP)=22FEH,(AX)=(BX)=1234H
温馨提示:内容为网友见解,仅供参考
无其他回答

设堆栈段指针SP的初值为1000H,AX=2000H,BX=3000H (1)执行指令PUSH AX后...
(1) PUSH AX 后,SP向高地址方向,增加2个单位,因为PC机按字节编址的,AX是两个字节,你懂的~~于是,SP 值为 1002H;(2)然后PUSH BX;后POP AX; 入一下,出一下,当然SP不变了,于是SP = 1002H;前者是将BX的值压到栈中,后者是将这个值弹到AX中,于是,你又懂了,BX = 3000H...

设堆栈指针SP的初值为1000H,AX=2000H,BX=3000H,执行指令PUSH AX后SP=...
PUSH AX 使sp-2 也就是说1000H-2=0FFEH

微机题,编制完成EAX*5\/8的程序段。要求:1.用乘法指令实现。2.用移位和...
(6)为堆栈操作。3.2 试述指令MOV AX,2000H和MOV AX,DSz[2000H]的区别。解:前一条指令是立即寻址,即把立即数2000H传送至寄存器AX。后一条指令是直接寻址,是把数据(DS)段中的地址为200OH单元的内容传送至寄存器AX。3.3 写出以下指令中内存操作数的所在地址。(1)MOV AL, [BX 10](2)MOV [BP 10], AX(...

设 堆栈指针SP的初值为2000H,AX=3000H ,BX=5000H,执行PUSH AX 后,S...
PUSH AX后是把AX的值放入栈中,SP减一个字的长度也就是2个字节,变成1FFEH,AX,BX不变。PUSH BX也是同义,SP变为1FFCH,AX,BX不变。POP AX是把当前SS:SP的内容(也就是5000H)出栈并给BX,SP变为1FFEH,AX变为5000H,BX一直都没变,仍是5000H 希望你能明白,其实不难。

堆栈段指针SP的初值为2400H,AX= 4000H,BX= 3600H ,(1) 执行指令PUSH AX...
增2404H,减2396H

在8086中SP的初值为2000H,AX=3000H,BX=5000H。试问:
(1)SP=1ffeH;(2)SP=1ffeH,BX=5000H,AX=5000H;(3)PUSH AX 将AX里的值压入堆栈,PUSH BX 将BX里的值再压入堆栈, POP AX将堆栈顶的值弹出到AX里.即将BX的值赋给AX.(4)sp=2000H指栈顶指针的地址是2000H;AX为一个字(即两个字节),将它压入堆栈时,栈顶指针SP(以字节为单位)将减2....

计算机接口技术综合题,题目如下,请各位大虾江湖救急救急!!!
假设(DS)=2000H,(ES)=3000H,(SS)=4000H,(SP)=100H,(BX)=200H,(SI)=1, (D1)=2,(BP)=256,字变量ARRAY偏移地址为0050H,(20250H)=1234H,(40100H)=00AOH,(40102H)=2200H.填空回答下列问题。 (1)MOV Ax,[BP][DI] ;源操作数物理地址= 40102 H 指令执行后(AX)= 2200 H (2)POP Ax ;...

汇编(关于PUSH的SP问题)
PUSH AX 这是第一次进行压栈,SP=SP-2,存储器是8位的,而AX是16位的,高八位即AH存在高地址,而低八位AL存在低地址,SS=3000H,SP-2=00FEH 物理地址=SS*10H+SP=300FEH MOV AX,N2 PUSH AX 同理SP=SP-2,此时SP=00FCH 物理地址=SS*10H+SP=3000H*10H+00FCH=300FCH CALL L1 调用子...

堆栈指针sp为0x3ffffff0,进行push操作后,sp的值
执行push ax后sp=3202;执行push bx后,sp=3204;执行pop ax后,sp=3202;此时ax的值为bx的值,相当于把bx的值赋给ax,bx不变,所以ax=4000,bx=4000

宏笔记本u盘启动哪个选项
启动文件主要完成如下工作,即程序执行过程:- 设置堆栈指针SP = __initial_sp。- 设置PC指针 = Reset_Handler。- 设置中断向量表。- 配置系统时钟。- 配置外部SRAM\/SDRAM用于程序变量等数据存储(这是可选的)。- 跳转到C库中的 __main ,最终会调用用户程序的main()函数。Cortex-M内核处理器复位后,处于线程...

相似回答