西门子16进制运算(一文解释西门子大小字节)

西门子在数据结构上和其他的PLC有所不同。称为大端(Big Endian)简而言之就是如果将MW100内写入16#FF00,那么MB100写入为16#FF、MB101写入16#00。

西门子16进制运算(一文解释西门子大小字节)(1)

MW100展开MB100和MB101

那MD200从高字节到低字节展开为MW200、MW202。MB200、MB201、MB202、MB203

西门子16进制运算(一文解释西门子大小字节)(2)

如图所示:MD200为16#0EFF_0FEE。则MB200:16#0E、MB201:16#FF

MB202:16#0F、MB203:16#EE

西门子16进制运算(一文解释西门子大小字节)(3)

所以根据上述图文描述,对于我们日常解析word类型或者DWord类型我们就可以清晰的了解到对应的Byte的类型的内容。

有上述内容铺垫后理解进制关系就会容易一些,下面来解释一下16进制和十进制的关系。

西门子16进制运算(一文解释西门子大小字节)(4)

MW100等于MW120

如上图,MW100等于MW120。而MW100等于2048,其实就是MW100的第11位为ture.

MB100的第3位为1。正如注释里描述的每个位对应的都是一个数值。那么MW100的值就是由这16个位的Ture和False来决定的。

西门子16进制运算(一文解释西门子大小字节)(5)

MW120显示为16进制

同样MW120显示为16#0800。也同样标识了,MB100的第三位为1。那么如何解释MW100的值是用16#0800来表示呢?

是因为16#内最大的值为16,再大就要进一位了。同时依照图片中的注释可以看到,一个Byte内,前4位就已经可以表达16了。所以MW100就需要4个值来表达。

则16#0800.中的第一个0表示为:MB100的高字节4位。第二个8表示为:MB100的低字节4位。第三个0表示为:MB101的高字节的4位。第四个0表示为:MB101的低字节的4位。

同理MD200用16进制表示为:16#0000_0000、16#FFFF_FFFF.

上述就是我给大家展示的高低字节、以及16进制和10进制的转换关系,以及实际对应关系。建议大家实际在TIA中自己实际操作一下,就会理解更深刻。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页