verilog 浮点数转定点数_FPGA浮点数定点数的处理

http://blog.chinaaet.com/justlxy/p/5100053166大佬博客,讲的非常有条理的

1,基础知识

(1)定点数的基础认知:

首先例如一个16位的数表示的定点数的范围是:(MAX:16‘d32767 MIN: -32767#2^15-1#’)最高位符号位,三位整数位,其余的12位是小数位的话,那么

它的精度有小数部分决定:1/4096=0.0244140625

可表示数的范围为:(0.0244140625*4095)=0.999755859375,然后加上整数的最大表示值7,即极限最大值为7.999755859375。

(2)浮点数的认知

浮点数就是指整数和小数位数不确定的数字的表达,实际上采用的就是咱们常用的科学计数法。如1.23*10^2采用的是基数(10),指数(2),尾数(1.23)以及一个符号位来表示。这里实际上是采用指数方法实现了小数点的浮动。

在 IEEE 标准中,浮点数是将特定长度的连续字节的所有二进制位分割为特定宽度的符号域,指数域和尾数域三个域,其中保存的值分别用于表示给定二进制浮点数中的符号,指数和尾数。这样,通过尾数和可以调节的指数(所以称为"浮点")就可以表达给定的数值了。具体的格式参见下面的图例:

上图中可以看出S表示符号位,EXponent表示指数位,也就是“浮动”的指数位&#x

你可能感兴趣的:(verilog,浮点数转定点数)