exponenta event banner

Вычислить наклон и смещение

Что такое масштабирование уклона?

При масштабировании смещения уклона необходимо указать наклон и смещение числа. Действительное значение масштабированного числа смещения наклона может быть представлено следующим образом:

действительное значение = (наклон × целое число) + смещение

уклон = коэффициент регулировки уклона × 2фиксированная экспонента

Вычислить наклон и смещение

Начните с нужных конечных точек, сигнатур и длины слова.

lower_bound = 999;
upper_bound = 1000;
is_signed = true;
word_length = 16;

Поиск диапазона fi объект с указанной длиной слова и подписью, используйте range функция.

[Q_min, Q_max] = range(fi([], is_signed, word_length, 0));

Чтобы найти наклон и смещение, решите систему уравнений:

lower_bound = slope * Q_min + bias

upper_bound = slope * Q_max + bias

Перепишите эти уравнения в матричной форме.

[lower_boundupper_bound]=[Q_min1Q_max1]×[slopebias]

Решение для уклона и смещения.

A = double ([Q_min, 1; Q_max, 1]);
b = double ([lower_bound; upper_bound]);
x = A\b;
format long g

Чтобы найти наклон или точность, вызовите первый элемент вектора уклона-смещения, x.

slope = x(1)
slope =

      1.52590218966964e-05

Чтобы найти смещение, вызовите второй элемент вектора x.

bias = x(2)
bias =

          999.500007629511

Создать numerictype объект с масштабированием уклона.

T = numerictype(is_signed, word_length, slope, bias)
T =
 

          DataTypeMode: Fixed-point: slope and bias scaling
            Signedness: Signed
            WordLength: 16
                 Slope: 1.5259021896696368e-5
                  Bias: 999.500007629511

Создать fi объект с numerictype T.

a = fi(999.255, T)
a = 

          999.254993514916

          DataTypeMode: Fixed-point: slope and bias scaling
            Signedness: Signed
            WordLength: 16
                 Slope: 1.5259021896696368e-5
                  Bias: 999.500007629511

Убедитесь, что fi созданный объект имеет правильные спецификации, найдя диапазон a.

range(a)
ans = 

         999        1000

          DataTypeMode: Fixed-point: slope and bias scaling
            Signedness: Signed
            WordLength: 16
                 Slope: 1.5259021896696368e-5
                  Bias: 999.500007629511