首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
仔细阅读所给 C 程序及其汇编代码片段。 (1) 指出 波浪
[问答题]
仔细阅读所给 C 程序及其汇编代码片段。
(1) 指出 波浪线处的 汇编代码的作用;
(2) 补全下划线处的空白汇编代码。
添加笔记
求解答(0)
邀请回答
收藏(0)
分享
纠错
1个回答
添加回答
0
阿奻_
(1)该汇编代码序列的作用,就是给局部数组 a 赋初值。
(2)空白处汇编代码如下:
addl $24,%eax
// &a 为指向含 6 个整数的数组的指针,为 所指对象字节大小为 6 ×4 =24 字节。
// 因此,&a + 1 中的+1, 表示 为加 24 。
subl $4, %eax
// 指针 p 为指向整型变量的指针,为 所指对象字节大小为 4 字节,
// 故而 ,p-1 中-1 表示为减 4 。
pushl (%eax)
// 传递参数。因为实参为指针,故而将其值传入。
addl $16, %esp
// 回收 printf 函数 调用时 的参数空间
// 两个参数,计 8 字节,再加上调用前下调栈顶的 8 字节,共计 16 字节!
leal -8(%ebp), %esp
// 重置栈顶,指向保存的两个寄存器值的较低单元位置
// 这样,便于恢复所保存的两个寄存器
发表于 2017-05-02 13:02:45
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
编译和体系结构
上传者:
阿奻_
难度:
1条回答
0收藏
1454浏览
热门推荐
相关试题
以下指令集架构属于复杂指令集架构的是?
阿里巴巴
编译和体系结构
评论
(15)
来自
阿里巴巴2015实习生笔试题
3.下列关于表中西部省市区2006...
资料分析
言语理解与表达
资料分析
评论
(1)
Mysql中表student_in...
数据库
SQL
评论
(1)
MySQL中执行 SELECT I...
SQL
评论
(2)
下列表达式的值为True的是( )
Python
评论
(2)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题