|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.11.2013, 21:35 | #1 |
Пользователь
Регистрация: 08.03.2011
Сообщений: 44
|
как правильно занулить бит,который определяет знак, в типе double
я как понимаю надо сделать сдвиг одного бита влево, а потом в право и он занулится. только есть проблема как это сделать. так как побитовый сдвиг >>(<<)можно использовать только для типа int.
хотелось бы пример к комментариями чтобы разобраться. спасибо тому кто поможет) |
22.11.2013, 21:45 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
Последний раз редактировалось Stilet; 22.11.2013 в 21:53. |
|
22.11.2013, 21:48 | #3 |
Пользователь
Регистрация: 08.03.2011
Сообщений: 44
|
ну да 1 бит для знака 8 битов под експоненту 23 бита под мантиссу. просто когда пытаюсь применить сдвиг влево или в право то копилятор ругается матом для типа double а на int нет
|
22.11.2013, 21:54 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А это потому что ты пытаешся работать с ним как с вещественным, а надо работать как с массивом байтов. Короче приведение типов нужно.
I'm learning to live...
|
22.11.2013, 21:57 | #5 |
Пользователь
Регистрация: 08.03.2011
Сообщений: 44
|
double приводим r int делаем сдвиг потом обратно к double и выводим на экран все правильно?
Код:
подумал что может быть из-за сдвига там что-то могло утерятся решил сделать так но тоже самое получилось может кто поможет?) Код:
Последний раз редактировалось Stilet; 22.11.2013 в 23:12. |
23.11.2013, 08:45 | #6 |
Форумчанин
Регистрация: 05.04.2012
Сообщений: 134
|
Код:
|
23.11.2013, 17:51 | #7 | |
Пользователь
Регистрация: 08.03.2011
Сообщений: 44
|
Цитата:
Код:
|
|
25.11.2013, 07:04 | #8 |
Форумчанин
Регистрация: 13.11.2013
Сообщений: 149
|
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Составить алгоритм, который по введённому N, (0<=N<=3 000 000 000) определяет, какое число стоит на N-ом месте в последовательност | FIREMAX | Помощь студентам | 1 | 02.02.2013 12:50 |
Составить алгоритм, который по введённому N, (0<=N<=3 000 000 000) определяет, какое число стоит на N-ом месте в последовательност | FIREMAX | Помощь студентам | 3 | 28.11.2012 22:52 |
Составить алгоритм, который по введённому N, (0<=N<=3 000 000 000) определяет, какое число стоит на N-ом месте в последовательност | FIREMAX | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 28.11.2012 20:54 |
Как правильно регистрировать сайт, который сделал для других? | DeniSa | Свободное общение | 3 | 11.11.2011 22:33 |
Есть чат на яваскрипте.не могу поставит знак +;Хотя люди его как то ставят, просто мой знак + заменяется | maksim1983 | JavaScript, Ajax | 4 | 23.02.2009 07:55 |