C语言里的移位和乘以2这两种方式中哪一种更好?
不管你采用哪种方式,任何合格的优化编译程序都会产生相同的代码,因此你可以采用使程序的上下文更易读的那种方式。你可以用DOS/Windows上的CODEVIEW或UNIX机上的反汇编程序(通常被称为"dis”)这样的工具来查看下述程序的汇编代码:
例10.4乘以2和左移一位经常是相同的
void main()
{
unsigned int test_nbr = 300;
test_nbr * =2;
test_nbr = 300;
test_nbr << = 1;
}
例10.4乘以2和左移一位经常是相同的
void main()
{
unsigned int test_nbr = 300;
test_nbr * =2;
test_nbr = 300;
test_nbr << = 1;
}