первый из них проверяет результат присвоения m значения bit_table_[k][i][bit_index ] & bit_mask[bit]
, а второй только проверяет, является ли
bit_table_[k][i][bit_index ] & bit_mask[bit]
результаты не 0
Оба эффекта одинаковы, за исключением того, что первый записывает результат в m на каждой итерации.