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

C++

Войти
Регистрация
Восстановить пароль
 
OVERPOWER8
19 / 19 / 1
Регистрация: 29.11.2009
Сообщений: 224
#1

Глючат битовые операторы. - C++

20.12.2009, 21:13. Просмотров 519. Ответов 3
Метки нет (Все метки)

Когда пользуюсь битовыми операторами, программа выдает хз какие значения:

18|89 = 91 должно быть 89, т. к. объединение - большая часть
18&89 = 16 (18)
18^89 = 75 (72)
~18 = -19 (-18)

Насколько я понял, битовые операторы корректно работают только со значениями bool?

Вот код например:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main()
{
    int a=18, b=89, res;
    cout << endl;
    
    res = a | b;
    cout << a << "|" << b << " = " << res << endl;
    res = a&b;
    cout << a << "&" << b << " = " << res << endl;
    res = a^b;
    cout << a << "^" << b << " = " << res << endl;
    res = ~a;
    cout << "~" << a << " = " << res << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2009, 21:13     Глючат битовые операторы.
Посмотрите здесь:

Битовые операторы - C++
Доброго времени суток, уважаемые форумчане. Возник такой вопрос, а какой формулой можно отобразить действие операторов &amp; и ^? Полазив...

Не могу разобраться в термине "Битовые операторы" - C++
Есть к примеру такой код, интересует строка fd.dwFileAttributes &amp; FILE_ATTRIBUTE_DIRECTORY , я почитал про &amp;, там как я понял...

Битовые операции, битовые поля. - C++
Здравствуйте! Еслть 4 диапазона чисел: 0-100, 0-100, 0-6000, 0-3. Сделать в виде битовых операций. Записать в unsigned int. Использовать...

Типы данных. Операции. Операторы. операторы ветвления - Visual C++
Создать программу. Воспользоваться оператором вариантов. ...

Битовые операции - C++
Задание: Как я понимаю надо создать объект типа int, но как менять местами биты вообще не представляю, помогите пожалуйста.

Битовые поля - C++
Добрый вечер! Помогите, пожалуйста, найти ошибку в программе. Компиляцию проходит безошибочно, но данных не выдает при запуске. ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
outoftime
║XLR8║
508 / 430 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
20.12.2009, 22:02     Глючат битовые операторы. #2
они работают коректно, но не с числами а разрядами

не в обиду, но вам поря поспать:
1011001 побитовое или с
0010010 даст
1011011 - увеличение на 2 здесь 1011011

1011001 побитовое и с
0010010 даст
0010000 = 16 сошлось

1011001 побитовое исключающее или с
0010010 даст
1001011 = анализуруем: отнимает от 89 16 здесь 1001011 и прибавляем 2 здесь: 1001011 и того 89-16+2 = 75 - сошлось

на счет "не" ничего не могу сказать.. к сожалению.. но врядли машина "опять ошиблась"
OVERPOWER8
19 / 19 / 1
Регистрация: 29.11.2009
Сообщений: 224
20.12.2009, 22:12  [ТС]     Глючат битовые операторы. #3
>> outoftime
Спасибо. Я думал, только побитовые ( << и >> ) работают с разрядами. Однако битовые тоже.

Тогда вопрос - будут ли они корректно работать с истинностными (1/0) значениями?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2009, 23:42     Глючат битовые операторы.
Еще ссылки по теме:

Битовые операции - C++
Есть число в двоичной системе, например &quot;01000001&quot;, рядом с единицами надо заменить нули на единички! то есть должно получится например...

Битовые поля - C++
Народ, напишите программу для включения 3-го разряда однобайтового числа и переключения 7-го. Никак не понимаю что и как...Напишите пож..

Битовые операции - C++
С помощью битовых операций выести на экран значение к-ого спарва бита. Помогите пожалуйста!что-то в этих битовых операциях не...

Битовые поля - C++
Здравствуйте. Возникла необходимость работы с битовыми полями. Однако не могу понять, почему в нижеприведенном примере биты...


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

Или воспользуйтесь поиском по форуму:
outoftime
║XLR8║
508 / 430 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
20.12.2009, 23:42     Глючат битовые операторы. #4
нет, эти только с числами, для истеностных есть &&, || и кажись все.. а нет, есть еще !
Yandex
Объявления
20.12.2009, 23:42     Глючат битовые операторы.
Ответ Создать тему
Опции темы

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