Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 1
Регистрация: 14.10.2013
Сообщений: 112
1

Установка бита

04.04.2014, 11:34. Показов 3432. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано целое число A и целое число k.

Выведите число, которое получается из числа A установкой значения k-го бита равному 1.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2014, 11:34
Ответы с готовыми решениями:

Установка единичного бита в переменной string
Добрый вечер. Возник такой вопрос: есть строка, нужно поменять в ней несколько определенных бит....

Установка бита с использованием побитовых операций
Есть следующая программа, которой задается само число/символ (unsigned char), переводит программа в...

Создать 2 переменные, одна из которых хранит 2 старших бита исходного числа, другая 2 младших бита этого числа
Дано число. Создать 2 переменные, одна из которых хранит 2 старших бита исходного числа, другая 2...

Извлечь 3 бита числа A, начиная со второго и вставить их в число B, начиная с первого бита
Ввести целое A. Извлечь 3 бита числа A, начиная со второго и вставить их в число B, начиная с...

3
90 / 90 / 48
Регистрация: 07.12.2011
Сообщений: 215
04.04.2014, 11:42 2
C++
1
2
3
4
    int A = 5;
    int k = 1;
 
    cout << (A | (1 << k)) << endl;
1
0 / 0 / 1
Регистрация: 14.10.2013
Сообщений: 112
09.04.2014, 10:41  [ТС] 3
Объясните пожалуйста кто-нибудь это на словах, а то не могу понять.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
09.04.2014, 10:56 4
Kolbusdkiy, сдвигаем единицу на k разрядов влево:
C++
1
1<<k
Т.е. получаем в двоичном представлении нечто такое: 0010 (для k=1).
Далее выполняем операцию "побитовое или" | над числом А (в двоичном представлении 0101):
C++
1
A | (1<<k)
Получаем результат 0111, т.е. 7 в десятичном виде.
P.S. т.к. << имеет больший приоритет чем |, то скобки можно опустить:
C++
1
A | 1 << k
1
09.04.2014, 10:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2014, 10:56
Помогаю со студенческими работами здесь

Обработка бита
На входе даны два 8-х разарядных числа IN_0, IN_1. Если на пятом месте в IN_0 стоит 0, то...

Проверка бита
Всем привет. Хотел спросить знающих людей, как можно проверить бит в байте. То есть, допустим, есть...

Копирование бита
Надо упростить и оптимизировать строку *p=((*p&amp;0x80)&gt;&gt;8)|(*p&amp;0x80);. Задача - скопировать (не...

Обработка бита
Название Размерность Тип N 16 вход M ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru