Разбирал тут один исходник и наткнулся на такую строчку:
x = (x<<7)|((x<<5)&64)|((x<<3)&32)|((x<<1)&16)|((x>>1)&8)|((x>>3)&4)|((x>>5)&2)|(x>>7);
Этот код переворачивает байт х, меняет порядок битов в байте на противоположный.
было 01001100
стало 00110010
Я вроде не новичок в программировании, но этим реально впечатлен :) И вот так вот сразу не могу
(
Read more... )