Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.04.13;
Скачать: [xml.tar.bz2];

Вниз

представление вещественного числа в памяти компьютара   Найти похожие ветки 

 
Blind Guardian   (2008-03-18 23:34) [0]

Здравствуйте. Такой вот вопрос.
Есть некоторое число вещественного типа. В памяти оно предтавлено в двоичной форме.
Вопрос: какое представление этого числа в десятичной форме является верным:

<знак><десятичное представление мантиссы> * (2 ^ <десятичное представление экспоненты>)

или

<знак><десятичное представление мантиссы> * (10 ^ <десятичное представление экспоненты>)

??
( ^  значит "в степени")


 
{RASkov} ©   (2008-03-19 00:26) [1]

> [0] Blind Guardian   (18.03.08 23:34)

Решил викторину здесь устроить?
Что будет победителю?
:о)


 
Германн ©   (2008-03-19 00:30) [2]


> Blind Guardian   (18.03.08 23:34)

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=374


 
Семеныч   (2008-03-19 00:54) [3]

> какое представление этого числа в десятичной форме является верным

Зависит от знака экспоненты.

ПыСы
Ты бы хоть вопрос переформулировал, а то сразу видно, что... ну, ты понял.


 
Германн ©   (2008-03-19 01:11) [4]


> Семеныч   (19.03.08 00:54) [3]

В статье АГ достаточно информации о формате представления вещественного числа в памяти.


 
Blind Guardian   (2008-03-19 16:09) [5]

Германн ©   (19.03.08 00:30) [2]
не поверишь) перед тем, как задать этот вопрос, я читал имено эту статью), видимо, недостаточно внимательно))

такс)

значит, первый вариант верный, так?


 
palva ©   (2008-03-19 16:36) [6]

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

Либо объясните нам, что такое верный. Формат представления чисел можно придумать какой угодно.


 
Blind Guardian   (2008-03-19 17:24) [7]


> Формат представления чисел можно придумать какой угодно.


Я не про формат представления.

Вот смотрите.
Есть какое-то вещественное число в памяти компьютера. Мы переводим его значения его экспоненты и мантиссы в десятичное представление, и получаем, к примеру, что мантисса равна 8, а экспонента равна 2 (это уже всё в десятичном представлении). Оба знаковых бита установлены на 0, значит оба знака - плюсы. Вот вопрос: наше число равно 8*(10^2)=80 или 8*(2^2)=32  ??? То есть экспонента - это показатель степени с каким основанием: 2 или 10?

Раньше думал, что 10. Но ведь в компьютере то всё в двоичной системе. И было бы очень нерационально, если бы экспонента показывала показатель степени в основанием десять. Ведь всё равно приходилось бы перед каждым действием переводить всё в двоичную систему.


 
palva ©   (2008-03-19 17:41) [8]

На самом деле все сложнее. У числа 1 (double) мантисса будет равна нулю, а экспонента равна 1023. (А почему бы вам самому не посмотреть и не убедиться?)

Но в общем вы правы, в качестве основания степени нужно использовать число 2.


 
Blind Guardian   (2008-03-19 19:30) [9]

palva ©   (19.03.08 17:41) [8]
да. я знаю, почему 1023. Но волновало меня не это.

Спасибо за ответ!


 
Сергей М. ©   (2008-03-19 19:59) [10]


> волновало меня не это


Неужели Гондурас ?!)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.04.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
2-1205901637
HTML
2008-03-19 07:40
2008.04.13
Html редактор


6-1184911760
plotn
2007-07-20 10:09
2008.04.13
TCPClient


15-1204280231
Palladin
2008-02-29 13:17
2008.04.13
Вот вам и неограниченность объектов ядра в совр. Windows


2-1205927025
Deled
2008-03-19 14:43
2008.04.13
Программный анализатор


2-1205923008
Pavelkq
2008-03-19 13:36
2008.04.13
OnRightClick для CheсkListBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский