免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2611 | 回复: 5
打印 上一主题 下一主题

[其他] 什么变量储存在寄存器/CPU/储存器中? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-09-24 12:45 |只看该作者 |倒序浏览
请问,哪些变量储存在存储器中,哪些在CPU中,那些在寄存器中?

谢谢。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2012-09-24 13:05 |只看该作者
回复 1# Redshadows


C语言编译之后就不再是C语言了
你问的问题是C语言编译之后的事情,
这不是C程序员该考虑的问题

如果你的程序行为因此受到影响,我只能建议你把对应代码用汇编来写

论坛徽章:
0
3 [报告]
发表于 2012-09-24 14:35 |只看该作者
这没有绝对的一个划分,这是编译器做的事。
如何存储变量,这跟编译器优化有很大关系的。

论坛徽章:
0
4 [报告]
发表于 2012-09-24 15:24 |只看该作者
safedead 发表于 2012-09-24 13:05
回复 1# Redshadows

使用setjmp和longjmp的时候有影响。

longjmp后,存放在CPU和浮点寄存器的值会恢复到setjmp时的值。

所以我想了解下,呵呵。

论坛徽章:
0
5 [报告]
发表于 2012-09-24 16:44 |只看该作者
回复 4# Redshadows


    你知道有影响,编译器也知道,所以他们会根据情况调整优化策略,你大可不必担心。你只需确认编译后的效果符合预期就对了。

论坛徽章:
4
水瓶座
日期:2013-09-06 12:27:30摩羯座
日期:2013-09-28 14:07:46处女座
日期:2013-10-24 14:25:01酉鸡
日期:2014-04-07 11:54:15
6 [报告]
发表于 2012-09-24 17:13 |只看该作者
完全同意2楼观点.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP