前导零、后导零、最高有效位、最低有效位计算(C) 前导0CLZint32_tcount_leading_zeros(uint32_tinput){if(input0)return32;// 全0的特例intclz0;if(!(input16)){clz16;x16;}if(!(input24)){clz8;x8;}if(!(input28)){clz4;x4;}if(!(input30)){clz2;x2;}if(!(input31)){clz1;}returnclz;}后导0CTZint32_tcount_trailing_zeros(uint32_tinput){if(input0)return32;intctz0;if((input0xFFFF)0){ctz16;x16;}if((input0xFF)0){ctz8;x8;}if((input0xF)0){ctz4;x4;}if((input0x3)0){ctz2;x2;}if((input0x1)0){ctz1;}returnctz;}计算最高有效位MSBinthighest_bit_position(uint32_tx){if(x0)return-1;intposition0;if(x16){position16;x16;}if(x8){position8;x8;}if(x4){position4;x4;}if(x2){position2;x2;}if(x1){position1;}returnposition;}计算最低有效位LSBintfind_lowest_bit_position(uint32_tx){if(x0)return-1;intposition0;if((x0x0000FFFF)0){position16;x16;}if((x0x000000FF)0){position8;x8;}if((x0x0000000F)0){position4;x4;}if((x0x00000003)0){position2;x2;}if((x0x00000001)0){position1;}returnposition;}