找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 3257|回复: 6

请教,“#101=#1032AND255.0”语句的作用是什么?

[复制链接]
发表于 2015-6-23 21:55:21 | 显示全部楼层 |阅读模式
本帖最后由 耶稣爱子 于 2015-6-24 06:24 编辑 * P6 J+ a8 \' Q& C) @

1 E$ _/ K5 D+ D: r7 F9 z在#1032等于1至5的情况下,“#101=#1032AND255.0”语句的作用是什么?等效“#101=#1032”吗?' c; x+ G1 s: W7 }) N0 i

$ A5 v- P3 `$ w/ t) P" q, Q. f6 k
回复

使用道具 举报

发表于 2015-6-23 23:45:10 | 显示全部楼层
这个不相等的,属于逻辑运算,一般情况下不建议使用逻辑运算。主要是逻辑运算的返回值是二进制,用不好也不好用

评分

参与人数 1威望 +1 收起 理由
耶稣爱子 + 1 热心助人,专业精湛!

查看全部评分

 楼主| 发表于 2015-6-24 06:14:41 | 显示全部楼层
冷月梧桐 发表于 2015-6-23 23:45 * M3 g* y- Q5 S) C5 I
这个不相等的,属于逻辑运算,一般情况下不建议使用逻辑运算。主要是逻辑运算的返回值是二进制,用不好也不 ...

- ~; D! ?1 c% Y) R& G望大侠详解,我看就是将#1032的值赋给#101了,看不出两者的差异,
) T6 R. x" c( V" u
发表于 2015-6-24 06:15:42 | 显示全部楼层
#1032和225.0的值都是1的情况下,#101=1,其余情况#101=0

评分

参与人数 1威望 +1 收起 理由
耶稣爱子 + 1 热心助人,专业精湛!

查看全部评分

 楼主| 发表于 2015-6-24 06:21:23 | 显示全部楼层
是这样吗?不是二进制一位一位的比较吗?
发表于 2015-6-24 07:15:19 | 显示全部楼层
本帖最后由 门童 于 2015-6-24 07:31 编辑 $ v+ a# F9 Q% Q* Q9 s
4 h" _; @. Q: d$ e# n& z7 e! ~" N
这个不等效的,前者把低8位(一个字节)的值赋给#101,后者把全部值赋给#101,如果#1032的值总是小于等于255,则两者等效,若大于则不等效,前者可以认为是#1032对256求余,后者楼主你懂的;从逻辑运算的角度看,”位与”255(11111111),则不管#1032高于8位的数是1还是0,结果都是0,从低8位看,由于255都是1,所以位与结果#1032的低8位相应的值是什么就是什么!举个例子#1032=256(1 0000 0000)&255(0 1111 1111)=0
6 N8 u0 B' e) |7 ^8 k3 {7 K. [; ~#1032=7(0000 0111)&255(1111 1111)=7(111)7 q. T" X1 c* O+ ]# @- y
#1032=258(1 0000 0010)&255(0 1111 1111)=2(10)

评分

参与人数 1威望 +1 收起 理由
耶稣爱子 + 1 热心助人,专业精湛!

查看全部评分

发表于 2015-8-12 20:25:41 | 显示全部楼层
其实这是个标准化的机床宏程序语句,#1032在FUNUC系统是读取机床当前的系统宏状态,一般用在读取当前的刀号,语言是2进制的,现在机床系统有的是8位有的是16位甚至有的是32位,机床的刀具数量一般是几十把,当#1032的值和255作逻辑运算时,大于256的数都舍去只留下小于255的余数,结果也是这个余数,用255是看刀库刀具数量,如果少于60把时用255和用63结果一样,用255说明机床是8位的16位的一般用511。

点评

大侠高手  发表于 2015-8-18 19:35

评分

参与人数 1威望 +1 收起 理由
耶稣爱子 + 1 热心助人,专业精湛!

查看全部评分

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-9-20 05:29 , Processed in 0.071459 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表