Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Битовые операции, n-ый бит - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка "C2065: Out: необъявленный идентификатор" http://www.cyberforum.ru/cpp-beginners/thread400046.html
Вообщем, помогите начинающему. Вот такие ошибки при компиляции: 1>.\language.cpp(709) : error C2065: Out: необъявленный идентификатор 1>.\language.cpp(710) : error C2065: Out: необъявленный...
C++ Сравнение двух строк и вывод общих символов #include <iostream> using namespace std; void main() { char str; char strl; http://www.cyberforum.ru/cpp-beginners/thread400042.html
C++ Определить в строке наличие "эмоциональных" символов (перевести на C++)
Помогите пожалуйста перевести с Visual Basic на Visual Basic .NET и на С++ Дана фраза. Определить в ней «эмоциональных символов(восклицательный и вопросительных знаков). Текст программы: ...
C++ Найти максимальный элемент массива и его номер
задан массив n элемнтов,найти max элемент массиваи его номер
C++ Как изменить размер окна и убрать ползунок http://www.cyberforum.ru/cpp-beginners/thread400025.html
Можно ли убрать ползунок в окошке, которое появляется при запуске консольного приложения или изменить его размер
C++ Какая разница в инициализации? Есть класс: class CSomeClass { CSomeClass(); private: bool isState1, isState2; }; члены isState1, isState2 можно инициализировать 2-мя способами: подробнее

Показать сообщение отдельно
cybergirl
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 7

Битовые операции, n-ый бит - C++

06.12.2011, 11:33. Просмотров 5256. Ответов 12
Метки (Все метки)

Подскажите, пожалуйста!
Дано число x. Как установить на место n-ого бита единицу?

Вот, что скомпоновала из найденного.. но тут неправильный результат. Вместо 7 из числа 5 получается число 2.
C++
1
2
3
4
5
6
7
8
nt main ()
{
int x = 5;
int n =1;
const bool i = 1;
x>>=1;
x = ( x & ~ (1<<n) ) | (i << n);
}
Я еще несколько вопросов:
1) чем отличается x>>1 от x>>=1 ?
2) как вывести или обозначить битовую единицу? const bool i = 1 -так правильно?
3) что конкретно получается в операции "НЕ сдвиг"? вот так "~ (1<<n)" ?
4) есть ли простой вариант вычленить n-ый бит и проводить с ним дальнейшие действия?
5) как вывести битовое значение целиком? переводить десятичное в двоичную или есть короткий вариант?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru