MATLAB中数值型数据的机内编码与存贮空间浪费

2016-01-08 01:06:55井敏英
陕西理工大学学报(自然科学版) 2015年5期

MATLAB中数值型数据的机内编码与存贮空间浪费

井敏英

(陕西理工学院 物理与电信工程学院, 陕西 汉中 723000)

[摘要]MATLAB中的数值型数据分为整数型和浮点型,整数型数据以二进制补码存储,浮点型数据存储复杂。针对此情况,在MATLAB 2012a环境中,对浮点型单精度实数和双精度实数的机内编码方案进行实验研究,结果表明浮点型数据表示为规范形式,存储其中的数符码、指数码和尾数编码。根据实数绝对值大小范围的不同,尾数有两种不同的机内编码方案:“大实数”尾码和“小实数”尾码。MATLAB浮点型数据的机内编码一方面对所表示数的范围做了扩充,另一方面实数编码方案存在大量存贮空间闲置。为充分利用存储资源,MATLAB软件有必要进一步优化。

[关键词]MATLAB; 浮点型数据; 机内编码;存贮空间浪费

[文章编号]1673-2944(2015)05-0045-05

[中图分类号]TP311

收稿日期:2015-03-05

作者简介:井敏英(1978—),女,陕西省富平县人,陕西理工学院讲师,硕士,主要研究方向为信号处理。

MATLAB是全世界最流行、应用最广泛的科学与工程计算软件之一[1],在工程领域有广泛应用[2-4],与其它软件也有很好的结合性[5-7],但对MATLAB中实数的机内编码研究较少。王正林等[8]给出的MATLAB数值型数据的表示范围是不准确的,并且未涉及数据的机内编码方案。龙姝明、陈爱民等[9-10]虽然准确讨论了实数的机内编码、表数范围及有效位数等实数编码相关问题,但仅仅是C语言的实数编码方案,并且未指出编码方案存在存贮空间浪费现象。实验表明,MATLAB浮点数编码方案有一部分与C语言一致,也有为了扩大表数范围而做出的扩展,扩展部分与C语言实数编码方案不同,MATLAB浮点数编码方案扩展未见文献报道。……

登录APP查看全文