Вокруг к самому близкому целому числу со связями, округляющимися к самому близкому даже целое число
y = convergent(a)
y = convergent(x)
y = convergent(a)
раунды fi
объект a
к самому близкому целому числу. В случае связи, convergent(a)
раунды к самому близкому даже целое число.
y
и a
имейте тот же fimath
объект и DataType
свойство.
Когда DataType
свойство a
single
'double'
, или boolean
, numerictype
из y
совпадает с тем из a
.
Когда дробная длина a
нуль или отрицательный, a
уже целое число и numerictype
из y
совпадает с тем из a
.
Когда дробная длина a
положительно, дробная длина y
0
, его знак совпадает со знаком a
, и его размер слова является различием между размером слова и дробной длиной a
, плюс один бит. Если a
подписывается, затем минимальный размер слова y
2
. Если a
без знака, затем минимальный размер слова y
1
.
Для комплексного fi
объекты, мнимые и действительные части округлены независимо.
convergent
не поддерживает fi
объекты с нетривиальным наклоном и масштабированием смещения. Масштабирование наклона и смещения тривиально, когда наклон является целочисленной степенью 2, и смещение 0.
y = convergent(x)
округляет элементы x
к самому близкому целому числу. В случае связи, convergent(x)
раунды к самому близкому даже целое число.
Следующий пример демонстрирует как convergent
функция влияет на numerictype
свойства fi
со знаком объект с размером слова 8 и дробной длиной 3.
a = fi(pi, 1, 8, 3) a = 3.1250 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 8 FractionLength: 3 y = convergent(a) y = 3 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 6 FractionLength: 0
Следующий пример демонстрирует как convergent
функция влияет на numerictype
свойства fi
со знаком объект с размером слова 8 и дробной длиной 12.
a = fi(0.025,1,8,12) a = 0.0249 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 8 FractionLength: 12 y = convergent(a) y = 0 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 2 FractionLength: 0
Функции convergent
самый близкий
и round
отличайтесь по способу, которым они обрабатывают значения, младшая значащая цифра которых равняется 5:
convergent
функционируйте связи раундов с самым близким даже целое число
nearest
функционируйте связи раундов с самым близким целым числом к положительной бесконечности
round
функционируйте связи раундов с самым близким целым числом с большим абсолютным значением
Следующая таблица иллюстрирует эти различия для данного fi
объект a
.
a | конвергентный (a) | самый близкий (a) | раунд (a) |
---|---|---|---|
–3.5 | –4 | –3 | –4 |
–2.5 | –2 | –2 | –3 |
–1.5 | –2 | –1 | –2 |
–0.5 | 0 | 0 | –1 |
0.5 | 0 | 1 | 1 |
1.5 | 2 | 2 | 2 |
2.5 | 2 | 3 | 3 |
3.5 | 4 | 4 | 4 |