将C++表达式X=(Y*4)+3转换为汇编语言的形式?
moveax,Ymovebx,4imuleax,4movebx,3addeax,ebxmovX,eax不知道这样写是不是对的?...
mov eax,Y
mov ebx,4
imul eax,4
mov ebx,3
add eax,ebx
mov X,eax
不知道这样写是不是对的? 展开
mov ebx,4
imul eax,4
mov ebx,3
add eax,ebx
mov X,eax
不知道这样写是不是对的? 展开
展开全部
此外,但大多数的编译器遇到了一个数为2的n次方,不与IMUL或mul指令,但用一个移位指令。
Y *以上,可能会产生
MOV EAX,EAX?
2 / / SHL同比增长2 ^ 2 = 4,Y * 4
前景房东英俊,风流倜傥时,将天下英雄,英雄业余时间,关注0X30百度贴吧,比彻姆千秋优势,打造世界的力量。
Y *以上,可能会产生
MOV EAX,EAX?
2 / / SHL同比增长2 ^ 2 = 4,Y * 4
前景房东英俊,风流倜傥时,将天下英雄,英雄业余时间,关注0X30百度贴吧,比彻姆千秋优势,打造世界的力量。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int x,y = 2;
mov dword ptr [ebp-8],2
x = (y*4)+3;
mov eax,dword ptr [ebp-8]
lea ecx,[eax*4+3]
mov dword ptr [ebp-4],ecx
mov dword ptr [ebp-8],2
x = (y*4)+3;
mov eax,dword ptr [ebp-8]
lea ecx,[eax*4+3]
mov dword ptr [ebp-4],ecx
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询