[image]5 十二进制转十进制或六十二进制转十进制里面最先和最后的数字是什么数?

问答题简答题将下列二进制数转换为十六进制数和十进制数1111。

三菱中你要传十进制加K  十六进制加H

说了半天没有一个人说到问题目的关键所在,从事三菱PLC操作的人当然都知道K是十进制,H是十六进制,算人人都会算

如果把存储器D0的十进制数据转换成十六进制数存在D10里面,这种程序要怎么写呢?D0的数据可以是任意在外部输入设备上修改的.常量控制我想做控制的没以有人愿意玩!!!

有道理,参于PLC而言,都一样的---二进制,不是0就是1。

只是人看的方法不一样。

楼上各位都可能没有理解Wbjiarul想要表达的意思.这么说吧,比如在用三菱的FX系列的PLC,使用RS自由协议通信时,是以十六进制的方式预先在寄存器中存放好要发送的内容,例如想把十进制100的值转为十六进制预先放在D22中,即MOV H64 D22.这个H64通过工人查表或者人工计算很容易得到,但WBJIARU同志想知道用PLC指令如何把100这个十进制数转为H64.应当是这个意思了.

如果用SIEMENS的PLC来通信就不存在这方面的问题了.呵呵

存储器D0的十进制数据转换成十六进制数存在D10里面

-----------------------------------------------------------

有这个必要吗?本来就是可以为十进制或十六进制的。。。。

7.1.4 十进制数转换成二、十六进制数
口诀:除N取余,逆序排列。
口诀::找大位,定高位,依次除权,取商用余。
当把一个十进制数转换为二,十六进制数时,首先找大位,定高位,这里大位和高位均指二,十六进制的位权值。大位和高位必须符合条件:大位﹥十进制数﹥高位。定下高位后,从高位开始进行转换。下面我们用实例来对“依次除权,取商用余”进行说明。
【例5】K 200=B?首先,我们要写出二进制的位权表,如表7-1-2所示:
表7-1-2 二进制的位权表

西门子200用MAG指令也有这样的问题

对:老菜鸟 关于内容的回复:


存储器D0的十进制数据转换成十六进制数存在D10里面

-----------------------------------------------------------

有这个必要吗?本来就是可以为十进制或十六进制的。。。。

楼上各位都可能没有理解Wbjiarul想要表达的意思.这么说吧,比如在用三菱的FX系列的PLC,使用RS自由协议通信时,是以十六进制的方式预先在寄存器中存放好要发送的内容,例如想把十进制100的值转为十六进制预先放在D22中,即MOV H64 D22.这个H64通过工人查表或者人工计算很容易得到,但WBJIARU同志想知道用PLC指令如何把100这个十进制数转为H64.应当是这个意思了.

如果用SIEMENS的PLC来通信就不存在这方面的问题了.呵呵 西门子200控制器用MAG指令也存在这样的问题



引用海盗1900 的回复内容:

西门子200用MAG指令也有这样的问题

对:老菜鸟 关于内容的回复:


存储器D0的十进制数据转换成十六进制数存在D10里面

-----------------------------------------------------------

有这个必要吗?本来就是可以为十进制或十六进制的。。。。


只有BIN或者BCD 才行。转化一下试。

刚做触摸屏时,也遇到过这个问题。

未知楼主要的是视觉效果还是编码效果?

视觉效果的话你在显示的时候选择正确就可以了。

编码效果的话,用bcd转换逆转换指令可以两边转。

ORACLE使用函数对二进制、十进制、十六进制数互相转换

1.将十进制的数转换为十六进制的数请使用to_char函数。

中16进制的表达是按照字符串来描述的,所以将十进制的数转换为十六进制的数使用to_char函数

2.将十六进制的数转换为十进制的数请使用to_number函数。

如下,16进制A是10.2A是2*16+A=42.注意xxx,如果转换的数比较大,要多写几个,避免位数不足而报错。

ORACLE未提供二进制与十进制互转的函数,可以自己创建。以下十进制与二进制转换脚本引自惜纷飞博客,感谢!

3.十进制转换二进制--使用自定义函数

4.二进制转换十进制--使用自定义函数

5.关于创建公有同义词解决其它用户引用当前用户的定义函数的问题:

当前BYS用户为DBA用户,其它用户默认无法使用当前用户的自定义函数。

可以将自定义函数的执行权限授予PUBLIC用户,并创建公有同义词。这样其它用户就可以通过引用公有同义词来使用新建的自定义函数了。

创建公有同义词--先不将函数执行权限授予PUBLIC,此时从其它用户使用函数报错。

将函数执行权限授予PUBLIC,此时从其它用户可以正常使用函数。

对于bit_to_number函数,先将函数执行权限授予PUBLIC,但是并未创建同义词。此时使用其它用户执行函数报错

此时对函数创建公有同义词,使用其它用户可以正常执行函数。

6.二进制与十六进制的转换

因为没有直接的函数,但是结合以上的十进制转二进制与十进制转十六进制函数,可以通过函数嵌套来实现二进制与十六进制的转换。

即先使用二进制与十进制的转换,再将转换成的十进制做为参数转换为十六进制。

下面语句得出16进制数11,换算成十进制是17,转换正确完成。

7.十六进制与二进制的转换

下面语句可以将16进制转成二进制,与上面语句对比,转换结果正确。

功能: 将由string表示的二进制数值转换为一个RAW数值. String应该包含一个十六进制的数值. String中的每两个字符表示了结果RAW中的一个字节..HEXTORAW和RAWTOHEX为相反的两个函数.

使用位置: 过程性语言和SQL语句。 

功能: 将RAW类数值rawvalue转换为一个相应的十六进制表示的字符串. rawvalue中的每个字节都被转换为一个双字节的字符串. RAWTOHEX和HEXTORAW是两个相反的函数.

使用位置: 过程性语言和SQL语句。

功能: 将RAW类型值rawvalue转换为一个十六进制表示的字符串。rawvalue中的每个字节转换为一个双字符的字符串。RAWTONHEX返回值是NVARCHAR2类型而不是VARCHAR2类型。

使用位置: 过程性语言和SQL语句。

我要回帖

更多关于 十进制 的文章

 

随机推荐