Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/137: Рейтинг темы: голосов - 137, средняя оценка - 4.78
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16

2-ичное представление числа типа double или float?

04.11.2009, 13:45. Показов 26288. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите разобратся,,,, плиз))
double a=1991.829;
a==01000000 10011111 00011111 01010000 11100101 01100000 01000001 10001001;
скажите пожалуйста как число а преврашается вот в это?(какой бит чему ответственен?)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.11.2009, 13:45
Ответы с готовыми решениями:

Получить q ичное представление числа
Даны натуральные числа p и q(q>=2).Получить q-ичное представление числа p в виде такой последовательности a...a целых неотрицательных чисел...

Как проверить вводилось ли число (типа double или float) в консоль
Как проверить вводилось ли число (типа double или float) в консоль?

Неправильно отнимаются числа типа float(double)
Сразу говорю, что перезайти в решение - не вариант. Итак, у меня есть малюсенькая нейронная сеть, но это так, что б понимать код, но...

21
анимешник++
 Аватар для Iworb
95 / 62 / 7
Регистрация: 03.11.2009
Сообщений: 427
04.11.2009, 14:09
или мне кажется или double означает по умолчанию double int, a число а - с десятичной точкой (тип float)

Добавлено через 20 секунд
наверно из-за этого и получается такое

Добавлено через 1 минуту
11111000111,110101 - вот правильный результат

Добавлено через 2 минуты
вот этому числу соответствует 4 байта(float)
вашему числу соответствует 8 байт, как и полагается типу double
вот где-то тут и загвоздка
0
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 14:13  [ТС]
Цитата Сообщение от Iworb Посмотреть сообщение
или мне кажется или double означает по умолчанию double int, a число а - с десятичной точкой (тип float)

Добавлено через 20 секунд
наверно из-за этого и получается такое

Добавлено через 1 минуту
11111000111,110101 - вот правильный результат
не брат, ты написал как 1991,829 предстовляется в 2-ичной форме, я написал как число дабл читается в С++, ихочу знать почему именно так
0
 Аватар для ООП
2 / 2 / 0
Регистрация: 03.11.2009
Сообщений: 13
04.11.2009, 14:14
Если не ошибаюсь, то это для сопроцессора тип.
0
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 14:21  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
using namespace std;
 
union bits
{
    bits(double n);
    void show_bits();
    double d;
    unsigned char c[sizeof(double)];
};
bits::bits(double n)
{
    d=n;
}
void bits::show_bits()
{
    int i,j;
    for(j=sizeof(double)-1;j>=0;j--)
    {
        cout<<"двоичное представление байта "<<j<<":";
        for(i=128;i;i>>=1)
        {
            if(i & c[j])
            {
                cout<<"1";
            }
            else
            {
                cout<<"0";
            }
        }
        cout<<endl;
    }
}
int main()
{
    setlocale(LC_ALL,"Russian");
    bits ob(1991.829);
    ob.show_bits();
    return 0;
    system("pause");
}
вот моя прога

двоичное представление байта 7:01000000
двоичное представление байта 6:10011111
двоичное представление байта 5:00011111
двоичное представление байта 4:01010000
двоичное представление байта 3:11100101
двоичное представление байта 2:01100000
двоичное представление байта 1:01000001
двоичное представление байта 0:10001001
Press any key to continue . . .

вот ответ,,,,,вопрос!!! как так получилась?))
1
анимешник++
 Аватар для Iworb
95 / 62 / 7
Регистрация: 03.11.2009
Сообщений: 427
04.11.2009, 14:39
ну вот, оно тебе КАЖДУЮ цифру представила в двоичном представление байта + точка десятичная

