依次执行下列哪一个选项中的两条指令后,可以使得存放在EDX和EAX中的64位数据乘以2?(EDX中存放高32位,EAX中存放低32位)______。
A) SHL EDX,1
SHL EAX,1
B) RCL EDX,1
SHL EAX,1
C) SHL EAX,1
RCL EDX,1
D) SHL EAX,1
SHL EDX,1
A.
B.
C.
D.
第1题:
2、除法指令“idiv ecx”的64位被除数在:
A.EDX和ECX中
B.EDX和EBX中
C.EDX和EAX中
D.ECX和EBX中
第2题:
程序P中有两个变量i和j,被分别分配在寄存器EAX和EDX中,P中语句“if (i<j) { …}”对应的指令序列如下(左边为指令地址,中间为机器代码,右边为汇编指令): 804846a 39 c2 cmpl %eax, %edx 804846c 7e 0d jle xxxxxxxx 若执行到804846a处的cmpl指令时,i=105,j=100,则jle指令执行后将会转到()处的指令执行。
第3题:
除法指令“idiv ecx”的64位被除数在:
A.EDX和ECX中
B.EDX和EBX中
C.EDX和EAX中
D.ECX和EBX中
第4题:
1、某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
第5题:
如果EAX=100、EDX=200时,执行“CMP EAX, EDX”指令,接着__________条件转移指令会发生控制转移。
A.JO
B.JZ
C.JB
D.JA