Итак, для операций с плавающей запятой, насколько я понимаю, являются производными математики школьного класса. Умножение и деление вы либо добавляете, либо вычитаете экспоненты после вычисления. При выполнении моей конструкции коды (на бумаге), я столкнулся несколько вопросов, которые я перечислил ниже:IEEE 754 Математические операции с плавающей запятой
Для добавления и/или вычитания ...
- Как вы справляетесь случай, если оба базы и показатели различны?
- Что делать, если разница в показателях больше, чем размер большого числа данных?
Я нашел несколько вещей в Интернете, но ничего, что действительно говорит о том, как с этим справиться. Теперь из математики школьного класса вам необходимо нормализовать значения, прежде чем вы сможете выполнять любые вычисления на них.
Итак ...
2^3 + 3^2 = 8 + 9 = 17
То же самое, что требуется здесь?
EDIT: Приносим извинения сообществу за путаницу, поскольку, как я думал, этот вопрос был весьма конкретным. Это использует полномочия 2, поскольку текущая платформа IA32. Я не знаю ни одной платформы, которая имеет плавающую точку в десятичной системе. В качестве примера я использовал десятичное число.
Первый вопрос был дан ответ Марка B:
К счастью, поплавки все сделано с силами 2, так что просто нормализовать показатель. например используя полномочия 10 научных обозначений.
Итак, второй вопрос (как указано выше) - это то, что вы делаете, когда для нормализации значения сумма, которую вы должны сдвинуть, превышает пространство в типе данных? Другими словами, если я скажу ... 32 бит точности, и мне нужно сдвинуть ... скажем 35 бит ... чтобы получить соответствие показателей, как вы справляетесь с этим условием? Как FPU справляется с этим?
номера IEEE с плавающей точкой всегда Base 2. Тем не менее, вы определенно можете столкнуться с проблемами, если вы пытаетесь представить число больше (или меньше), чем может сохраняться тип данных. Это похоже на попытку поместить значение 256 в 8-битное целое число; это просто не подходит. –
Я не собираюсь понижать этот вопрос, потому что я не уверен, но это может быть такая вещь, о которой упоминалось в http://stackoverflow.com/help/dont-ask ... можно обсудить все вопросы относительно того, как для обработки значений с плавающей запятой. –
@Lotharyx [Nope] (https://en.wikipedia.org/wiki/IEEE_floating_point#IEEE_754-2008) также указаны десятичные форматы. – user2079303