Автор Вадим Ткалич задал вопрос в разделе Другие языки и технологии
c++, побитовые операции. и получил лучший ответ
Ответ от Krab Bark[гуру]
... Тьфу, написал сначала "между делом" чушь, извиняюсь.
Krab Bark
(112429)
Тьфу, конечно, влезает. Перед этим писал программу перевода в двоичную систему и как-то автоматически по инерции написал чушь 🙁
Ответ от Капитан Гугл[гуру]
unsigned char n;
...
n=UnitStateWord& 0x1FF;
n - char, т. е. содержит 1 байт. 8 бит. А 0x1FF - 9 бит. Вот 1 бит и отбрасывается (да, его вес - 256).
unsigned char n;
...
n=UnitStateWord& 0x1FF;
n - char, т. е. содержит 1 байт. 8 бит. А 0x1FF - 9 бит. Вот 1 бит и отбрасывается (да, его вес - 256).
Ответ от Impressive_i[гуру]
С левосторонними сдвигами нужно быть аккуратным. Нужно знать сколько бит для данного типа свободно, и не стоит ли самый старший бит на последней позиции допустимого двоичного представления. Если мы потеряем старший бит при сдвиге, то число получится совсем другое при обратном преобразовании. Поэтому тип данных должен быть заранее подобран для такого кодирования. Либо кодируйте по частям. Чтоб точно быть уверенным, что данная часть числа/строки корректно шифруется-расшифровывается.
С левосторонними сдвигами нужно быть аккуратным. Нужно знать сколько бит для данного типа свободно, и не стоит ли самый старший бит на последней позиции допустимого двоичного представления. Если мы потеряем старший бит при сдвиге, то число получится совсем другое при обратном преобразовании. Поэтому тип данных должен быть заранее подобран для такого кодирования. Либо кодируйте по частям. Чтоб точно быть уверенным, что данная часть числа/строки корректно шифруется-расшифровывается.
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: c++, побитовые операции.
побитовые операции си
Если байт представить в виде: aBcDeFgH, где _B_D_F_H - чётные, а a_c_e_g - нечётные, переписать
подробнее...
спросили в Другое CDMA
iPhone 4 8Gb White можно использовать под CDMA или iPod. Как это понять? Что такое CDMA ?
СиДиМиЭй - технология связи, обычно радиосвязи, при которой каналы передачи имеют общую полосу
подробнее...
iPhone 4 8Gb White можно использовать под CDMA или iPod. Как это понять? Что такое CDMA ?
СиДиМиЭй - технология связи, обычно радиосвязи, при которой каналы передачи имеют общую полосу
подробнее...
возведение в степень С++
Нет, не "норм", в C++ в степень можно возвести только pow.
Смотрите мой пример на C++
подробнее...
что обозначает знак - "^" ?
степень (в математике)
например, 2^8 - два в восьмой степени (256)Наталья
подробнее...