Во-первых, это не вопрос точности или чего-то подобного.
Мой вопрос: как компилятор решает, как представлять число?
Возьмем, к примеру, C. Я пишу
double d = 4.5632;
Как он выбирает свое двоичное представление? Я знаю, что он не представлен точно, так как же он выбирает ближайшее представимое число? Это делается во время компиляции? Это делает ЦП или ОС?
Пожалуйста, отвечайте только в том случае, если вы знаете, как это происходит, ответы типа "не беспокойтесь об этом" бесполезны. Кроме того, «это зависит от платформы» также бесполезно, вы можете выбрать платформу и объяснить это.