- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编程注意(Programming attention)
编程注意(Programming attention)
C++ level code optimization
Http:///
When it comes to optimization, many people think of assembly directly. Can optimization be at the level of compilation? Of course not, as in the C++ layer, you can do code optimizations, some of which are often unexpected.
Determine floating point variables and expressions that are type float
In order for the compiler to produce better code (for example, to produce 3DNow or SSE instructions), floating-point variables and expressions must be determined to be of type float. It is important to note that the floating point constant is float with the suffix F or F (for example, 3.14f), otherwise the default is double. To avoid the automatic conversion of type float parameters to double, use float when function declarations are used.
Use 32 bit data type
Use 32 bit data type. There are many compilers, 32 types of typical but are included are: int, signed, signed, int, unsigned, unsigned, int, long, signed long, long int, signed long int, unsigned long, unsigned long int.
Consider whether an integer variable has symbols
In many cases, you need to consider whether an integer variable is a signed or unsigned type. For example, there is no negative number to preserve a persons weight data, so there is no need to use symbolic types. However, if you want to preserve the temperature data, you must use the signed variable.
In many places, it is necessary to consider whether or not to use symbolic variables. In some cases, symbolic operations are faster, but in some cases the opposite is true.
Integer to floating point transformation,
Using symbolic integers greater than 16 bits is faster. Because the x86 architecture provides instructions from Symbolic Integration to floating point, no unsigned integer conversion to floating point instructions is provided. The compiler generates assembly code as follows:
A bad example:
Compile before compile
Double x; mov [temp + 4], 0
Unsigned, int, I; MOV, eax, I
X = I; MOV, [temp
您可能关注的文档
- 给儿子的一封信 by刘亚州(A letter to son by Liu Yazhou).doc
- 给你的电脑加速(Speed up your computer).doc
- 给准妈妈的有益实用大肚经(A useful and practical exercise for expectant mothers).doc
- 给初学编程者的话(For beginner programmers).doc
- 细木工板制作基本知识(Basic knowledge of blockboard production).doc
- 给咨询员新人的点滴建议(Give advice to the consultant).doc
- 结构设计标准(Structural design standard).doc
- 给婴儿买衣服要注意事项!(Attention should be paid to buying clothes for the baby!).doc
- 给宝宝吃水果的学问(Knowledge of eating fruit for the baby).doc
- 经纬度与3度带,6度带的概念及其转换方法(The concept of latitude and longitude and 3 degree belts and 6 degrees belts and their conversion methods).doc
文档评论(0)