如何最大限度地利用数字0来优化一个程序
How to maximize the use of the number 0 to optimize a program
我在 C++ 大会上听了一场演讲,演讲者说他更喜欢零而不是所有其他常量:
"Zero is special because a bunch of operations within the machine
language of any CPU architecture have zero built in them."
(https://www.youtube.com/watch?v=ea5DiCg8HOY)
这里有人可以给我一个利用整数 0 使程序更快的具体例子吗?我有兴趣开始在我编写的程序中执行此操作。
真诚的,
Mike Rowe 优化师
很多年前的经典示例是在方向对程序逻辑无关紧要的情况下从 N 倒数到 0,而不是从 0 到 N 递增。这甚至可以利用 "decrement and jump if not zero" 指令,如果您的 CPU 指令比递增、比较和条件分支更有效。
我在 C++ 大会上听了一场演讲,演讲者说他更喜欢零而不是所有其他常量:
"Zero is special because a bunch of operations within the machine language of any CPU architecture have zero built in them."
(https://www.youtube.com/watch?v=ea5DiCg8HOY)
这里有人可以给我一个利用整数 0 使程序更快的具体例子吗?我有兴趣开始在我编写的程序中执行此操作。
真诚的, Mike Rowe 优化师
很多年前的经典示例是在方向对程序逻辑无关紧要的情况下从 N 倒数到 0,而不是从 0 到 N 递增。这甚至可以利用 "decrement and jump if not zero" 指令,如果您的 CPU 指令比递增、比较和条件分支更有效。