FX1N 浮点数如何转换成正整数 点击:4393 | 回复:10



李工来了

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:7帖 | 9回
  • 年度积分:0
  • 历史总积分:52
  • 注册:2005年12月08日
发表于:2013-06-11 00:24:52
楼主

我在FX1N 中定义了一个浮点数 例如1234.5 .

请问如何把它转换成12345.

就是把那个小数点去掉。

谢谢各位啦。




simonwu675

  • 精华:0帖
  • 求助:3帖
  • 帖子:11帖 | 794回
  • 年度积分:0
  • 历史总积分:2856
  • 注册:2009年11月23日
发表于:2013-06-11 09:20:03
1楼

剩于一个系数了,10,100之类的

ac米兰

  • 精华:4帖
  • 求助:0帖
  • 帖子:228帖 | 12359回
  • 年度积分:2963
  • 历史总积分:29795
  • 注册:2004年4月26日
发表于:2013-06-11 10:20:44
2楼

正常FX1N是不支持浮点运算的

passray

  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 39回
  • 年度积分:0
  • 历史总积分:29
  • 注册:2009年8月29日
发表于:2013-06-11 11:15:20
3楼

1N只能舍去小数哦!

李工来了

  • 精华:0帖
  • 求助:1帖
  • 帖子:7帖 | 9回
  • 年度积分:0
  • 历史总积分:52
  • 注册:2005年12月08日
发表于:2013-06-12 00:03:04
4楼

回复内容:

对: passray  1N只能舍去小数哦! 内容的回复!


 我用GX Developer 的软原件监控功能

然后登录一个D0 。 值定义:10进制显示。显示定义:实数。如图1:

然后给D0 强制赋值12345.6这样一个浮点数。如图2

在监控页面中可以正常显示D0 的值是我所强制赋值的12345.6

根据FX2n 对浮点数的处理规则,D0里面存的是整数部分,D1是小数点的位置

然后分别查看D0 , D1的值却。。。。。。。晕了。图3

我的理解是FX1N可以保存浮点数,如果按照2N的浮点规则,我可以通过与,或,移位(1n不支持啦,只好用乘除)的方式把D0的12345.6.转换成16位的正整数123456.

现在问题来了,观察了N个浮点数以后,并没有发现类似2N中的浮点数保存规则。

同样的小数位(1位小数),不同的数值。在16位整数的状态下观察D0  D1的值都没有什么规律可言。

求高人指教

.

 

 

鲁庄

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 132回
  • 年度积分:0
  • 历史总积分:109
  • 注册:2010年10月08日
发表于:2013-06-13 10:17:24
5楼

编程时把1234.5写成12345,运算完成后在除10.

lingf454

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 115回
  • 年度积分:0
  • 历史总积分:1345
  • 注册:2009年12月04日
发表于:2013-11-25 14:57:10
6楼

正常情况下,FX1N是没有浮点数

qingwu2

  • 精华:0帖
  • 求助:3帖
  • 帖子:3帖 | 20回
  • 年度积分:0
  • 历史总积分:60
  • 注册:2011年11月11日
发表于:2013-11-25 19:08:30
7楼

FX1N不支持浮点运算

ljbcompany

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 1289回
  • 年度积分:0
  • 历史总积分:5847
  • 注册:2011年4月24日
发表于:2013-11-26 13:44:09
8楼

你需要确认FX1N是否支持真小数点?!如果是假小数点,监控一下相应的寄存器;就知道了,另外转换指令是(D)INT。

jiming_1

  • 精华:0帖
  • 求助:1帖
  • 帖子:12帖 | 44回
  • 年度积分:0
  • 历史总积分:208
  • 注册:2010年4月02日
发表于:2015-06-13 16:42:16
9楼

FX1N是肯定不支持浮点数运算的,

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 2121回
  • 年度积分:0
  • 历史总积分:51
  • 注册:2007年10月31日
发表于:2016-03-01 15:16:43
10楼

1N只能舍去小数哦!


热门招聘
相关主题

官方公众号

智造工程师