为什么matlab使用log2函数返回-Inf?

为什么matlab使用log2函数返回-Inf?,matlab,type-conversion,Matlab,Type Conversion,我在计算 info = log2(double(1/prob)) 在matlab中,但当我尝试打印结果时,它显示-Inf prob是一个uint8变量 它如何解决这个问题呢?如果你把1除以另一个整数,肯定会得到零。。把它转换成对数,就得到了观测到的结果。。。您需要在除法之前转换为浮点,例如 info = log2( 1./double(prob) ) 如果将1除以另一个整数,则肯定会得到零。。把它转换成对数,就得到了观测到的结果。。。您需要在除法之前转换为浮点,例如 info = log2(

我在计算

info = log2(double(1/prob))
在matlab中,但当我尝试打印结果时,它显示-Inf

prob是一个uint8变量

它如何解决这个问题呢?

如果你把1除以另一个整数,肯定会得到零。。把它转换成对数,就得到了观测到的结果。。。您需要在除法之前转换为浮点,例如

info = log2( 1./double(prob) )
如果将1除以另一个整数,则肯定会得到零。。把它转换成对数,就得到了观测到的结果。。。您需要在除法之前转换为浮点,例如

info = log2( 1./double(prob) )