reinterpretcast

Преобразуйте типы данных с фиксированной точкой, не изменяя базовые данные

Синтаксис

c = reinterpretcast(a, T)

Описание

c = reinterpretcast(a, T) преобразует вход a к типу данных, заданному numerictype объект T не изменяя базовые данные. Результат возвращен в fi объект c.

Вход a должно быть встроенное целое число или fi объект с типом данных с фиксированной точкой. T должен быть numerictype объект с полностью заданным типом данных с фиксированной точкой. Размер слова входных параметров a и T должно быть то же самое.

reinterpretcast функция отличается от MATLAB® typecast и cast функции в этом это только работает с fi объекты и встроенные целые числа, и это не позволяет размеру слова входа изменяться.

Примеры

В следующем примере, a fi со знаком объект с размером слова 8 битов и дробной длиной 7 битов. reinterpretcast функция преобразует a в fi без знака объект c с размером слова 8 битов и дробной длиной 0 битов. Реальные значения a и c отличаются, но их бинарные представления являются тем же самым.

a = fi([-1 pi/4],1,8,7)
T = numerictype(0,8,0);
c = reinterpretcast(a,T)
a = 

                        -1                 0.7890625
      numerictype(1,8,7)

c = 

   128   101
      numerictype(0,8,0)

Чтобы проверить, что базовые данные не изменились, сравните бинарные представления a и c:

binary_a = bin(a)
binary_c = bin(c)
binary_a =

    '10000000   01100101'


binary_c =

    '10000000   01100101'

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.

Смотрите также

| | |

Представленный в R2008b