Имя: Пароль:
IT
Веб-мастеринг
Как на JS получить целое число соответствующее вещественному...
0 D_Pavel
 
30.11.15
08:09
Как на JS наиболее оптимально получить значение целого числа, которое при хранении в памяти соответствует заданному вещественному числу?
например: число 255.0 в двоичном коде выглядит так:
01000011 01111111 00000000 00000000
что соответствует целому числу 1132396544
То есть мне нужно записать в память вещественное число, а потом из этой же памяти прочитать это чиало как целое. Как такое сделать?
1 Кирпич
 
30.11.15
08:49
(0) ты первый в мире, кому это понадобилось. если скажешь, зачем это нужно и это не будет глупостью, обещаю найти тебе ответ в интернете.
2 Asmody
 
30.11.15
08:55
(0) А ты уверен, что все реализации js хранят числа одинаково с учетом битности?
3 los_hooliganos
 
30.11.15
08:55
(0) Напиши свой класс который будет работать как тебе надо с вещественными числами.
4 D_Pavel
 
30.11.15
08:55
(1) Мне это нужно для того, чтобы оптимальным способом получить значение экспоненты двоичного вещественного числа, которая равна позиции старшего значащего бита целого числа.

Найди ответ мне в интернете.
5 D_Pavel
 
30.11.15
08:57
(2) Мне достаточно только широко распространенных реализаций. Всякие линуксовские китайские самопальные не интересуют.
6 los_hooliganos
 
30.11.15
08:57
(4) Зачем это? Достаточно просто знать особенности математический библиотеки.
7 Asmody
 
30.11.15
08:59
(5) а, ну про Internet Explorer читай msdn.
8 D_Pavel
 
30.11.15
09:00
(6) не понял о чем ты.

Мне в конечном итоге нужно обнулить старший значащий бит числа. Подойдет даже такое решение, в котором не нужно вычислять его позицию, но я такого не знаю.
9 D_Pavel
 
30.11.15
09:00
(7) Для чего? Там не стандартная реализация что-ли?
10 Кирпич
 
30.11.15
09:02
(4) ну так и зачем тебе это надо?
11 Asmody
 
30.11.15
09:05
(9) остальное под твое определение не подходит.
12 Asmody
 
30.11.15
09:09
(8) Не даст ECMAScript такого сделать. Это тебе не C++.
13 D_Pavel
 
30.11.15
09:24
(10) Я же тебе написал зачем. Короче понятно, ты наврал что найдешь ответ в интернете.
14 D_Pavel
 
30.11.15
09:26
(12) Хреново (((

Значит задача не решаемая.

Но и на том спасибо.
15 Лефмихалыч
 
30.11.15
09:26
(13) он тебя про задачу спрашивал, а ты ему просто более подробно описал решение. Ответа на вопрос "Зачем" в ветке нет
16 Кирпич
 
30.11.15
09:32
(13) чем обиженку строить, лучше напиши, как у тебя из 255.0 получилось 1132396544
17 Кирпич
 
30.11.15
09:36
(0) ну и пара ссылок тебе. может поможет. хотя я так и не понял, чего ты хочешь.
http://www.programmersforum.ru/showthread.php?t=22766
http://habrahabr.ru/post/112953/
18 D_Pavel
 
30.11.15
09:54
(15) Нет, я объяснил для чего может быть полезно то что мне нужно. Решения я не объяснял.
19 D_Pavel
 
30.11.15
09:56
(16) Я думал ты понимаешь о чем я спрашиваю, а ты только сейчас просишь объяснить простую вещь без которой даже нет смысла читать мой вопрос. Ты мне не поможешь с моей задачей. Тем более что уже ответили что она вообще не решаема.
20 Лефмихалыч
 
30.11.15
09:57
(18) мне жаль, что ты так думаешь
21 Кирпич
 
30.11.15
10:01
(19) это ты решил, что в js вещественные числа хранятся в 32 битах? или ты будешь любое число сначала запихивать в 32 бита, а потом получать его в двоичном коде?
22 orefkov
 
30.11.15
10:05
Изврат, конечно, но можно вот так:
http://babbage.cs.qc.edu/courses/cs341/IEEE-754.html
Изучай код.
А сама задача напрямую в рамках javascript не решаема.
Дело в том, что все числа в javascript представляются в IEEE754. Вот и просто ответь сам себе на вопрос - а в каком типе ты хочешь получить ответ? В виде числа? Но числа в javascript по определению только вещественные в формате IEEE754, и ответ в виде целого числа просто не влезет в те числа, с которыми может оперировать javascript.
Поэтому решить задачу можно только получив ответ в виде строки/массива. Имхо, будет проще решить задачу математическими методами сразу в вещественных числах.
23 D_Pavel
 
30.11.15
10:22
Закройте темку пожалуйста.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.