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

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.91
person_il
0 / 0 / 0
Регистрация: 05.09.2009
Сообщений: 22
#1

Как работать с битами? - C++

10.11.2009, 21:00. Просмотров 2657. Ответов 7
Метки нет (Все метки)

Подскажите, пожалуйста... please...

У меня дано число типа WORD.
Как мне просмотреть первый и последующие биты в этом числе?
И если возможность их изменения?

Намного благодарен!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2009, 21:00     Как работать с битами?
Посмотрите здесь:

Работа с битами. Сдвиг бит в массиве переменных. О как - C++
Всем привет.. Задача такая.. Есть небольшой массив (пусть будет размер три) Добавлено через 11 минут Всем привет.. Задача такая.. ...

Работа с битами - C++
Я уже задолбался... :wall: Может мне кто нибудь подскажет как из 00111010 (58) получить 00001010 (10) хотя бы каким методом... код...

Операции с битами - C++
Напишите программу, которая принимает с клавиатуры целое число типа int и подсчитывает в нем количество битов, равных 1. Но...

работа с битами - C++
доброй ночи, форумчане, необходима ваша помощь) как и всем тут... вот изучаю с++ и добрался до работы с битами, учу решением задач. на...

Работа с битами - C++
Стоит задача: вывести все двоичные коды чисел от 0 и до 2n-1. Сделать напролом могу(переводить в цикле каждое число в двоичную с-му и...

Работа с битами - C++
Не могу понять, почему не правильно работает программа. Программа зашифровывает строку, выводит, потом расшифровывает и выводит. ...

Работа с битами. - C++
помогите!! как писать эту на программе с++ Ввести последовательность из 8 символов. Сравнить 5-й и 6-й биты каждого символа. Если они...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
outoftime
║XLR8║
506 / 428 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
10.11.2009, 21:58     Как работать с битами? #2
переведи в 2-ичную систему счисления, а там и видно будет..
Rififi
2338 / 1053 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
10.11.2009, 22:00     Как работать с битами? #3
person_il,

У меня дано число типа WORD.
Как мне просмотреть первый и последующие биты в этом числе?

WORD w;
int bit0 = w&1;
int bit1 = (w&2) >> 1;
...

И если возможность их изменения?
есть
person_il
0 / 0 / 0
Регистрация: 05.09.2009
Сообщений: 22
10.11.2009, 23:45  [ТС]     Как работать с битами? #4
Можешь показать, а то я только разбираюсь с возможностями программирования на битах...
Спасибо огромное!!!

Добавлено через 1 час 17 минут
Я с тобой не согласен. Я нашел битовое множество (
C++
1
#include "bitset"
), которое показывает совсем другие значения. Единственный минус - это то что я не могу обратно перевести это значение в тип WORD.
Вот пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main()
{ char tmp;
w=15;
cout <<sizeof(WORD)*4 <<endl;
bitset <sizeof(WORD)*4> bMode (w);
cout << bMode[0] << " "<< bMode[1]<< " " << bMode[2] << " " << bMode[3]<<endl;
 
int bit0 = (w&1) >> 1;
int bit1 = (w&2) >> 1;
int bit2 = (w&3) >> 1;
int bit3 = (w&4) >> 1;
cout << bit0<<" "<< bit1<<" "<< bit2<<" "<< bit3<<endl;
cin >> tmp;
}
Rififi
2338 / 1053 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
10.11.2009, 23:48     Как работать с битами? #5
person_il,
Я с тобой не согласен.
с чем ты не согласен?

Я нашел битовое множество (
а оно никуда и не терялось, начнем с этого

Единственный минус ...
... в том, что пример неправильный. а так всё нормуль
person_il
0 / 0 / 0
Регистрация: 05.09.2009
Сообщений: 22
10.11.2009, 23:50  [ТС]     Как работать с битами? #6
ты не можешь объяснить мне поподробнее, а то я не могу въехать...
Rififi
2338 / 1053 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
10.11.2009, 23:50     Как работать с битами? #7
для этого существует такое понятие как "битовая маска"

например установка бита номер N
#define set_bit(v, N) ((v) | (1 << N))

сброс бита номер N
#define clear_bit(v, N) ((v) & ~(1 << N))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2009, 00:01     Как работать с битами?
Еще ссылки по теме:

Работа с битами. - C++
Здрасте. Дана задача: Определить на сколько в числе А больше значущих битов, что равны единице, чем битов, что равны нулю. Помогите...

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

Работа с битами - C++
три раза писал но все равно не получается((( 1-)Ввести последовательность из 8 символов. Сравнить 5-й и 6-й биты каждого символа. Если...

Операции с битами в c++ - C++
Помогите начинающему. Объясните пожалуйста как работает данная функция void show_memory(unsigned char *a, int size) { for (int i =...

Операции с битами данных - C++
Всем доброго дня ! Подскажите пожалуйста как произвести побитовое И ? #include &lt;iostream&gt; #include &lt;conio.h&gt; using...


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

Или воспользуйтесь поиском по форуму:
person_il
0 / 0 / 0
Регистрация: 05.09.2009
Сообщений: 22
11.11.2009, 00:01  [ТС]     Как работать с битами? #8
Насчет функций спасибо, только я говорил по поводу разных значений, которых выводятся на экран...
Просто по суди:
1 в битовом 1000
2 - 0100
3 - 1100
4 - 0010
а в твоем примере совсем по другому
1 - 0000
2 - 0110
3 - 0110
4 - 0002
Это же неверно!
Yandex
Объявления
11.11.2009, 00:01     Как работать с битами?
Ответ Создать тему
Опции темы

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