首页 > 其他 > 详细

第三章家庭作业

时间:2015-10-27 14:46:09      阅读:205      评论:0      收藏:0      [点我收藏+]

3.54(难度:1星)

将一段汇编代码转换为C代码

首先了解一些简单指令的意思:

subl:减

sall:左移(算术左移,但是与逻辑左移无区别)

sarl:算术右移

xorl:异或

imull:乘

接下来一行一行的翻译,根据题意,将代码返回值存放在寄存器%eax中,那么我们将返回值定义为a,代码如下:

int decode2(int x, int y, int z)
{
    int a; //返回值
    z=z-y;
    a=z;
    a=a<<15;
    a=a>>15;
    z=z^x //异或
    a=a*z;
    return a;
}

第三章家庭作业

原文:http://www.cnblogs.com/shadow135211/p/4913903.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!