Добавлено через 45 секунд
а вот как получилось - это уже не ко мне =(
0
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 15:10  [ТС]
Цитата Сообщение от Iworb Посмотреть сообщение
ну вот, оно тебе КАЖДУЮ цифру представила в двоичном представление байта + точка десятичная
не друг я и этот вариант проверял это не так

Добавлено через 29 минут
кто нибудь хелп ми
0
0 / 0 / 0
Регистрация: 25.10.2009
Сообщений: 22
04.11.2009, 15:21
http://www.rus-edu.bg/edu/onli... 4/1_4.html

Добавлено через 6 минут
если вкратце - берёшь десятичную часть дроби, умножаешь её на два, записываешь целую часть произведения в мозг, дробную часть получившегося умножаешь на два, и опять записывешь целую часть. и так много раз (в зависимости от того, какая точность нужна). потом берёшь целую часть дроби и переводишь её в двоичную систему обычным способом (делением в столбик). а потом записываешь ответы через запятую
0
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 15:53  [ТС]
Цитата Сообщение от temni Посмотреть сообщение
http://www.rus-edu.bg/edu/onli... 4/1_4.html

Добавлено через 6 минут
если вкратце - берёшь десятичную часть дроби, умножаешь её на два, записываешь целую часть произведения в мозг, дробную часть получившегося умножаешь на два, и опять записывешь целую часть. и так много раз (в зависимости от того, какая точность нужна). потом берёшь целую часть дроби и переводишь её в двоичную систему обычным способом (делением в столбик). а потом записываешь ответы через запятую
так шитать я тоже умею))) ты смотри по више, там я кокретизировал вопрос

Добавлено через 23 минуты
дайте точный ответ пожалуйста
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.11.2009, 15:57
Цитата Сообщение от Hayk Посмотреть сообщение
ты смотри по више, там я кокретизировал вопрос
Не знаю, что ты там конкретизировал, но я так и не понял, ты хочешь понять, как вообще плавающие числа в двоичной системе представляются или как они хранятся в машине

Можешь пока тут почитать http://ru.wikipedia.org/wiki/Плавающая_запятая
Я вообще хотел faq по этому вопросу написать, но никак руки не доходят. А объяснить на пальцах быстро не получится
1
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 16:00  [ТС]
Цитата Сообщение от Evg Посмотреть сообщение
Не знаю, что ты там конкретизировал, но я так и не понял, ты хочешь понять, как вообще плавающие числа в двоичной системе представляются или как они хранятся в машине

Можешь пока тут почитать http://ru.wikipedia.org/wiki/Плавающая_запятая
Я вообще хотел faq по этому вопросу написать, но никак руки не доходят. А объяснить на пальцах быстро не получится
спсб вопрос был про цифр с плавающей точкой
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.11.2009, 16:01
Цитата Сообщение от Hayk Посмотреть сообщение
спсб вопрос был про цифр с плавающей точкой
Ты можешь внятно и членораздельно задать свой вопрос?
0
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 16:06  [ТС]
Цитата Сообщение от Evg Посмотреть сообщение
Ты можешь внятно и членораздельно задать свой вопрос?
как число типа дабл пишется в двоичной форме(по кокому алгоритму делается перевод?)
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.11.2009, 16:13
Цитата Сообщение от Hayk Посмотреть сообщение
как число типа дабл пишется в двоичной форме(по кокому алгоритму делается перевод?)
Есть два совершенно непересекающихся вопроса:
1. Двоичная запись действительных чисел (грубо говоря, как записывать на листочке)
2. Представление действитеельных чисел в машине. Запись числа на листочке НЕ совпадает с машинным представленим (хотя для целых чисел они, условно, совпадают)

С ходу что-то ссылки на первое и второе не найду. Хотя и на форуме они встречались не раз, и объяснения даже какие-то были
0
3 / 2 / 1
Регистрация: 28.08.2009
Сообщений: 16
04.11.2009, 16:16  [ТС]
Цитата Сообщение от Evg Посмотреть сообщение
Есть два совершенно непересекающихся вопроса:
1. Двоичная запись действительных чисел (грубо говоря, как записывать на листочке)
2. Представление действитеельных чисел в машине. Запись числа на листочке НЕ совпадает с машинным представленим (хотя для целых чисел они, условно, совпадают)

