как 32-битный процессор обрабатывает 64-битное двойное значение?

1

Любое тело скажет мне, как 32-битный процессор выполняет операции с 64-битными двойными значениями?

В java double длина 64 бит. Затем, как 32-битный процессор выполняет арифметические операции (т.е. добавление или вычитание) на 64-битные двойные переменные.

Теги:

3 ответа

3
Лучший ответ

64-битные типы и их операции эмулируются на 32-битных процессорах. После компиляции компилятор сопоставляет 64-битные значения с двумя 32-битными значениями, а операции с этими значениями - с последовательностью операций над их 32-битными представлениями. Это означает, что простая операция, которая добавляет два 64-битных значения, может быть выполнена изначально и атомарна на 64-битном процессоре, занимает несколько тактов при эмулировании на 32-битном процессоре.

Подробности и примеры: 64-битные типы и арифметика для 32-разрядных процессоров

2

Числовой сопроцессор, выполняющий операции с плавающей запятой, не заботится о том, является ли основной процессор 32-битным или 64-битным.

  • 0
    сколько бит сопроцессора будет ??
  • 0
    @AlexMathew 32/64 обычно, по крайней мере, если это соответствует IEEE.
1

32-разрядный процессор просто имеет дело с 64-битным long (или сопроцессором в случае double) чисел в двух 32-битных фрагментах с регистрами, которые автоматически обнаруживают и уведомляют о переполнениях и т.д.

  • 0
    Не могли бы вы объяснить внутреннюю обработку 64-битных данных.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню