- 主题:matlab半精度浮点数问题
用如下代码看MATLAB的半精度数据情况。
format long
a=1.234567890123456789
b=single(a)
c=half(a)
运行结果为:
a=1.234567890123457
b=1.2345679
c= 1.2343750
a和b的结果都符合双精度和单精度有效位的预期,但c的结果为什么也有8位。
half的有效位不是只有3位吗?还是MATLAB对half数据的运算不严格?
--
FROM 183.222.201.*
Matlab原生没有半精度
--
FROM 118.212.216.*
PC的处理器都没有原生半精度,都是软件仿真的。
【 在 mazz 的大作中提到: 】
: Matlab原生没有半精度
--
FROM 183.222.201.*
X86 有的,float16
【 在 Peugeot888 的大作中提到: 】
: PC的处理器都没有原生半精度,都是软件仿真的。
:
:
--
FROM 111.183.115.*
另外 c 的小数位数只有五位(0.11001),你混淆了显示和精度。
【 在 Peugeot888 的大作中提到: 】
: 用如下代码看MATLAB的半精度数据情况。
: format long
: a=1.234567890123456789
: ...................
--
FROM 111.183.115.*