MATLAB IEEE754 和float 转换

 IEEE754_data = '44480000';
 IEEE754_float = typecast(uint32(hex2dec(IEEE754_data)),'single')

 float_data = 800;
 float_ieee = sprintf('%tx',single(float_data))

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB技术论坛原创,原帖参见http://www.matlabsky.com/viewthread.php?tid=3093 该教程详细介绍了MATLAB的舍入误差原理和计算,并给出实例验证。 由于涉及很多数学公式和图形,帖中不方便展示,下面给出了大概的内容提要,具体参见本帖pdf附件http://www.matlabsky.com/viewthread.php?tid=3093! 舍入误差是计算机进行实数计算是所产生的。之所以产生舍入误差是因为机器中进行的算术运算所涉及的数是有限位的,从而导致计算只能用实际数值的近视表示式来完成。在典型的计算机中,仅实数系统的一个相对小的子集用来表示所有的实数。这个子集包含了正负有理数,且存储了小数和指数部分。 IEEE754-1985二进制浮点运算标准 MATLAB中所有数值都是使用64bit表示的。根据754-1985规定,第一位是符号指示位(S),接下来的11位是指数部分(C),最后称为尾数的52位为小数部分(F),指数的基是2。 X64表示的区间范围 x64=0 10000000011 1011100100010000000000000000000000000000000000000000 y64=0 10000000011 1011100100001111111111111111111111111111111111111111 z64=0 10000000011 1011100100010000000000000000000000000000000000000001 这意味着,二进制机器数x64不仅仅代表十进制的x,还表示x临域内的所有实数,也就是说十进制区间(注意是左闭右开的区间) [(y+x)/2, (x+z)/2)= [15518507114430463/562949953421312, 15518507114430465/562949953421312) 内所有数据都是使用机器数x64表示的。这样机器的截断误差就出现了! 如何确定XMIN和XMAX 从IEEE754-1985的规定,我们容易知道64位机器数能够表示的最小正数,此时第64位为1其它为0,故 xmin=2^(-1023)*(1+0.5^52)≈10^(-308) 在计算小于xmin的数据的时候,MATLAB直接当0处理 同理最大的正数则第1位为0其它为1,故 xmax=2^1024*(2-0.5^52)≈10^308 在计算大于xmax数据时,MATLAB视为Inf X的精度范围求解 二进制数x64的前后一个数,相当于在x64尾数的最后一位加1或减1,故x64与最近的数之间的距离为0.5^52 ,另外指数位会将尾数放大了2^n倍,故最终x的精度为0.5*2^(n-52)(注意必须乘以0.5,原因如上)。故在±0.5*2^(n-52)范围内的数据,MATLAB都用x64表示,也就是认为都是x
Matlab中的IEEE 754函数是一组用于浮点数操作的函数。IEEE 754是一种国际标准,用于定义浮点数的表示形式和运算规则。 在Matlab中,可以使用IEEE 754函数来执行以下操作: 1. 浮点数格式转换:你可以使用`float2str`函数将浮点数转换为对应的IEEE 754格式的字符串,或使用`str2float`函数将IEEE 754格式的字符串转换为浮点数。 2. 浮点数分类:使用`isfinite`函数可以判断一个浮点数是否为有限值,使用`isinf`函数可以判断一个浮点数是否为无穷大,使用`isnan`函数可以判断一个浮点数是否为NaN(Not a Number)。 3. 四舍五入:你可以使用`round`函数对浮点数进行四舍五入操作,使用`fix`函数将浮点数截断为整数部分,使用`ceil`函数将浮点数向上取整,使用`floor`函数将浮点数向下取整。 4. 浮点数比较:使用`isequal`函数可以判断两个浮点数是否相等,通过设定一个相对误差的阈值可以避免由于浮点数运算引起的舍入误差。 5. 浮点数运算:你可以使用`plus`函数进行浮点数加法运算,使用`minus`函数进行浮点数减法运算,使用`times`函数进行浮点数乘法运算,使用`rdivide`函数进行浮点数除法运算。 总之,Matlab中的IEEE 754函数提供了一组方便的工具,用于在浮点数计算中处理浮点数格式转换、分类、舍入、比较和运算等操作。这些函数可以帮助你更好地处理和操作浮点数数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值