pub fn reverse_bits(val: usize, power: usize) -> usize