题是 深入了解计算机系统 这本书第三张的练习题3.34,昨天卡了好久,根据汇编代码补空
int rfun(unsigaed x)
{
if ( ______ )
return _____;
unsigned nx = ______;
int rv = rfun (nx);
return ______;
}
GCC产生如下汇编代码(省略了建立和完成代码)
1 movl 8(%ebp), %ebx
2 movl $0, %eax
3 testl %ebx, %ebx
4 je .L3
5 movl %ebx, %eax
6 shrl %eax
7 movl %eax, (%esp)
8 call rfun
9 movl %ebx, %edx
10 andl $1, %edx
11 leal (%edx,%eax), %eax
12 .L3:
我填的是
x==0
0
x>>1
rv+x&1
但是调试出来不对,有人能帮我看看吗
一道根据汇编代码补全c语言的题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
0条回答 默认 最新
悬赏问题
- ¥15 关于logstash转发日志时发生的部分内容丢失问题
- ¥17 pro*C预编译“闪回查询”报错SCN不能识别
- ¥15 微信会员卡接入微信支付商户号收款
- ¥15 如何获取烟草零售终端数据
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 如何用python向钉钉机器人发送可以放大的图片?