|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 wslaoa 于 2011-10-8 18:39 编辑
7 W% S* r. t5 I
/ c6 @. P9 F6 g2 ^" X* q& w读小鱼(王工)四点碰数程序读后感
2 F4 `! J2 A9 A F7 @! M8 O: s 昨晚,读到若枫论坛上一篇关于自动分中的宏程序,看了半天,没看明白,想放弃,但看到作者宏程序格式书写规范,注释写的完善,感觉作者绝非庸手,就制成pdf保存下来。4 `6 O: y( q; q
今天,闲来无事打开分析,渐渐看出来门道来。
' n' @# a/ A1 ?5 p 一般来说,常用的分中建坐标系不外乎作者罗列的三类九种:第一类四边分中(XY双边分中,碰四次);第二类是一对边分中再加另一边(X边分中加一Y边和Y边分中加一X边,碰三下);第三类一角(打XY单边,碰两次)如表所示:
; e/ Y2 s: m% M, _3 n0 J8 k
' q2 u0 u, J7 {& Y% S# v- b 如果选四边,需要碰四点,如果选一角需要碰两点,你不能多碰也不能少碰,另外还必须将探头自动移到你需要碰数的地方,否则就不叫自动碰数了,你该怎么实现呢?
! |/ ^8 c8 p6 T 作者用了我们(至少是我)很少用的功能AND(与运算),看了作者的程序后,我急忙翻起课本,复习了AND的知识点(1+1=1;1+0=0;0+0=0相当于串联开关,进行与运算时,先转化为相应的二进制数,然后从低位往高位逐个按上述规则进行运算;转化为二进制,位数不同时低位者向高位加0,如10010和1011进行与运算先把1011补位变成01011然后一位一位进行运算)后才恍然大悟:作者巧思构想,用1,2,4,8和对应的数进行与运算。我们只要把这四个数转换为二进制就可以理解作者的独具匠心了:1----1;2----10;4----100;8----1000;也就是说根据上述AND的用法,我们任选一个数如10,它的二进制是1010,。让它和8进行与运算10 AND 8 ,它的结果是多少呢?3 z! N: c0 Q7 [8 ?- V
s5 F. m0 A3 i/ s a$ A$ j0 b 不知诸位发现了没有,任何数和8进行AND运算,都只需考虑第四位即可,结果要么是1000(十进制8),要么是0。 1,2,4也同样。如果理解了这一点,整个程序就可以迎刃而解了。比如选上表中的第三类一角(X-,Y-)模式,按作者X-(1判别),Y-(2判别),Y+(4判别),Y-(8判别)碰就可以得到这样一个结果1,1,0 ,0(其中1代表需要碰;0代表不需要碰),按二进制从高位往低位排列就是0011,对应十进制就是3,其他依次类推就知道作者#14取那些数的良苦用心了。" `5 {. i, M; R6 j' }2 H
附表:
+ T7 o; m; A" w* A
# l0 n4 `3 o7 |1 ^9 m6 i
伟哉!作者,我本来以为自己在宏程序上小有所成,现在看来是多么浅陋无知。得知这只是碰数程序中的一部分而已(还有五点碰数)我顿时佩服的五体投地。后来听说有个培训班是他在讲宏程序我就毅然报名参加了。
% m. X% H5 R$ S1 j& N0 W! Q T, o 作者给我们打开了一扇窗,让我们触摸到了宏的强大。愿作者将自己的心血多传授大家,以让全国各地的机床更加智能起来!
6 y/ A$ H: P1 B- |- P (附:作者是小鱼老师,小鱼老师的程序博大精深,有歪解小鱼老师原意的,希望请小鱼老师原谅。 程序源代码见前面 小鱼老师的帖子找正坐标宏程序)- h; ?+ J# [+ x) x
星期八. k, g% r# a O% c4 _" O5 n
10月8日凌晨2点 |
评分
-
查看全部评分
|