Форум программистов, компьютерный форум, киберфорум
Наши страницы

Работа с битами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Время ядра виндовса http://www.cyberforum.ru/cpp-beginners/thread949620.html
Ребята всем привет) у меня вопрос по загрузки ядер, на тачке 12 ядер) прилагаю фотку загрузки ядер, меня волнует первое что работают ядра не на максимум и второе то что виндовс откусывает своим ядром...
C++ устройство на rs-232 народ, подскажите с чего начать и что загуглить, так то бы создать какое нибудь представление о том как написать прогу, которая сформирует массив чисел, которые в свою очередб придут на вход... http://www.cyberforum.ru/cpp-beginners/thread949602.html
C++ А возможно ли?
Перейду сразу к вопросу. Вопрос: Возможно ли реализовать клиент-серверное приложение, и допустим я с сервера отправляю что-то клиенту и чтоб оно моментально в программе прям сразу без обновлений,...
Сумма двух цыфр не работает C++
#include<stdio.h> #include<conio.h> int main() { int a,b, y; printf("Vvedite chislo a:"); scanf("%d",&a); printf("Vvedite chislo b:");
C++ Сумма двух цыфр http://www.cyberforum.ru/cpp-beginners/thread949592.html
только учусь) #include<stdio.h> #include<conio.h> int main() { int a,b, y;
C++ Начинающему копировать слова из текстового файла ≈∏омогите начинающему хелп копировать слова из текстового файла. Создать файл с текстом:Printf " 1.pig 2.mouse 3.reptile "c:\book.txt Одну информацию под числом вывести на экран например... подробнее

Показать сообщение отдельно
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152

Работа с битами - C++

07.09.2013, 10:12. Просмотров 592. Ответов 3
Метки (Все метки)

В общем вот локальная проблема: есть int, который выступает в роли сетки нулей и единиц, два примера, разницу между которыми не могу устранить:
1)
C++
1
2
int tmp = - INT_MAX /*1111 1111 1111 1111 1111 1111 1111 1111*/
tmp = tmp ^ 3 /*(1)111 1111 1111 1111 1111 1111 1111 11(10)*/
2)
C++
1
2
int tmp = - INT_MAX /*1111 1111 1111 1111 1111 1111 1111 1111*/
tmp = tmp ^ (-3) /*(0)111 1111 1111 1111 1111 1111 1111 11(00)*/
проблема в первом бите результата первого случая (если считать от нулевого бита), там стоит единица, а ожидается нуль. Можно ли выйти из этой ситуации или придётся всегда следить за знаками операндов? И ещё хотел бы узнать, в чём такая причина, связано ли это с тем, что INT_MIN по модулю больше -INT_MAX и как этого избежать в рамках поставленного примера.

Добавлено через 8 минут
аааааа, тему закрывайте, я разобрался, я думал что бит знака - крайний слева, а он ведь на самом деле нулевой, самый крайний справа!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru