将十进制浮点数123.4变成如附图所示的数据格式应该怎么办呢

[复制链接]
3187|5
 楼主| ccjchen 发表于 2007-5-30 09:34 | 显示全部楼层 |阅读模式
请问各位大虾在单片机C语言中运用表达式d=3500*r/(3500-r)运算出来的十进制浮点数结果比如123.4变换成如附图所示的数据格式应该怎么办呢?也就是要把123.4这个浮点数变成   
D9 D8 D7 D6 D5 D4 D3 D2 D2      D1 D0  -   -   -  -  -  - 这样的格式应该怎么办呢?
computer00 发表于 2007-5-30 10:10 | 显示全部楼层

试试这样

unsigned short int x;

x=123.4*4;

Dh=x>>2; //D9-D2
Dl=x<<6; //D1-D0
 楼主| ccjchen 发表于 2007-5-30 11:03 | 显示全部楼层

大哥非常感谢您啊,不过你能不能说的详细一点啊!

有个地方有点不明白:
十进制的数也能用<<  >>这样的移位运算吗,若果是的话,<< 是否代乘   以 2 呢?
computer00 发表于 2007-5-30 11:25 | 显示全部楼层

当然。

 楼主| ccjchen 发表于 2007-5-30 13:37 | 显示全部楼层

万分感谢您的多次指导!

wlsui 发表于 2007-6-5 22:34 | 显示全部楼层

呵呵

*
您需要登录后才可以回帖 登录 | 注册

本版积分规则

175

主题

446

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部