三菱plc编程软件的数能不能定义成无符号数

三菱PLC FX2N编程元件与指令系统_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
文档贡献者贡献于
评价文档:
267页免费96页免费52页免费28页免费6页免费 26页免费103页2下载券89页免费84页2下载券73页1下载券
喜欢此文档的还喜欢249页1下载券73页1下载券81页1下载券38页1下载券38页1下载券
三菱PLC FX2N编程元件与指令系统|三​菱​P​L​C​ ​F​XN​编​程​元​件​与​指​令​系​统
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
大小:4.45MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢西门子PLC中无符号数和有符号数怎么定义的呢_百度知道
西门子PLC中无符号数和有符号数怎么定义的呢
还岘忿凰莜好冯瞳辅困比如一个内存中存了2#00 0001是代表-1,还是代表2^15+1,做计算的时候怎么使用
提问者采纳
单看内存中的数不能判断数的类型,你把这易偷稗簧织毫半桐报昆个数用在什么指令,这个数就被作为这个指令操作数的类型。需要补充的是,在S7-300中,如果你已经在变量表定义了这个变量,这个变量就只能用于与定义的类型相符的指令中。
提问者评价
太给力了,你的回答完美解决了我的问题!
其他类似问题
按默认排序
其他2条回答
W 和DW是无符的,INT和DINT是有符的,通常情况下word用于逻辑运算,int用于数学运算;
这种问题最好直接去翻书。而且我觉得PLC中你需要用到这些吗?
西门子plc的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
三菱PLC的内部结构.doc
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口文章数:11
年度积分:50
历史总积分:100
注册时间:
“使能有效时指令将整数值(IN)转换成双整数值,并将结果置入OUT指定的变量中。符号被扩展。”
其中“符号被扩展”是什么意思?
文章数:7113
年度积分:1376
历史总积分:15650
注册时间:
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
整数的最高位是符号位,整数是16位数据,因此第16位就是符号位。
双整数的最高位是符号位,双整数是32位数据,因此,当整数转换为双整数时,符号位由第16位被扩展到了第32位。
MSN:
此帐号男女混用,男的狂妄自大,女的谦虚好学……
衡量技术水平的唯一标准——你挣了多少
技术能力不是决定挣钱多少的关键因素,关键因素是做人的能力,这也就解决了为什么技
术水平很高却挣不多的原因。
如果整天想着别人“喂”你,这样的人都懒的理……
luosiji2012
文章数:125
年度积分:60
历史总积分:185
注册时间:
过来学习的 &我是新手 帮你定起来吧
文章数:11
年度积分:50
历史总积分:100
注册时间:
以下是引用cvlsam在 19:41:24的发言:
整数的最高位是符号位,整数是16位数据,因此第16位就是符号位。
双整数的最高位是符号位,双整数是32位数据,因此,当整数转换为双整数时,符号位由第16位被扩展到了第32位。
原来这就是“符号被扩展”。
文章数:11
年度积分:50
历史总积分:100
注册时间:
我之前看得有点晕晕的,又不理解“符号被扩展”是什么意思,后来就不管它了。自己就这样理解:对有符号来说符号位扩不扩展都是那个数。(即输入是什么数,转换后也是什么数,反正都不变,只是对无符号表示的时候就不同了)
工控学堂推荐视频:如何在PLC里将双字的十六进制数DW#16#D4DB71FB换成无符号的数
摘要: 如何在PLC里将双字的十六进制数DW#16#D4DB71FB换成无符号的数,正是目前PLC自身不能解决的问题,以西门子S7-200为例,该PLC内的存储器存储整数的最小单元为字节,2个字节组成一个字,2个字构成一个双字, ...
如何在里将双字的十六进制数DW#16#D4DB71FB换成无符号的数,正是目前PLC自身不能解决的问题,以西门子S7-200为例,该PLC内的存储器存储整数的最小单元为字节,2个字节组成一个字,2个字构成一个双字,双字即为PLC存储整数的最大的存储单元。PLC对字节定义为无符号数,即字节可传递显示16进制数0~FF(即10进制数0~255),而对于字与双子存储器定义为有符号数,即:其最高位定义为存储数的符号位,当最高位=0时表示为此数为正数,当最高位=1时表示此数为负数。如将16进制正数“16#9673”送入MW0,MW0的各位值为:11_0011,由于其最高位M0.7=1&,故在监视状态下,MW0显示的不是正数38755,而是负数-26781。见下图:
&&&&&&本来是正数存入存储器里,可是存储器显示的数却变成负数,如对次数进行加减乘除运算,也是按负数进行,这给数据监视及对数据计算整理带来极大的不便。
&&&&&&如何解决字与双字在存储的数其最高位=1时,在监视状态下能显示其正数值而不出现负数值呢?请见以下解析:
&&&&&&&1、对于最高位=1的字存储器,要使它不显示负数,可将它传递给双字存储器。用双字存储器显示其存数值即可解决显示正数值而不会显示负值。即:令该字的上一个字存储器=0,如:MW2&=&16#9763,可令MW0=0,监视MD0双字存储器,其MD0的显示值即为正数值,见下图中的MOV_DW的显示值。
&&&&&&&&&2、&&对于最高位=1的双字存储器,由于PLC无四字存储器,故不能采用上述1的方法来实现正数显示,但可以采用下面的思路编程来实现:
&&&&&&&&用二个存储器(一个双字与一个单字)分别显示该数的前后二部分数字:用双字存储器显示该数百位以上的部分数值,用单字存储器显示该书的十位与个位2为数值。将这二个存储器数字串联相接的数字,即为该数转换为10进制数的正数值。举例:一个16进制数转换为10进制数,将转换后的数的百位以上的数字部分送入双子存储器内,其值为:;而转换为10进制数的百位以下的数字部分送入单子存储器内,其值为:55。则该16进制数转换为10进制的数为:。
&&&&&&&&编程思路:1、将16进制的双字正数送入MD1,其MD0值=MD1数÷256(即16#100)。再将MD0÷100×256——&VD0,&则VD0值即为MD1÷100的整数部分,将它转换为10进制数送入VD0,则VD0就不会显示负值,而且此VD0值的最小单位值1为10进制数的百位数(即=100)。&MD0÷100的余数部分加上MD1的最低字节(MB4)值—&MW4,再进行这样整理:MW4-100&&&0&则VD0&+&1,直到MW4&&&100为止。此时的VD0值为原MD1数转换为10进制的百位以上的数字部分,而MW4值为原MD1数转换为10进制的百位以下的十位与个位的数字部分。
&&&&&&&&&将双字单元的16进制数转换为无符号的10进制数的程序
&&&&&&&下面是将双字的十六进制数&DW#16#D4DB71FB送入MD1,&按上面程序运行,在监视状态下,转换成无符号的正数(见网络6中的VD0与VW4),
&&&&&&&&&即:MD1&=&16#D4DB71FB&=&
&&&VD0*100+VW4=0+&55&=&
&&&&对于最高位=0的双字数,带入上程序,运行结果也是正确的,见下图:
&&&&&&&&即:MD1&=&16#74DB71FB&=&
&&&&&&VD0*100+VW4=0+19&=&
&&&&&对于最高位=0的数可不用运行上述编程,直接用MD1-&VD1,&其VD1即可在监控下显示10进制数值,故可将原网络6改为下面2条编程语句(见下图):在最高位=0时,其M1.7=0,故网络6运行,其VD1值即为10进制的转换值。在最高位=1时,其M1.7=1,故网络7运行,其VD0与VW4值串联相接值&即为10进制的转换值。
上一篇:下一篇:
( 渝ICP备号 )
Powered by &
这里是—这里可以学习—这里是!
栏目导航:

我要回帖

更多关于 npn型接近开关 的文章

 

随机推荐