С ходу что-то ссылки на первое и второе не найду. Хотя и на форуме они встречались не раз, и объяснения даже какие-то были
2.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.11.2009, 16:18
По первому вопросу: Формат данных с плавающей точкой
По второму вопросу: http://www.softelectro.ru/ieee754.html, но не слишком доходчиво
1
14 / 14 / 0
Регистрация: 08.07.2009
Сообщений: 61
04.11.2009, 17:41
вспомню свои знания, например, тип с плавающей запятой одинарной точности, он же float (32 бита всего) представлен в виде трёх компонент, которые идут в представлении в таком порядке: знак числа (1 бит), порядок числа (8 бит), мантисса числа (23 бита).
Знак числа может быть 0 или 1, если 1, то отрицательный.
Порядок числа - хранит степень 10-ти, на которую надо умножить мантиссу, чтоб получить само число, порядок может принимать значения от -128 до 127, но насколько я помню, в х86 принято хранить его со смещением, т.е. к настоящему порядку прибавляется 128 и он хранится только в положительном виде.
Мантисса - хранит значимые цифры числа, причем в данном случае в нормализованном виде, т.е. в виде наибольшей десятичной дроби, меньшей 1. Но так как такая последовательность всегда будет начинаться с двоичной единицы, то для экономии и увеличения разрядности её "сдвигают" в первый целый разряд и как бы подразумевают, а первой в последовательности мантиссы становится вторая двоичная цифра (это может быть 0 и 1). Да, и еще отрицательные числа хранятся в дополнительном коде. С double то же самое, только размер порядка и мантиссы побольше, кажется 11 и 52 соответственно.
0
3 / 3 / 1
Регистрация: 05.09.2008
Сообщений: 6
07.12.2009, 12:07
Читай здесь
Подробнее нужно?
И зачем тебе? =) Ты часом не физтех?
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
09.06.2011, 09:08
Цитата Сообщение от Iworb Посмотреть сообщение
double означает по умолчанию double int
C++
1
double
по дефолу соответсвует одной из реализаций
Code
1
real8
- восьмибайтному вещественном утипу, у которого и мантисса, и порядок имеют знаки.

Добавлено через 1 минуту
Цитата Сообщение от Iworb Посмотреть сообщение
11111000111,110101
В памяти запятая не ставится, а подразумевается, а ТВ запостил сырые биты.
0
0 / 0 / 0
Регистрация: 23.04.2018
Сообщений: 16
21.10.2019, 11:44
Набор нулей и единиц - данное число в представлении числа с плавающей точкой
На вопрос почему так получается, потому что есть алгоритм "перевода представления" (хз, как по-другому назвать), если интересно, то подробную информацию можно найти загуглив "IEEE754"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.10.2019, 11:44
Помогаю со студенческими работами здесь

представление в памяти компьютера числа типа double
Запишите на языке Pascal программу с использованием процедур (функций): определить для произвольного вещественного десятичного числа типа...

Определить для произвольного вещественного десятичного числа типа double его представление в памяти компьютера
Составить математическую модель, блок-схему и записать на языке Pascal программу с использованием процедур (функций) для решения следующих...

Double/float двоичное представление
отрывок из статьи о представлении числа с плавающей точкой. Порядок вычисляется как E-127 . Но ведь при таком вычислении нельзя...

Нужна компонента: что-то типа StringGrid, но значения ячеек должны иметь тип числа (float, double и т.д.)
Уважаемые дамы и господа! Если у кого-то есть, или кто-то знает где можно взять компоненту под билдер: что-то типа StringGrid, но...

Передача переменной типа double из c# в переменную типа float в SQL
Здравствуйте, имеется проблема с передачей данных из кода c# в бд SQL Имеется переменная типа double, к примеру double newPrice =...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru