假定int型数组a的首地址在ECX中,i在EDX中,则“*(a+i)送EAX”所对应的汇编指令是()。
A: movl (%ecx,%edx,4),%eax
B: movl (%edx,%ecx,4),%eax
C: leal (%ecx,%edx,4),%eax
D: leal (%edx,%ecx,4),%eax
A: movl (%ecx,%edx,4),%eax
B: movl (%edx,%ecx,4),%eax
C: leal (%ecx,%edx,4),%eax
D: leal (%edx,%ecx,4),%eax
举一反三
- 假定int型数组a的首址在ECX中,i在EDX中,则“&a[i]-a送EAX”所对应的汇编指令是( )。[/i] A: movl %ecx,%eax B: movl %edx,%eax C: leal(,%ecx,4) D: leal (,%edx,4), %eax
- 假定局部int型数组a的首地址在EDX中,i在ECX中,现要将a[i]取到EAX相应宽度的寄存器中,则所用的汇编指令是( )。[/i] A: mov (%edx,%ecx,2),%ax B: mov(%edx,%ecx,2),%eax C: mov (%edx,%ecx,4),%ax D: mov (%edx,%ecx,4),%eax
- 以下指令哪条是错误的()。 A: movl8(%edx),(%ecx) B: movl$-17,%ecx C: movl$0x4050,(%eax) D: movl%eax,%ecx
- 假设变量x和y分别存放在寄存器EAX和ECX中,请给出以下每条指令执行后寄存器EDX中的结果。leal 4(%eax, %ecx),%edx
- 假设变量x和y分别存放在寄存器EAX和ECX中,请给出以下每条指令执行后寄存器EDX中的结果。leal (%eax,%ecx), %edx