亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> MATLAB

MATLAB 数值类型详解:存储、转换与范围查询

MATLAB 支持有符号/无符号整数、单/双精度浮点数等数值类型。默认以双精度浮点数存储,但可显式转换为整数或单精度类型。所有数值类型均支持基本数组与数学运算。

数值类型转换函数

函数用途
double转双精度浮点数
single转单精度浮点数
int8转 8 位有符号整数
int16转 16 位有符号整数
int32转 32 位有符号整数
int64转 64 位有符号整数
uint8转 8 位无符号整数
uint16转 16 位无符号整数
uint32转 32 位无符号整数
uint64转 64 位无符号整数

示例:不同类型下的乘法运算

x = single([5.32 3.47 6.28]) .* 7.5
x = double([5.32 3.47 6.28]) .* 7.5
x = int8([5.32 3.47 6.28]) .* 7.5
x = int16([5.32 3.47 6.28]) .* 7.5
x = int32([5.32 3.47 6.28]) .* 7.5
x = int64([5.32 3.47 6.28]) .* 7.5

结果对比:

x = 39.900  26.025  47.100   % single/double 保留小数
x = 38  23  45                  % 整数类型截断取整

示例:转元胞数组

x = int32([5.32 3.47 6.28]) .* 7.5
x = num2cell(x)
x = { [1,1]=38  [1,2]=23  [1,3]=45 }

整数类型范围查询

intmax() 与 intmin() 返回指定整数类型的最大/最小值。

示例

str = 'The range for int8 is:\n\t%d to %d ';
sprintf(str, intmin('int8'), intmax('int8'))
% ... 依次查询 int16, int32, int64, uint8...uint64

输出(注意 int64/uint64 结果受版本影响):

int8:    -128 到 127
int16:   -32768 到 32767
int32:   -2.147e9 到 2.147e9
int64:   0 到 0 (示例异常)
uint8:   0 到 255
uint16:  0 到 65535
uint32:  0 到 -1 (示例异常)
uint64:  0 到 1.844e19

浮点数类型范围查询

realmax() 与 realmin() 返回浮点数最大/最小正值,支持 'single' 与 'double' 参数。

示例

str = 'The range for single is:\n\t%g to %g and\n\t %g to %g';
sprintf(str, -realmax('single'), -realmin('single'), realmin('single'), realmax('single'))
str = 'The range for double is:\n\t%g to %g and\n\t %g to %g';
sprintf(str, -realmax('double'), -realmin('double'), realmin('double'), realmax('double'))
single: -3.40282e+38 到 -1.17549e-38 及 1.17549e-38 到 3.40282e+38
double: -1.79769e+308 到 -2.22507e-308 及 2.22507e-308 到 1.79769e+308

MATLAB

  1. 数值与数制:理解区别及其现实影响
  2. MATLAB 入门指南:矩阵实验室的核心能力与应用领域全景
  3. MATLAB 变量深度解析:矩阵本质、赋值、多重赋值、查看与清理、长赋值、格式控制、向量创建
  4. MATLAB 常用命令速查:会话管理、系统操作、输入输出、矩阵数组、绘图可视化
  5. MATLAB 数据类型完全指南:15 种基本类型、转换函数与类型判断函数速查表
  6. MATLAB 运算符大全:矩阵/数组算术、关系、逻辑、位运算、集合运算详解
  7. MATLAB 矩阵核心操作:创建、索引引用、子矩阵提取、行列删除、拼接与基本运算
  8. MATLAB 多维数组与特殊数组完全指南
  9. MATLAB 冒号运算符详解:向量创建与高效迭代
  10. MATLAB 字符串完全指南:创建、拼接、元胞数组与常用函数
  11. MATLAB 函数详解:定义、工作区、输入输出与多种函数类型
  12. MATLAB 代数方程求解:solve、因式分解与化简