excel输入邮编的邮编列中包含了111111或666666这样的字符串,如何能快速的定位处理

C51里用4字节存储一个浮点数格式遵循IEEE-754标准(详见c51.pdf第179页说明)。一个浮点数用两个部分表示尾数和2的幂,尾数代表浮点上的实际二进制数2的幂代表指数,指数的保存形式是┅个0到255的8位值指数的实际值是保存值(0到255)减去127,一个范围在-127到+128之间的值,尾数是一个24位值(代表大约7个十进制数)最高位MSB通常是1,因此不保存一个符号位表示浮点数是正或负。


浮点数保存的字节格式如下:
S 代表符号位1是负,0是正
M 24位的尾数保存在23位中只存储23位,最高位固定為1此方法用最较少的位数实现了较高的有效位数,提高了精度

零是一个特定值,幂是0 尾数也是0

浮点数-12.5作为一个十六进制数0xC1480000保存在存儲区中,这个值如下:

浮点数和十六进制等效保存值之间的转换相当简单下面的例子说明上面的值-12.5如何转换。


浮点保存值不是一个直接嘚格式要转换为一个浮点数,位必须按上面的浮点数保存格式表所列的那样分开例如:

从这个例子可以得到下面的信息:

在尾数的左邊有一个省略的小数点和1,这个1在浮点数的保存中经常省略,加上一个1和小数点到尾数的开头,得到尾数值如下:

接着,根据指数调整尾数.一个负的指数向左移动小数点.一个正的指数向右移动小数点.因为指数是3,尾数调整如下:


0

    8051没有包含捕获浮点数错误的中断向量,因此你的软件必须正確响应这些错误情况。

我要回帖

更多关于 excel输入邮编 的文章

 

随机推荐