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

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

Войти
Регистрация
Восстановить пароль
 
_KosmoS_
0 / 0 / 0
Регистрация: 27.03.2010
Сообщений: 12
#1

побитовое увеличение - C++

07.12.2010, 17:41. Просмотров 929. Ответов 5
Метки нет (Все метки)

Здравствуйте уважаемые пользователи. Это моя первая тема. Собственно суда я пришел за помощью.
Так вот. Как побитово увеличить любое число на 1? (в borland C++). Я разобрался что необходимо найти 0 в двоичном коде. Но как Это сделать? Может кто то объяснить или хотя бы написать как оно должно выглядеть в СРР?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2010, 17:41     побитовое увеличение
Посмотрите здесь:

Побитовое представление числа. C++
Побитовое смещение вправо с изюминкой C++
C++ Побитовое чтение
C++ Побитовое исключающее ИЛИ (XOR)
Побитовое вычитание C++
Побитовое сравнение двух чисел C++
Побитовое увеличение числа на 1 и побитовая проверка на равенство C++
C++ Работа с пикселями, побитовое копирование
C++ Побитовое чтение/запись в файл
Побитовое замещение C++
Побитовое сравнение C++
C++ Побитовое представление числа

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vasal
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 55
07.12.2010, 17:52     побитовое увеличение #2
ну как бы можно сдвинуть побитово на единицу в какую либо сторону, то есть выглядеть это будит так
C++
1
2
num >> 1; //сдвиг на 1
printf("%d", num & 1); //происходит замена.если будит 1 0 то 0 будит заменен на единицу
это кусочек программы, в которой мы должны перевести число из десятичной системы в двоичную
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
07.12.2010, 18:04     побитовое увеличение #3
Все же сдвиг на 1 - num >>= 1; //сдвиг на 1
Vasal
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 55
07.12.2010, 18:10     побитовое увеличение #4
у меня с "=" не получилось.программа просто вылетала
_KosmoS_
0 / 0 / 0
Регистрация: 27.03.2010
Сообщений: 12
08.12.2010, 00:12  [ТС]     побитовое увеличение #5
спасибо тем кто не поленилса пошевелить мозгами, но вот что у меня вышло.:
C++
1
2
3
4
5
6
7
8
9
10
11
int a,b,c,d;
a=36;
b=1;
c=a&b;
while (c!=0)
        {
         a=a^b;
         b=b<<1;
         c=a&b;
         }
d=a^b;
для любых целых "а"
asics
Freelance
Эксперт C++
 Аватар для asics
2842 / 1779 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
08.12.2010, 00:21     побитовое увеличение #6
_KosmoS_, А так разве не проще ?
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
    int N = 12;
    std::cout << -(~N);
    return 0;
}
Yandex
Объявления
08.12.2010, 00:21     побитовое увеличение
Ответ Создать тему
Опции темы

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