Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
 Аватар для Anton-Miracle
0 / 0 / 0
Регистрация: 21.08.2015
Сообщений: 30

Разбираю Унарное отрицание (побитовый оператор ~)

29.01.2016, 12:48. Показов 3252. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем.
есть код :
Java
1
2
3
for (int i = -10; i <= 10; i++){
            System.out.println(" i = " + i + " | ~i = " + ~i);
        }
Консоль выводит:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
i = -10 | ~i = 9
 i = -9 | ~i = 8
 i = -8 | ~i = 7
 i = -7 | ~i = 6
 i = -6 | ~i = 5
 i = -5 | ~i = 4
 i = -4 | ~i = 3
 i = -3 | ~i = 2
 i = -2 | ~i = 1
 i = -1 | ~i = 0
 i = 0 | ~i = -1
 i = 1 | ~i = -2
 i = 2 | ~i = -3
 i = 3 | ~i = -4
 i = 4 | ~i = -5
 i = 5 | ~i = -6
 i = 6 | ~i = -7
 i = 7 | ~i = -8
 i = 8 | ~i = -9
 i = 9 | ~i = -10
 i = 10 | ~i = -11
Наглядно видно, что изменяется модуль числа (увеличивается/уменьшается), в зависимости от знака числа к которому применяется оператор унарное отрицание. Но я не понимаю, сам процесс в числе .
Т.к. это побитовый, я смотрел числа в двоичной системе, как отрицательные так и положительные... но там вообще бред получается...
Поэтому прошу подсказать, куда смотреть или где я был не внимателен.
p.s. прошу отнестись с пониманием, пишу тему, так как была проделана работа и я не смог найти однозначный ответ. Спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.01.2016, 12:48
Ответы с готовыми решениями:

Отрицание xy это значит умножение х на у или отрицание х + отрицание у
отрицание xy это значит умножение х на у или отрицание х + отрицание у,в таблице истинности незнаю как делать

Побитовый сдвиг и ошибка "Невозможно применить оператор << к переменным тип ulong ulong"
Пишу обычную программную реализацию ГОСТ Р34.11 Нужна операция побитового сдвига. Выглядит примерно так: unsafe ulong ROL(ulong...

Машина Тьюринга унарное сложение
Нужно написать на С++ программу реализующую машину Тьюринга выполняющую унарное сложение Добавлено через 1 час 9 минут Подскажите с...

4
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
29.01.2016, 15:26
Anton-Miracle, может это Вам поможет
http://
habrahabr.ru/post/187606/

или
http://developer.alexanderklim... itwise.php
0
 Аватар для Kotik_leapold
111 / 98 / 84
Регистрация: 18.12.2015
Сообщений: 567
29.01.2016, 17:48
Привет, интересное задание.

Смотрите, 0 -> 1, 1->0

~A 00111100
-----------
11000011
0
 Аватар для Anton-Miracle
0 / 0 / 0
Регистрация: 21.08.2015
Сообщений: 30
29.01.2016, 20:57  [ТС]
Kotik_leapold
Не совсем понял это
0 -> 1, 1->0
Если считать, как это описывают в книге (инвертирует каждый бит):
~01001(9) = 10110(22)
Не вижу связь с тем что выводится в первом сообщении. Прошу разжевать, если есть возможность.
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
31.01.2016, 01:52
Anton-Miracle, Отрицательные числа хранятся в дополнительном коде.
На википедии вроде нормально описано - https://ru.wikipedia.org/wiki/... ние_числа)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.01.2016, 01:52
Помогаю со студенческими работами здесь

Разбираю генетический алгоритм
Всем привет! Нужна помощь! Есть фрагмент кода генетического алгоритма. Полное описание можно посмотреть по ссылке...

Разбираю формат PAL
Я являюсь счастливым обладателем платы STM32F4Dyscocery, на которой пытаюсь с генерировать видео сигнал, при его построении надо строго...

Унарное вычитание: как соответствовать принципам платформы
Здравствуйте. Возможно, вопрос покажется глупым, но передо мной встал выбор. Есть класс Mononomial, представляющий одночлен. Вот его...

унарное вычитание копеек из объекта типа Money
Подскажите как сделать унарную операцию: -- вычитание копейки из объекта типа Money (учесть, что рублей и копеек не может быть меньше...

Разбираю ООП нужен пример
Доброе... Такое дело, я изучаю ООП PHP. Суть я чуть-чуть понимаю, но не до конца.: Есть класс например DB в нем метод...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru