3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
|
|
1 | |
Отрицательное число в битах13.09.2017, 10:32. Показов 5866. Ответов 5
Метки нет Все метки)
(
Можете объяснить зачем при переводе числа в отрицательное мы берем сначала обратный код а потом прибавляем к нему единицу?? Можете пояснить что значат эти операции??
Добавлено через 50 секунд Что по сути из себя представляет обратный код по отношению к числу а что дополнительный??
0
|
|
13.09.2017, 10:32 | |
Ответы с готовыми решениями:
5
Найти отрицательное число и после отрицательное число заменить все элемент на нули Дано целое число. Вывести его строку-описание вида «отрицательное чет-ное число», «нулевое число», «положительное нечетное число» и т. д.
Определить, сколько пар (положительное число, отрицательное число) находятся в начале массива |
Падаван С++
447 / 261 / 89
Регистрация: 11.11.2014
Сообщений: 916
|
|
13.09.2017, 10:48 | 2 |
yura91, Есть прямой код и дополнительный, прямой по сути это само по себе представление положительного числа в битах, а дополнительный к нему же это его инверсия с +1 и используется для представления отрицательных чисел, нужны они для выполнения более быстрых арифмитических операций с числами, вот пример вычислений
Операция сложения положительного числа и отрицательного числа, представленного в прямом коде Прямой код числа 5: 0 000 0101 Прямой код числа -7: 1 000 0111 Два исходных числа сравниваются. В разряд знака результата записывается знак большего исходного числа. Если числа имеют разные знаки, то вместо операции сложения используется операция вычитания из большего по модулю значения меньшего. При этом первый (знаковый) разряд в операции не участвует. _ 000 0111 000 0101 ------------- 000 0010 После выполнения операции учитывается первый разряд. Результат операции 1 000 0010, или -210. Операция сложения положительного числа и отрицательного числа, представленного в дополнительном коде Прямой код числа 5: 0 000 0101 Прямой код числа -7: 1 000 0111 Формирование дополнительного кода числа -7. Прямой код : 1 000 0111 Инверсия : 1 111 1000 Добавление единицы: 1 111 1001 Операция сложения. 0 000 0101 + 1 111 1001 -------------- 1 111 1110 Проверка результата путем преобразования к прямому коду. Дополнительный код: 1 111 1110 Вычитание единицы : 1 111 1101 Инверсия : 1 000 0010 (или -210) с использованием дополнительного кода алгоритм более понятен и легче реализуем
0
|
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
|
|
13.09.2017, 11:52 [ТС] | 4 |
А в конъюнкции(ну в логических операциях) участвует знаковый разряд ? Ну к примеру если один знаковый int с помощью конъюнкции соединить с другим таким же знаковым int, то знаковый бит будет участвовать в этой операции??
Добавлено через 3 минуты Просто в арифметических операциях над битами знаковый разряд не участвует а дописывается в конце так ведь? Это же самый первый бит насколько я знаю верно?
0
|
Notoriously
|
13.09.2017, 11:54
Отрицательное число в битах
#6
|
Не по теме: yura91,
0
|
13.09.2017, 11:54 | |
Умножить каждое число на первое отрицательное число. Добавив к каждому числу половину последнего отрицательного числа Проверка на отрицательное число Отрицательное число в степени Беззнаковое целое и отрицательное число Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |