Логарифм базы 2 и рассечение числа с плавающей запятой
X = [0 1 2 10 Inf NaN]; Y = log2(X)
Y = 1×6
-Inf 0 1.0000 3.3219 Inf NaN
Разбейте несколько чисел на экспоненту и мантиссу. Все эти операции выполняются в соответствии со стандартной арифметикой IEEE ®.
Создайте вектор X, содержащий несколько тестовых значений. Вычислите экспоненту и мантиссу для каждого числа.
X = [1 pi -3 eps realmax realmin];
format rat
[F,E] = log2(X)F =
Columns 1 through 5
1/2 355/452 -3/4 1/2 1
Column 6
1/2
E =
Columns 1 through 5
1 2 2 -51 1024
Column 6
-1021
Соберите результаты в таблицу. Преобразование чисел в символьные векторы для отображения.
x = {'1','pi','-3','eps','realmax','realmin'}';
f = strtrim(cellstr(rats(F')));
T = table(x,f,E','VariableNames',{'Value','Mantissa','Exponent'})T=6×3 table
Value Mantissa Exponent
___________ ___________ ________
{'1' } {'1/2' } 1
{'pi' } {'355/452'} 2
{'-3' } {'-3/4' } 2
{'eps' } {'1/2' } -51
{'realmax'} {'1' } 1024
{'realmin'} {'1/2' } -1021
Результаты показывают, что для первой строки 21). Аналогично, для четвёртой ( 2-51).
X - Входная матрицаВходная матрица, заданная как скаляр, вектор, матрица или многомерный массив.
Для рассечения числа с плавающей запятой [F,E] = log2(X), любые нули в X произвести F = 0 и E = 0. Входные значения Inf, -Inf, или NaN возвращаются без изменений в F с соответствующим показателем степени E = 0.
Типы данных: single | double
Поддержка комплексного номера: Да
Y - Основные 2 логарифмические значенияБазовые значения логарифма 2, возвращаемые как скаляр, вектор, матрица или многомерный массив того же размера, что и X.
F - Значения МантиссыЗначения мантиссы, возвращаемые как скаляр, вектор, матрица или многомерный массив того же размера, что и X. Значения в F и E удовлетворить X = F.*2.^E.
E - Значения экспонентыЗначения экспоненты, возвращаемые как скаляр, вектор, матрица или многомерный массив того же размера, что и X. Значения в F и E удовлетворить X = F.*2.^E.
Эта функция соответствует функции ANSI ® Cfrexp() и стандартная функция IEEE ® с плавающей запятойlogb(). Любые нули в X произвести F = 0 и E = 0.
Эта функция полностью поддерживает массивы tall. Дополнительные сведения см. в разделе Массивы Tall.
Примечания и ограничения по использованию:
Синтаксис [F,E] = log2(X) не поддерживается.
Если вывод функции, выполняемой на GPU, может быть сложным, то необходимо явно указать его входные аргументы как сложные. Дополнительные сведения см. в разделе Работа с комплексными номерами графического процессора (панель инструментов параллельных вычислений).
Дополнительные сведения см. в разделе Запуск функций MATLAB на графическом процессоре (панель инструментов параллельных вычислений).
Эта функция полностью поддерживает распределенные массивы. Дополнительные сведения см. в разделе Запуск функций MATLAB с распределенными массивами (панель инструментов параллельных вычислений).
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.