单片机一般浮点数均选用士MxC的办法来表明,其间M称为尾数。它一般取为小数0≤M
浮点数也有各式各样表明有符号数的办法,其间数的符号常和尾数放在一同,即把士M作为一个有符号的小数,它能够选用原码、补码等各种表明办法,而阶码可选用各种不同的长度,而且数的符号也能够放于各种不同的当地。所以浮点数有许多的表明办法。
四字节浮点数表明法是微机中常用的一种表明办法。浮点数总长度是32位,其间阶码8位,尾数是24位。阶码和尾数均为2的补码办法。阶码的最大值位+127,最小值-128,这样四字节浮点数能表明的最大值近似于l×2(的127次方)=l70×l0(的38次方),能表明的最小值近似为0.5×2(的-128次方)=1.47×10(的-39次方),这时该规模内的数具有相同的精度。
四字节的浮点数精度较高,挨近7位十进制数,可是因为字节较多,运算速度较慢,往往不能满意实时操控和丈量的需求,而且实践使用时所需的精度一般不要求这么高,三字节浮点数就满意了这个要求,精度较低,但运算速度较高。浮点数总长为24位,其间阶码为7位,数符在阶码地点字节的最高位,尾数为16位,这种表明法运算速度较快需求的存储容量较小,而且数的规模和精度能满意大多数使用场合的需求。下面的程序根本都选用这种表明办法。
规格化浮点数,在实践使用中,需求有一个程序来完结把一个非规格化数变规格化数的操作。在进行规格化操作时,对原码表明的数,一般是先判别尾数的最高位数值位是0仍是1。如果是0则把尾数左移l位,阶码减1再循环判别,如果是1,则完毕操作。因为零无法规格化,一旦尾数为0,则把阶码置为最小值。如果在规格化中,阶码减1变成最小值时,不能再继续进行规格化操作,不然产生阶码下溢出,一般称之为左规格化操作。