Вниз
Скачать: CL | DM;

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

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.009 c
3-1195656537
umbra
2007-11-21 17:48
2008.04.13
одно ADOConnection для нескольких компонентов ADO


2-1205740808
Matveih1
2008-03-17 11:00
2008.04.13
Как выделить колонку в StringGrid цветом в зависимости от условия


15-1203934590
DelphiN!
2008-02-25 13:16
2008.04.13
Инструменты для поиска "утечки" памяти в проекте


2-1206014820
Andrewtitoff
2008-03-20 15:07
2008.04.13
Как сделать скриншот экрана


2-1205758991
savyhinst
2008-03-17 16:03
2008.04.13
Повернуть картинку




   Наверх