|
|
馬上注冊,結交更多好友,享用更多功能,讓你輕松玩轉社區
您需要 登錄 才可以下載或查看,沒有賬號?立即注冊
×
大家一起來探討一下簡化編程。# i3 ?' Z5 y9 x/ U# \
例一:VC3=3040,我們怎樣來將3040分解為VC1=30、VC2=40呢?1 S9 u7 l' F' j P6 Y
方案一:
6 Y+ T. e" J+ l O99# M) {5 \; c8 r3 L
VC3=3040
* l* P3 U9 F+ v5 P AA=VC3/1003 F3 w9 _& L- L7 ?0 z+ i
AB=0- U$ b6 h- w. a) L/ b8 h
NA1
( r8 R& ?7 z4 V, c( w& fIF[AA LT 1]NA2* Z" }6 Y% R" h; \. ~
AA=AA-1: j% l: N' r6 S0 z6 S/ B, P
AB=AB+17 ^: C# k- G. E
GOTO NA1
$ T7 h# {* [1 H6 m* ZNA2/ L) r8 e1 I# }& t/ v
VC1=AB S. ^( b' p' W! e* [' e
VC2=AA*100
8 f6 T1 l/ C1 J4 { M307 Q+ p4 z/ g6 f. ~' D
上面程序適用在任何OKUMA機床,其優點就是程序移植性好,在任何OKUMA機床都可以正確的運行,缺點就是程序執行效率低,程序代碼長。
4 _: N5 }/ K7 U, N' G( g
$ D2 J- L8 [: s方案二:
8 L" l( M7 j- g) ~8 S# G O99
2 F' F% B- U' G2 s& b) X8 A0 A VC3=3040
: a$ C2 G2 g; K, i* Q1 I VC1=FIX[VC3/100]3 ]6 `5 ?3 A2 l; ?" v/ o
VC2=MOD[VC3,1000]2 y$ z1 R9 W u' r; \6 ?/ [0 H6 |! t
M30' n0 X4 R* F$ F
上面程序大家感覺是不是簡單多了,其優點就是程序代碼很短,并且程序的執行效率高,缺點就是在沒有函數功能的系統不能正常執行,現在沒有函數功能的機床已經很少了,所以大家在編程序的時候要了解機床所支持的功能,這一點是很重要的。7 H, j) \9 x* b& m3 Q6 R2 k6 ~% S
% ]! H% Z- K' V3 P1 O5 R2 l例二:當VC1=0時VC2=50;. J& u+ ]1 s- a5 E- o
當VC1=1時VC2=100;
5 @7 N; s, E% y. f2 U Z& r 前提是VC1=1或0,用程序怎樣來判斷呢?
7 V6 h0 m) G6 d* h, q* ^4 M) B
# O3 r- H* a2 N6 ]4 G* n# F方案一:- H) u) X( Z" S1 w
......0 X0 o# a5 m0 g" O$ W% Q( @4 C- x
VC2=505 u* C2 |; g* @- k+ r" t: I5 I
IF[VC1 EQ 0]NA1
4 {8 c' J$ J/ B8 {( JVC2=100) e0 B2 C4 p/ x' A# v, I
NA1
5 r8 H7 T" r$ e5 {......6 C- r; l5 l' j% }
上面程序邏輯思維簡單,容易理解,其缺點就是程序代碼長。% j* C6 l9 ^& f% _% n5 g' r
& d& B( J) B7 j9 L2 T- u! ~方案二:
5 c* _ C: `0 z) x ......7 e5 \6 Z/ U9 O5 ]: m5 c
VC2=50*[1-VC1]+100*VC13 S3 Q/ }0 u! c0 n
......
3 _1 a' s6 I1 f. e 上面程序只要了一句話就實現了上面四句話的功能,程序代碼短并且執行效率也高,這就起到了簡化程序的目的。 |
|