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

Установить бит если 2 значения совпадают - C++

Восстановить пароль Регистрация
 
kvadro
11 / 9 / 1
Регистрация: 12.03.2012
Сообщений: 127
28.05.2014, 17:36     Установить бит если 2 значения совпадают #1
Как правильно устанавливать N-бит если 2 значения не совпадают:

Например есть задача - установить 7бит, если значения a и b не совпадают.

Всё что пришло в голову:

C++
1
2
3
4
5
unsigned a = 4;
unsigned b = 6;
unsigned bitmask = 0;
 
bitmask |= ((int)( a ^ b | -( a ^ b) ) >> 31 ) & 0x40;
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2014, 17:36     Установить бит если 2 значения совпадают
Посмотрите здесь:

C++ Если символ — большая латинская буква, то заменить в нем 3-й бит нулем
Чередовать согласные с двух строк, если совпадают гласные то выводить их только один раз C++
Цикл while (обновлять while если имеется 2 обновляющих значения) C++
C++ 4.77. Составить программу для вычисления значения функции у(л): -1, если х < -1, у = х, если х > —1, 1, если х = -1
C++ Если символ — русская гласная буква, то заменить в нем младший бит единицей
C++ Если символ — русская гласная буква, то заменить в нем младший бит единицей
C++ Даны значения A,B,C. Если A>B, B>C, то...
C++ Вывести значения переменных в столбик, установить точность, ширину поля и зафиксировать
C++ Прерывание работы функции, если при введенных значения вычисление невозможно
C++ Установить в ноль с седьмого по двенадцатый биты включительно в двоичном представлении целого значения А
C++ Установить в единицу каждый второй бит заданного целого числа
переход с 32 бит на 64 бит C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4867 / 3006 / 370
Регистрация: 10.11.2010
Сообщений: 11,056
Записей в блоге: 10
Завершенные тесты: 1
28.05.2014, 17:38     Установить бит если 2 значения совпадают #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
value |= (a != b) << 7;
kvadro
11 / 9 / 1
Регистрация: 12.03.2012
Сообщений: 127
28.05.2014, 17:41  [ТС]     Установить бит если 2 значения совпадают #3
Спасибо, изначально вроде писал также, но бит не устанавливался. Видно напутал что-то.
Yandex
Объявления
28.05.2014, 17:41     Установить бит если 2 значения совпадают
Ответ Создать тему
Опции темы

Текущее время: 12:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru