创建双精度数据
首先创建一些数据,默认情况下为双精度。
Ad = [1 2 0; 2 5 -1; 4 10 -1]
Ad = 3×3
1 2 0
2 5 -1
4 10 -1
转换为单精度
可以使用 single 函数将数据转换为单精度。
A = single(Ad); % or A = cast(Ad,'single');
创建单精度零和一
此外,也可以分别使用函数创建单精度零和一。
n = 1000;
Z = zeros(n,1,'single');
O = ones(n,1,'single');
看一下工作区中的变量。
whos A Ad O Z n
Name Size Bytes Class Attributes
A 3x3 36 single
Ad 3x3 72 double
O 1000x1 4000 single
Z 1000x1 4000 single
n 1x1 8 double
可以看到,部分变量的类型为 single,变量 A(Ad 的单精度版本)需要一半的内存字节数用于存储,因为单精度仅需要四字节(32 位),而双精度需要 8 字节(64 位)。
算术运算和线性代数运算
可以对单精度数据执行标准算术运算和线性代数运算。
B = A' % Matrix Transpose
B = 3x3 single matrix
1 2 4
2 5 10
<