Есть ли функция Matlab, которая возвращает двоичное представление числа с плавающей точкой?Бинарное представление числа в Matlab
ответ
В Matlab можно использовать функции Java JDK.
Короткий ответ для преобразования с плавающей точкой (одинарной точности 32-битное число) в Matlab в двоичное строковое представление может быть:
flt=3.14
import java.lang.Integer java.lang.Float;
Integer.toBinaryString(Float.floatToIntBits(flt))
Длинный ответ: преобразование поплавка (число одинарной точности 32-бит) в Matlab в двоичном строковое представление
function out=float2binstring(flt)
% converts a float number to binary in matlab according to IEEE754
%
% Usage:
% float2binstring(-3.14)
%
% http://www.h-schmidt.net/FloatApplet/IEEE754.html
%
% Limitations:
% Rounding errors: Not every decimal number can be expressed exactly as a floating
% point number. This can be seen when entering "0.1" and examining its binary representation which is either slightly smaller or larger, depending on the last bit.
%
% Andrej Mosat, [email protected]
% 03/2012
% v0.0
% License: GNU GPL
%
% See also: BINSTRING2FLOAT
% this is a trick to use java JDK should be installed, tested on Matlab R2010
import java.lang.Integer java.lang.Float;
if (~isnumeric(flt))
error('input must be a number');
end
out=Integer.toBinaryString(Float.floatToIntBits(flt));
end
И преобразования двоичной строки плавать с минимальными накладными расходами:
function out=binstring2float(binstr)
% converts a binary string to float number according to IEEE754
%
% Usage:
% binstring2float('11000000010010001111010111000011')
% -3.14
%
%
% http://www.h-schmidt.net/FloatApplet/IEEE754.html
%
% Limitations:
% Rounding errors: Not every decimal number can be expressed exactly as a floating
% point number. This can be seen when entering "0.1" and examining its binary representation which is either slightly smaller or larger, depending on the last bit.
%
% Andrej Mosat, [email protected]
% 03/2012
% v0.0
% License: GNU GPL
%
% See also: FLOAT2BINSTRING
import java.lang.Long java.lang.Float;
if isequal(class(binstr), 'java.lang.String')
binstr=char(binstr);
end
if (~isstr(binstr))
error('input must be a binary string');
end
% Error handling for binary strings should be added here
% the sign is negative
if binstr(2)=='1'
binstr(2)='';
isnegative=1;
else
isnegative=0;
end
out=Float.intBitsToFloat(Long.parseLong( binstr , 2));
if isnegative
out=-out;
end
end
Проверить это представление FileExchange:
Похоже, что вы можете использовать num2hex
для преобразования с плавающей запятой в шестнадцатеричной строки.
Вы также можете использовать 'format hex', чтобы просто изменить метод отображения. –
- 1. печати бинарное представление числа поплавка в C++
- 2. Бинарное представление Integer.MIN_VALUE
- 3. Точное бинарное представление двойной
- 4. Java: бинарное представление серии
- 5. рекурсивная функция, которая выводит бинарное представление целого числа
- 6. Восстанавливающий бинарное изображение в MATLAB
- 7. Бинарное представление перечисления в protobuf-net
- 8. оттенки серого, монохромный, бинарное изображение в MATLAB
- 9. Бинарное древовидное представление с использованием массива
- 10. Двоичное представление числа в C
- 11. Иррациональное представление числа в компьютере
- 12. Преобразование в текстовое представление числа
- 13. Строковое представление числа
- 14. IEEE-представление двоичного числа
- 15. Двоичное представление числа
- 16. Matlab Функциональное представление
- 17. Matlab, лучшее представление гистограммы
- 18. преобразование числа в вектор числа matlab
- 19. Сколько есть бинарное представление с фиксированной точкой точности xxx?
- 20. Заполните бинарное изображение без imfill функции в MATLAB
- 21. Бинарное представление и обработка XML для встроенных устройств
- 22. Распаковка последние четыре цифры ИНТ «s бинарное представление
- 23. 1d массив в бинарное дерево
- 24. Преобразование шестнадцатеричного числа в шестнадцатеричное представление числа в общем lisp
- 25. Matlab-представление чисел с плавающей запятой
- 26. Двоичные числа и представление оснований
- 27. Рисовать мнимые числа в matlab
- 28. Конъюгат комплексного числа в Matlab
- 29. Append цифр числа - Matlab
- 30. MATLAB генерировать случайные числа
Как насчет родного кода MATLAB? – Royi