n>>=5;
if(n==0b1)
F0();
else if(n==0b10)
F1();
else if(n==0b110)
F2();
else if(n == 0b111)
F3();
else if(n == 0b1010)
F4();
else
F5();
n>>=5;
if(n==0b1)
F0();
else if(n==0b10)
F1();
else if(n==0b110)
F2();
else if(n == 0b111)
F3();
else if(n == 0b1010)
F4();
else
F5();
如果限制了if,只能这么写了。用二进制写或者10进制其实都一样。如果你能得到这些N出现的频率,把频率高写在前面可以快一些。
如果可以不用if,用函数指针或者switch case可以更快。