Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
CarlosA
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 2
#1

Битовый сдвиг вправо для дробных чисел

22.01.2013, 23:27. Просмотров 1259. Ответов 2
Метки нет (Все метки)

(Как мне уже известно) битовый сдвиг вправо на одну "ячейку" аналогичен делению на 2.
Например 1/2^3 или 1>>3. Число получается не целым, поэтому кроме как 0 я не получаю ответ. (я понимаю переменная то Int, но с float битовый сдвиг вообще не хочет работать)

Собственно вопрос :
- как получить нормальный ответ?(1>>3)
- как можно реализовать битовый сдвиг числу с плавающей точкой?

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

0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2013, 23:27
Ответы с готовыми решениями:

битовый сдвиг
скажем так, дан массив из 4-х элементов (1100) , нужно выполнить сдвиг...

Битовый сдвиг
Вот в чем вопрос: int x = 2; int y; y = (x >> 32); cout << x << "...

Битовый сдвиг в if()
Обясните как работает такой код:void swap(int &a, int &b) { int temp = a;...

Битовый сдвиг массива
Помогите разобраться с сдвигом влево (выравниванием до начала байта) данных....

Не понимаю битовый сдвиг
int k; // переменная k -целая k=32;// k приравнивается к 32 k= k << 4 >> 3;...

2
Croessmah
++Ͻ
14359 / 8141 / 1532
Регистрация: 27.09.2012
Сообщений: 20,071
Записей в блоге: 3
Завершенные тесты: 1
22.01.2013, 23:32 #2
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

Цитата Сообщение от CarlosA Посмотреть сообщение
как можно реализовать битовый сдвиг числу с плавающей точкой?
Плавающие числа представляются несколько иначе, чем целочисленные, поэтому такой метод тут не прокатит.
Представление вещественных чисел "на пальцах"
Формат данных с плавающей точкой
1
CarlosA
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 2
23.01.2013, 18:39  [ТС] #3
Помогите разобраться
например:
бинарное число 1011.101 / 10 = 101.1101
(десятичное 11.625 / 2 = 5.8125)
Какой операцией, аналогичной битовому сдвигу, я могу перемещать плавающую точку во float или double?(нужно уйти от оператора деления(умножения))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2013, 18:39

Где и когда уместно применять операции << (сдвиг влево) и >> (сдвиг вправо)?
Кто может привести пример , когда нужно использовать операции: 1) &lt;&lt; сдвиг...

Подскажите, как сделать сдвиг массива вправо для вставки нового элемента?
// После каждого четного числа добавить число 0. const int n=10; int...

Проверить, как организована память в двумерном массиве. Сделать сдвиг вправо для каждой строчки двумерного мас
Проверить, как организована память в двумерном массиве. Сделать сдвиг вправо...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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