BCD码转换成整数指令 请教大神,我又来提问了

BCD码转换成整数,视频讲解员强制赋值 IW0    为2#1001 0001 0001 0000   ,  左边显示是-28400  ,   这是二进制原码2#1001 0001 0001 0000 转换成有符号整数就是-28400  ,也可以说是二进制原码的有符号整数显示格式是-28400??     这已经是BCD码转换成整数-28400了,我这样理解不对吧???       再说VW200应该存放整数,  BCD转换成整数嘛, 而VW200显示的是9110  ,   这个9110是整数???     不就是对着BCD码表来的吗,1001(对应9)   0001(对应1)   0000(对应0)   所以也就是9110,这也没有转换啊,就是对表啊。
我的疑问是:这个指令是具体详细转换的,  IW0  2#1001 0001 0001 0000 是如何转换成整数的,为什么左边显示是二进制码转换成有符号整数-28400,二进制如何转换成 有符号整数-28400我知道,但是为什么显示左边 -28400  。 VW200是如何得到的,9110是整数? 这个指令在实际工作中的例子有哪些?    在哪里有没有比较基础详细的讲解材料?

图片说明:

BCD码转换成整数指令    请教大神,我又来提问了   

最佳答案

1、先解释 IW0 为2#1001 0001 0001 0000,左边为什么显示是 -28400;
这个16位的二进制码的最左边的位是它的最高位,如果将这串码看成无符号整数,则最高位为符号位;
当此位为 0 时表示此数是正数,而当此位为 1 时表示此数是一个负数,负数在PLC系统中都是用补码来表示的的;
正整数,直接用二进制和种位乘以位权并相加换算就可以得到其真实的值。
负整数是用补码表示的,其表示的负整数的大小要用下面的方法换算才能得到:
A   先将 IW0  2#1001 0001 0001 0000 按位取反
B   按位取反的结果 +1
C   将得到的二进制码的各位*其位权并相加得到一个十进制数
D   将得到的十进制数的最前面加上负号;

以  2#1001 0001 0001 0000 为例
A   取反
得  2#0110 1110  1110 1111
B   加 1
得  2#0110  1110  1111 0000
C   将上一行的二进制码转换成十进制,则为 28400;
D   加上负号则为 -28400;
2、
BCD 码没有符号位的概念,是每四位二进制码表示一个BCD码,而且对每四位二进制码的取值范围也有要求,范围就是 0000  到1001,即十进制的 0-9。
转换就和 WWCWWC大侠说的方法一样,在此不多解释。
3、在S7-200中,字节、字、双字都可以按照无符号、有符号整数来查看,也可以用二进制、十六进制查看,用状态表比较方便。
4、参考资料
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-portal/MicroPower2013/s7-200/programming/basic/data_format.htm
5、请加强一下数制方面的知识,网上资料很多,动手转换一下,加深理解。

提问者对于答案的评价:
OK ,谢谢啦,我先从比较基础的看起

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc361646.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午11:59
下一篇 2021年7月5日 上午11:59

相关推荐

  • 热电偶与热电阻问题求助。

    1.热电偶输出的是毫伏的电压信号是吧?输出的是多少毫伏到多少毫伏的的电压信号??K型热电偶的量程是0到多少度? 2.热电阻输出的是毫安的电流信号是吧?输出的是多少毫安到多…

    SIMATIC S7-200 2021年7月5日
  • 西门子S7-200的PLC选型问题

    需求就是用西门子的PLC和西门子5.7寸触摸屏,I/O 输入点48个,I/O输出点12个,温度输入点4个,看着手册头脑发昏,CPU226的AC/DC/DC和DC/DC/D…

    SIMATIC S7-200 2021年7月5日
  • STEP7 step7 microwin SMART重装

    STEP7 step7 microwin SMART原来的SMART2.2版本卸载后,想要安装SMART2.3,结果显示;系统未被修改,若要安装此程序…

    2021年7月5日
  • pid几个问题

    1、直接使用 PID 指令块编写 PID 控制程序时,可以简单地使用“调用/不调用“来实现自动/手动模式,那采用PID向导生成的程序,也可以…

    SIMATIC S7-200 2021年7月5日
  • 西门子V4.0无法安装

    V4.0安装没有成功,卸载又无法卸载,显示有些文件找不到。V3.2-SP4是可以安装的,是不是要重装系统啊?请大家帮帮忙 最佳答案 STEP 7-Micro/WIN&nb…

    SIMATIC S7-200 2021年7月5日
  • 200plc存储卡的讨论

    手头有一款224cn的200plc,我做实验时把数据依次存在了vw100、vw102直到vw4000,但是由于手头没有授权的上位机软件,现在想通过购买一块plc存储卡,通过数据归档…

    2021年7月5日
  • S7 200 CPU224.

    我想做个PID速度闭环控制.做了测速度程序.作为过程反馈.设定值范围是0-6000.用向导做该怎么配置.模拟量输出0-10V模块控制变频器. 问题补充:就是设定值是0-6000,而…

    SIMATIC S7-200 2021年7月4日
  • s7-200 cpu224XP 做主站与从站?

    s7-200 cpu224XP 的PORT0用modbus实现和变频器之间的通信,做主站,用PORT1和PC之间用PPI协议,PLC做从站,没有使用任何通讯模块…

    SIMATIC S7-200 2021年7月5日
  • 高速计数器之前已经执行过HSC指令,现在需要重新预置值,再次执行HSC指令,预置值能更新吗?

    意思就是没用停止计数器,就直接再次启动,能达到更新预置值得效果吗?另外,更新预置值,和再次执行HSC指令的程序不是在中断程序里,这样没问题吧.还有不用中断,普通的比较指令和高速计数…

    SIMATIC S7-200 2017年6月10日
  • s7-200cn 4级密码

    在s7-200cn设置 4级密码时,提示不能在运行中监控 ,这样的话是否能用触摸屏? 最佳答案 四级密码只是阻止任何程序上载,不准许进行程序监控,运行模式编辑和…

    SIMATIC S7-200 2020年10月31日

发表回复

登录后才能评论