Ограничения на область значений слова фиксированной точки происходят по той же причине как ограничения на ее точность. А именно, слова фиксированной точки ограничили размер. Для общего обсуждения области значений и точности, относитесь, чтобы Расположиться и Точность.
В двоичной арифметике процессор может должен быть взять n-bit номер фиксированной точки и сохранить ее в m битах, где . Если m <n, область значений номера уменьшалась, и операция может произвести условие переполнения. Некоторые процессоры идентифицируют это условие как Inf
или NaN
. Для других процессоров, особенно цифровых сигнальных процессоров (DSPS), значение насыщает или переносится. Если m> n, область значений номера была расширена. Расширение области значений слова требует включения "сторожевых" разрядов, которые действуют, чтобы принять меры против потенциального переполнения. В обоих случаях область значений зависит от размера и масштабирования слова.
Программное обеспечение Simulink® поддерживает насыщение и переносящийся для всех типов данных с фиксированной точкой, в то время как "сторожевые" разряды поддерживаются только для дробных типов данных. Как показано в следующем рисунке можно выбрать насыщение или переносящийся для блоков Simulink фиксированной точки с флажком Saturate on integer overflow. Установкой Output data type к sfrac(36,4)
, вы задаете 36-битный дробный тип данных со знаком с 4 "сторожевыми" разрядами (общий размер слова составляет 40 битов).