国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

帶參數(shù)子程序 子程序與宏指令在程序的使用中有何共性?

子程序與宏指令在程序的使用中有何共性?子程序和宏指令在程序使用中有什么共同點:宏和子程序都可以用來簡化程序并使程序多次調用它們。不同的特點:宏操作可以直接傳送和接收參數(shù),不需要棧或其它介質;子程序不能

子程序與宏指令在程序的使用中有何共性?

子程序和宏指令在程序使用中有什么共同點:宏和子程序都可以用來簡化程序并使程序多次調用它們。不同的特點:宏操作可以直接傳送和接收參數(shù),不需要棧或其它介質;子程序不能直接獲取參數(shù),必須通過棧寄存器和存儲器傳送參數(shù)。宏調用只能簡化源程序的編寫,不能縮短目標代碼的長度;子程序調用可以縮短目標程序的長度。良好操作的應用不會增加執(zhí)行目標代碼時額外的時間開銷;子程序調用需要保護和恢復場景和斷點,從而延長目標程序的執(zhí)行時間

S7-200子程序的參數(shù)為輸入?yún)?shù),輸出參數(shù)和輸入/輸出參數(shù)。例如,如果我將VD100傳輸?shù)阶映绦蛑械膮^(qū)域內變量LD0,則此LD0為輸入?yún)?shù);如果我將子程序中的區(qū)域外變量LD8傳輸?shù)絭d200,則此LD8為輸出參數(shù);如果vd300與子程序中的區(qū)域內變量LD0相關聯(lián),則此ld4為輸出參數(shù),vd300和ld4可以同時更改。也就是說,如果子程序中l(wèi)d4的值發(fā)生變化,vd300也會發(fā)生變化。這里的“傳輸”和“關聯(lián)”指的是主程序中的子程序調用,而不是上圖中的MOV和其他傳輸指令。

所有帶參數(shù)的子程序在子程序調用中都有輸入或輸出或輸入/輸出參數(shù)。

沒有參數(shù)就是沒有上面的參數(shù)

一般來說,就是有參數(shù)

就像圖中的程序一樣,我建議最好不要這樣使用它。在子程序中引用全局變量不是很標準

這就是為什么在子程序中不能多次調用計時器的原因。解決這個問題的方法是自己制作定時器并用v區(qū)來計時,它經(jīng)過子程序調用系統(tǒng)時鐘來增加,這樣就可以自由發(fā)揮了。在一種情況下,可以在子例程中調用計時器,即主程序每次掃描只調用一次,每次都調用一個子例程。

西門子S7200帶參數(shù)子程序不帶參數(shù)子程序區(qū)別?

你需要發(fā)送程序才能知道函數(shù)是什么

有四種常用的參數(shù)傳遞方法

1。Register method

Register method是將入口參數(shù)和出口參數(shù)存儲在約定的寄存器中。

優(yōu)點:數(shù)據(jù)傳輸,讀取速度快,編程方便,節(jié)省存儲單元。

缺點:當傳遞的參數(shù)太多時,寄存器的數(shù)量受到限制,并且經(jīng)常使用寄存器,這將導致寄存器不足。

應用程序:參數(shù)較少的子程序

2。常規(guī)單元法:顧名思義,常規(guī)單元法就是將進入?yún)?shù)和退出參數(shù)放置在預定的單元中。優(yōu)點:無需寄存器,參數(shù)任意多,各子程序發(fā)送的數(shù)據(jù)和結構獨立存儲單元。缺點:使用一定數(shù)量的存儲單元增加了編程中變量定義的難度,堆棧方法使用堆棧傳遞參數(shù)。

優(yōu)點:參數(shù)不占用寄存器和內存單元。參數(shù)存儲在公共堆棧區(qū)域,并在處理后恢復。參數(shù)的個數(shù)一般是無限的

缺點:由于參數(shù)和子程序是混合在一起的,所以在訪問參數(shù)時必須仔細計算它在堆棧中的位置。注意斷點的存儲和恢復。

4. 地址表法

這種方法是把一個由參數(shù)組成的參數(shù)表放在一個存儲區(qū)中,然后只要主程序和子程序在第一個地址和存儲區(qū)的內容上達成一致,主程序就會把參數(shù)傳遞給地址表,子程序就可以按此方法完成操作地址表中給定的參數(shù)。