首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

关于定点和浮点?解决方法

2012-02-10 
关于定点和浮点?定点和浮点有什么区别?在一个特殊应用中只能用定点,那么如何进行定点与浮点的转化?怎么用

关于定点和浮点?
定点和浮点有什么区别?
在一个特殊应用中只能用定点,那么如何进行定点与浮点的转化?
怎么用定点表示小数?

[解决办法]
编程领域中没有所谓的顶点,浮点特指带小数的数,实际上包括整数,说的是存储格式,和整型数(而不是定点数)对应

要想实现顶点,只能自己实现一个数字类,实现其加减乘除,实现方法和我们小学学的多位数加减乘除一样
[解决办法]

C/C++ code
看一下组成原理中数的表示:定点数:定点小数,定点整数,浮点数;
[解决办法]
定点表示浮点的方法一般是有两种方法, 一种是将一个微小的浮点,比如0.1作为一个单位位, 那么 一个lONG型树, 1000000则实际代表100000, 那么 0.5 + 0.6, 则最后可以表示为 LONG(5 + 6) * 0.1, 以此类推. 第二种是用两个long 型表示一个浮点, 比如 0.1 可以表示成 1/ 10, 0.3333则为 1 / 3. 两种不同的方法应用的领域不同, 在一些嵌入式中, 浮点转定点, 定点转浮点, 是非常普遍. 因为一个浮点加法一般是整形加法所耗时的12倍. 

还是一种比较怪异, 在fft中应用较多, 就是用一个整形去模一个非常大的素数带完成浮点的运算, 这个难度较高, 属于数论范畴

PS: to, dizuo cppnumeric马上就要引入浮点转定点的运算方法了:)
[解决办法]
现在的记数大多是用浮点数,定点数就是小数点的位置确定.
浮点数的小数点的小数点是的变化的
[解决办法]
这些都是数的存储格式,属于计算机组成原理里讨论的问题。
三、定点数与浮点数
1、定点数:
定点数指小数点在数中的位置是固定不变的,通常有定点整数和定点小数。在对小数点位置作出选择之后,运算中的所有数均应统一为定点整数或定点小数,在运算中不再考虑小数问题。
(1)定义:数据中小数点位置固定不变的数
(2)种类:定点整数
(3)小数点在符号位与有效位之间。
注:定点数受字长的限制,超出范围会有溢出。
2、浮点数:
浮点数中小数点的位置是不固定的,用阶码和尾数来表示。通常尾数为纯小数,阶码为整数,尾数和阶码均为带符号数。尾数的符号表示数的正负;阶码的符号则表明小数点的实际位置。
(1)形式:N=M×2E
(2)M:尾数
(3)E:阶码
(4)在计算机中M和E表示形式为
阶码 尾数符号 尾数
将其与数学中的科学记数法进行比较。
注:其浮点数的精度由尾数决定,数的表示范围由阶码决定。
3、定点数与浮点数区别
定点表示法运算直观,但数的表示范围较小,不同的数运算时要考虑比例因子的选取,以防止溢出。浮点表示法运算时可以不考虑溢出,但浮点运算,编程较难。要掌握定、浮点数的转换方法及浮点数规格化方法。

热点排行