- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【C语言】while与for执行效率的比较
【Cwhile与for?
C语言编译环境: Microsoft Visual C++ 6.0(SP6)
?
测试程序
?
?
C代
#include?stdio.h??
??
void?forTest()??
{??
????int?num?=?1234;?????????????????//?迭代次数??
????long?sum?=?0;???????????????????//?保存加法结果???
??
????for(int?i=0;inum;i++)???????//?传统for循??
????{??
????????sum?=?sum?+?i;??????????????//?计算结果??
????}??
??
????printf(forTest:%d\n,sum);??
}??
??
void?whileTest()??
{??
????int?num?=?1234;?????????????????//?迭代次数??
????long?sum?=?0;???????????????????//?保存加法??
??
????while((num--)0)??
????{??
????????sum?=?sum?+?num;????????????//?计算结果??
????}??
??
????printf(whileTest:%d\n,sum);??
}??
??
??
void?main()??
{??
????forTest();??
????whileTest();??
}??
?
?
汇编片段
whileTest()函数汇编后的指令:
--- D:\VC\ForWhile\ForWhile.cpp ?------------------------------------------------------------------------------------------
?
汇编指令代码 ?
17:???void?whileTest()??
18:???{??
0040D760???push????????ebp??
0040D761???mov?????????ebp,esp??
0040D763???sub?????????esp,48h??
0040D766???push????????ebx??
0040D767???push????????esi??
0040D768???push????????edi??
0040D769???lea?????????edi,[ebp-48h]??
0040D76C???mov?????????ecx,12h??
0040D771???mov?????????eax,0CCCCCCCCh??
0040D776???rep?stos????dword?ptr?[edi]??
19:???????int?num?=?1234;??
0040D778???mov?????????dword?ptr?[ebp-4],4D2h??
20:???????long?sum?=?0;??
0040D77F???mov?????????dword?ptr?[ebp-8],0??
21:??
22:???????while((num--)0)??
0040D786???mov?????????eax,dword?ptr?[ebp-4]??
0040D789???mov?????????ecx,dword?ptr?[ebp-4]??
0040D78C???sub?????????ecx,1??
0040D78F???mov?????????dword?ptr?[ebp-4],ecx??
0040D792???test????????eax,eax??
0040D794???jle?????????whileTest+41h?(0040d7a1)??
23:???????{??
24:???????????sum?=?sum?+?num;??
0040D796???mov?????????edx,dword?ptr?[ebp-8]??
0040D799???add?????????edx,dword?ptr?[ebp-4]??
0040D79C???mov?????????dword?ptr?[ebp-8],edx??
25:???????}??
0040D79F???jmp?????????whileTest+26h?(0040d786)??
26:??
27:???????printf(whileTest:%d\n,sum);??
0040D7A1???mov?????????eax,dword?ptr?[ebp-8]??
0040D7A4???push??????
您可能关注的文档
- 《金字塔原理—思考解决问题和表达的逻辑》宋尚.doc
- 《金属凝固理论与技术》结课论文模板.doc
- 《金属材料室温拉伸试验方法》GBT2282002实施要点.doc
- 《金版新学案》2012高三物理一轮课下作业第5章机械能及其守恒定律第三讲.doc
- 《金蝶K3ERP系统应用》实训任务书.doc
- 《钠的化合物过氧化钠》教学案例.doc
- 《钠和钠的化合物》基础练习1.doc
- 《钢结构事故分析与处理》教案5.doc
- 《钢结构设计基本原理》复习提纲3.doc
- 《钻探地质与岩芯编录及采样资料的收集与管理》.doc
- 【D】【第四讲】【鉴赏训练】【2012鉴赏诗词作品表达技巧的训练】.doc
- 【G18与灰尘的战斗之一】关于HTCsensationXE是否容易进灰及耐刮实验.doc
- 【三维设计】2015高考化学(人教通用)一轮讲义第5章第1节物质的分类.doc
- 【专题七】选择题解题策略.doc
- 【世纪金榜】2014届中考物理一轮复习八年级光的直线传播(期末复习通用,含解析)新人教版.doc
- 【世纪金榜】2016届高考地理一轮专题复习课时提升作业(十六)1.2人口的空间变化.doc
- 【人教版三维设计】2011年高考地理一轮复习第47讲商品农业区域的开发农业低产区的治理.doc
- 【人教版三维设计】2011年高考地理一轮复习第49讲交通运输的建设海岛和海域的开发城市新区的发展.doc
- 【人教版专用】2014高考地理小专题突破精练(含2013模拟+解析)大规模的海水运动.doc
- 【人民版】专题九当今世界政治格局的多极化趋势(单元检测试题).doc
最近下载
- 2025贵州毕节七星关区实验学校教师“跨校竞聘”60人笔试参考题库附答案解析.docx VIP
- 电机拖动与电气控制 第2版 教案全套 葛芸萍 第1--7章 变压器 ---典型机床电气控制.docx
- 汇川变频器MD320手册.pdf VIP
- 2025贵州毕节七星关区碧阳街道中心校(毕节二十二小)教师“跨校竞聘”34人笔试参考题库附答案解析.docx VIP
- 班主任技能竞赛试题 (2).doc VIP
- 吡啶喹唑啉中间体的合成方法与设计方案.pdf VIP
- 培训资料-子宫内膜增生.ppt VIP
- 2025广东惠州市生态环境局博罗分局和博罗县污染防治攻坚战总指挥部办公室招聘编外人员38人笔试备考试题及答案解析.docx VIP
- 2025贵州七星关区洪山街道中心校(毕节四小)教师“跨校竞聘”工作笔试参考题库附答案解析.docx VIP
- 2025入党积极分子发展对象培训考试题库100题含答案(完整版).docx VIP
文档评论(0)