题目内容

某C语言程序中对数组变量b的声明为“int b[10][5];”,有一条for语句如下:for (i=0;i<10;i++)for (j=0;j<5;j++)sum+=b[i][j];假设执行到“sum+=b[i][j];”时,sum的值在EAX中,b[i][0]所在的地址在EDX中,j在ESI中,则“sum+=b[i][j];”所对应的指令(AT&T格式)可以是()。

A. addl 0(%edx,%esi,4),%eax
B. addl 0(%esi,%edx,4),%eax
C. addl 0(%edx,%esi,2),%eax
D. addl 0(%esi,%edx,2),%eax

查看答案
更多问题

IA-32中指令“pushl %ebp”的功能是()。

A. R[esp]←R[esp]-4,M[R[esp]]←R[ebp]
B. R[esp]←R[esp]+4,M[R[esp]]←R[ebp]
C. M[R[esp]]←R[ebp],R[esp]←R[esp]-4
D. M[R[esp]]←R[ebp],R[esp]←R[esp]+4

IA-32中指令“popl %ebp”的功能是()。

A. R[esp]←R[esp]-4,R[ebp]←M[R[esp]]
B. R[esp]←R[esp]+4,R[ebp]←M[R[esp]]
C. R[ebp]←M[R[esp]],R[esp]←R[esp]-4
D. R[ebp]←M[R[esp]],R[esp]←R[esp]+4

IA-32中指令“movl 8(%ebp),%edx”的功能是()。

A. M[R[ebp]+8]←R[edx]
B. R[edx]←M[R[ebp]+8]
C. R[ebp]+8←R[edx]
D. R[edx]←R[ebp]+8

IA-32中指令“movl 8(%edx,%esi,4),%edx”的功能是()。

A. M[R[edx]+R[esi]*4+8]←R[edx]
B. R[edx]+R[esi]*4+8←R[edx]
C. R[edx]←M[R[edx]+ R[esi]*4+8]
D. R[edx]←R[edx]+R[esi]*4+8

答案查题题库