荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: zzt (我命由我不由天), 信区: Program
标  题: 代码优化一例
发信站: BBS 荔园晨风站 (Thu Jan 11 22:13:35 2001), 转信

9.减小运算强度

采用运算量更小的表达式替换原来的表达式,下面是一个经典例子:

旧代码:
    x = w % 8;
    y = pow(x, 2.0);
    z = y * 33;
    for (i = 0; i < max; i++)
    {
        h = 14 * i;
        printf("%d", h);
    }

新代码:
    x = w & 7; /* 位操作比求余运算快 */
    y = x * x; /* 乘法比平方运算快 */
    z = (y << 5) + y; /* 位移乘法比乘法快 */
    for (i = h = 0; i < max; i++)
    {
        h += 14; /* 加法比乘法快 */
        printf("%d", h);
    }


--



日出东方,唯我不败;
    天上地下,唯我独尊。

※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: argo.zsu.edu.cn]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店