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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.63
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
#1

Двоичный код - C++

16.05.2010, 21:29. Просмотров 2062. Ответов 11
Метки нет (Все метки)

Подскажите пожалуйста как возможно работать на С++ с двоичным кодом (b). И возможно ли это в вообще в С и нужно использовать только десятеричную систему счисления.

Проблема заключается в циклическом коде, а в нем у меня без двоичного работать не получается.

Хочется выслушать ваши советы и предложения. Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2010, 21:29     Двоичный код
Посмотрите здесь:

двоичный код - C++
В общем задание такое: вводим число, присвоиваем переменной, на эту перемменную указатель, и нужно вытащить побитово значение этой...

двоичный код - C++
есть число в десятичной системе ( напр. 25 ) нужно перевести его в двоичную систему ( 11001 ) затем переставить все 1 вперед а 0 назад...

Преобразование в двоичный код С. - C++
Задание следующее: Написать программу, которая получает случайное целое типа int,выводит егодвоичное представление на экран, выполняет...

Двоичный код Хоффмана - C++
Помогите написать программу на С++ по заданному тексту задания(задание на фото)?

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

Двоичный код символа - C++
мне нужно из символа, после считывания из файла получить его двоичный код!!! подскажите плиз как это сделать!!!

Двоичный код числа - C++
Вывести на экран двоичный код однобайтового числа типа char. Теперь надо чтобы программа работала только с беззнаковыми данными....

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
16.05.2010, 21:32     Двоичный код #2
как такового двоичного представления чисел в Си++ нет.
Но всегда можно воспользоваться битовыми операциями. Говорите, что конкретно требуется, поможем
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
16.05.2010, 21:39  [ТС]     Двоичный код #3
Тогда как можно получить доступ к конкретному биту? Ведь возможен такой вариант как разложить число на полином/многочлен и присвоить значения (типа bool, либо просто 0, 1) массиву для дальнейшей обработки?
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
16.05.2010, 21:50     Двоичный код #4
IchMors, обращение к третьему справа биту
C++
1
2
int ch = 5;
std::cout<<(ch>>3) & 1;
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
17.05.2010, 07:22     Двоичный код #5
Цитата Сообщение от IchMors Посмотреть сообщение
Ведь возможен такой вариант как разложить число на полином/многочлен и присвоить значения (типа bool, либо просто 0, 1) массиву для дальнейшей обработки?
возможен, но это крайне неэффективно
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
17.05.2010, 08:32  [ТС]     Двоичный код #6
Цитата Сообщение от fasked Посмотреть сообщение
возможен, но это крайне неэффективно
я вас внимательно слушаю
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
17.05.2010, 09:59     Двоичный код #7
А чем не устраивает вариант с and? Вот например вывод числа(байта) в двоичном виде, путем проверки каждого бита оператором & :
C++
1
2
3
4
    int x=15;
    for (int i=128;i>0;i/=2)
       if (x&i) cout<<1;
       else cout<<0;
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
17.05.2010, 10:06     Двоичный код #8
Зачем двигать бит на границу? Проще эндить с индивидуальнйо маской конкретного бита:
C++
1
0x01;
- самый младший бит,
C++
1
0x02;
- бит на 1 старше самого младшего
C++
1
0x04;
- бит на 2 старше самого младшего
C++
1
0x08;
- бит на 3 старше самого младшего
C++
1
0x10;
- бит на 4 старше самого младшего
C++
1
0x20;
- бит на 5 старше самого младшего
C++
1
0x40;
- бит на 6 старше самого младшего
C++
1
0x80;
- старший бит байта.
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
17.05.2010, 10:51     Двоичный код #9
Зачем двигать бит на границу?
Это я так понимаю не о мне вопрос?

А по поводу того что вы написали, у меня же то же самое:
C++
1
0x80=128(dec) ; 0x40=64(dec) //и т.д.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
17.05.2010, 11:00     Двоичный код #10
M128K145
C++
1
cout<<(ch>>3) & 1;
. Зачем?
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
17.05.2010, 17:52     Двоичный код #11
Цитата Сообщение от IchMors Посмотреть сообщение
я вас внимательно слушаю
например я пользовался такими функциями:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void printwb(unsigned int X)
{
    for (int n = (sizeof(unsigned int)*8 - 1); n >= 0; n--)
    {
        printf("%x",((X>>n)&1));
        if(n%4 == 0)
        {
            printf(" ");
        }
    }
    printf("\n");
}
 
void setbit(unsigned int &x, int nbit) {
   x |= 1 << nbit; }
 
void clearbit(unsigned int &x, int nbit) {
   x &= ~(1 << nbit); }
 
bool checkbit(unsigned int x, int nbit) {
   return (x & (1 << nbit)); }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2010, 19:32     Двоичный код
Еще ссылки по теме:

Перевод double в двоичный код - C++
Здравствуйте! Пожалуйста, скажите в какую сторону смотреть, не пойму как такое реализовать. С интом все просто, нужно делить,...

Перевод файла в двоичный код - C++
Привет всем. Возникла проблема: нужно любой файл перевести в двоичный код. Как это сделать средствами C++ или WInAPI?

Перевод числа в двоичный код - C++
Знаю вопрос детский но как перевести число в двоичный код, в 16-й и в 8-й знаю %x и %o а вот в двоичный нет.

Float в памяти и двоичный код - C++
Использую функцию void Function(unsigned k, int p) unsigned b=k; b&gt;=23-p; k&lt;&lt;=9+p; printf(&quot;%d&quot;,a); k&lt;&lt;=9+p; k&gt;&gt;=9+p; for...

Преобразование Букв в двоичный код - C++
Вот надыбал такой код для сабжа #include &lt;iostream&gt; using namespace std; int main() { cout&lt;&lt; &quot;Vvod: &quot;; char s;...


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

Или воспользуйтесь поиском по форуму:
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
17.05.2010, 19:32     Двоичный код #12
taras atavin, что зачем?
Yandex
Объявления
17.05.2010, 19:32     Двоичный код
Ответ Создать тему
Опции темы

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