log2
以 2 为底的对数和浮点数分解
说明
示例
以 2 为底的对数值
浮点数分解
将几个数字分解成指数和尾数。这些运算都遵循标准 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
结果表明,对于第一行,。同样,对于第四行,。
输入参数
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® C 函数
frexp()
和 IEEE® 浮点标准函数logb()
。X
中的任何零都将产生F = 0
和E = 0
。
扩展功能
tall 数组
对行数太多而无法放入内存的数组进行计算。
此函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅Run MATLAB Functions in Thread-Based Environment。
GPU 数组
通过使用 Parallel Computing Toolbox™ 在图形处理单元 (GPU) 上运行来加快代码执行。
用法说明和限制:
不支持语法
[F,E] = log2(X)
。如果在 GPU 上运行的函数的输出可能为复数,则必须将其输入参数显式指定为复数。有关详细信息,请参阅Work with Complex Numbers on a GPU (Parallel Computing Toolbox)。
有关详细信息,请参阅Run MATLAB Functions on a GPU (Parallel Computing Toolbox)。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
此函数完全支持分布式数组。有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
版本历史记录
在 R2006a 之前推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)