• <cite id="uwv89"></cite>
      1. 亚洲综合小综合中文字幕,国产久爱免费精品视频,精品国产品香蕉在线,国产午夜精品在人线播放,精品一二三四区在线观看,国产成人无码免费看视频软件 ,色欲久久人妻内射,午夜在线观看成人av
        • «
        • 1
        • 2
        • »
        • Pages: 1/2     Go
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        樓主  發表于: 2017-10-28 15:09
        不知道你的排序是要求全部排出來還是僅僅要求出最大值或者最小值?因為現實中的應用大部分是要求出最大值或者最小值的。
          如果僅僅是求出最大值或者最小值請參考:
          1,要排序的數據為DB10的DBW0...DBW18(10個字)
          2,MD100為指針地址,MW104為最終結果,MW106為臨時計數地址。
          3,求最小值時稍微改一下就可以了。
                OPN   DB    10
                L     L#16
                T     MD   100
                L     DBW    0
                T     MW   104                    //最大值將被存儲在這個地址
                L     0
                T     MW   106                    //計數地址
          _00:  L     MW   104
                L     DBW [MD 100]
                >=I  
                JC    _01
                T     MW   104
          _01:  L     MD   100
                +     L#16
                T     MD   100
                L     MW   106
                +     1
                T     MW   106
                L     9
                <I    
                JC    _00

        回答者:  金牌用戶 冬日 - 畢業實踐員  第4級  2009-05-12 09:32:00
        收藏6      1 評論 精探推薦
        提問者對于答案的評價:
        感謝,不過這程序使我進一步的了解了LOOP的用法
        同時感謝依然,SCL不想看了,STL都還不熟練,我再開個貼,麻煩你路過下,感謝80分
        已有3人評論 展開
        7yu: 解決了,再次感謝
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        1樓  發表于: 2017-10-28 15:11
        關于排序的算法,你可以參考一下數據庫的知識,里面有多種排序方法,不過像你所說就10個數據從小到大排序,就可以用較簡單的一種“兩兩比較法”,如東方巨龍所言;
          關于“聲明一個可以盛下10個數據的數組變量”:
          首先建立一個數據塊,如DB1,在ADDRESS0.0 中定義NAME,比如TEST;在ADDRESS0.0 中定義TYPE,比如ARRAY[1..10];在INITIAL VALUE中輸入初始值,或空白(缺省值);回車,在*2.0 TYPE中輸入變量類型,比如INT,就完成了。此時你可以通過VIEW/DATA VIEW查看到這10個INT變量。
        補充:也不是很難寫,常用的如梯形圖看起來很直觀,適合編寫數字量邏輯程序,語句表有點類似匯編,數據處理還可以,當然沒有C語言高級,他也提供了一些其它的編程語言,比如GRAPH,適合順控程序,比如機械手應用,還有SCL結構化編程語言,就是C語言的語法格式,但也不能將C語言直接導入。你可以使用一下,不過需要授權。
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        2樓  發表于: 2017-10-28 15:16
        一個子程序,你看一下
        LD0   表頭地址
        L4.0    排序模式:true=升序,false=降序
        其它為TEMP 變量

        Network 1
        //  表為空或只有一個數據時不用排序
        LD     SM0.0
        +D     2, LD0
        AW<=   *LD0, 1
        CRET
        Network 2
        //  初始化循環次數、表頭指針指向第一個元素
        LD     SM0.0
        MOVW   *LD0, LW7
        MOVW   LW7, LW5
        DECW   LW5

        Network 3 //  外循環
        LD     SM0.0
        FOR    LW9, 1, LW5
        MOVW   LW9, LW21
        INCW   LW21
        Network 4 //  內循環
        LD     SM0.0
        FOR    LW11, LW21, LW7
        Network 5
        //  指針指向待比較的兩個數據項
        LD     SM0.0
        MOVW   LW9, LW21
        SLW    LW21, 1
        ITD    LW21, LD13
        +D     LD0, LD13
        MOVW   LW11, LW21
        SLW    LW21, 1
        ITD    LW21, LD17
        +D     LD0, LD17
        Network 6 //  比較
        //  生成交換標志
        LDW>   *LD13, *LD17
        A      L4.0
        LDW<   *LD13, *LD17
        AN     L4.0
        OLD
        =      L23.0
        Network 7 //  交換數據
        LD     L23.0
        MOVW   *LD13, LW21
        MOVW   *LD17, *LD13
        MOVW   LW21, *LD17
        Network 8
        NEXT
        Network 9
        NEXT
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        3樓  發表于: 2017-10-28 15:17
        數據排序 - 已解決問題
        我的數據存在VW4500開始的每隔一個位的存儲器內,即VW4500,VW4502,VW4504,...VW4546,總共有24個,希望實現從小到大排序,即最大的數放在VW4546內。嘗試用FOR循環來實現,望指點迷津
        問題補充:
        希望通過使用for循環來實現冒泡法了解指針的運用,如果有的話請給我發一份,如果沒有的話給我一份關于指針的介紹,及注意事項,謝謝。我的郵箱jgsong21st@163.com
        產品版區:SIMATIC S7-200 懸賞分:10 | 解決時間:2009-09-23 08:56:08 | 提問者: 花樣少年 - 畢業實踐員  第4級

        問題ID:42036

        最佳答案
        去看下最簡單的冒泡法,自己做才是真道理
          //Main主程序 對5個數進行排序從VW4500至Vw4508進行排序,任意多個數可以在SM0.1中初始化;
          Network1
          LD     SM0.1
          MOVW   1, VW2000
          MOVW   1, VW1000
          MOVD   &VB4498, VD3000
          MOVW   700, VW4500
          MOVW   210, VW4502
          MOVW   110, VW4504
          MOVW   510, VW4506
          MOVW   5110, VW4508
          MOVW   1, VW600
          Network2
          LD     M1.0
          CALL   S0:SBR0
          
          //SO:SBR0子程序,采用內外兩個For循環及VD1118與VD1008雙指針進行排序操作
          Network1
          LD     M1.0
          FOR    VW2000, VW600, 4
          Network2
          LD     M1.0
          FOR    VW1000, VW2000, 3
          Network3
          LD     M1.0
          LPS
          MOVW   VW1000, VW1002
          AENO
          *I     +2, VW1002
          AENO
          ITD    VW1002, VD1004
          LPP
          MOVD   VD1004, VD1114
          +D     +2, VD1114
          Network4
          LD     M1.0
          MOVD   VD3000, VD1008
          +D     VD1004, VD1008
          MOVD   VD3000, VD1118
          +D     VD1114, VD1118
          Network5
          LD     M1.0
          MOVW   *VD1008, VW3500
          MOVW   *VD1118, VW3502
          Network6
          LD     M1.0
          AW>    VW3500, VW3502
          MOVW   *VD1008, VW3004
          MOVW   *VD1118, *VD1008
          MOVW   VW3004, *VD1118
          Network7
          NEXT
          Network8
          NEXT
          【PLC:S7 200 226 調試通過可以直接測試】
        回答者: S7-200 / Net - 高級技術員  第7級  2009-09-22 11:19:41
        收藏7      4 評論 精探推薦
        提問者對于答案的評價:
        非常感謝,我已經調試通過了,同時對指針也有了了解,以后多多練習,不斷提高自己
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        4樓  發表于: 2017-10-28 15:21
        剛接觸PLC不久,不知道怎么將4臺電機的運行時間按照從小到大排序,求幫助!
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        5樓  發表于: 2017-10-28 15:25
        1、冒泡程序一般起什么作用?
        就是一個排序程序,從大到小排序。冒泡指將大數浮出來,即冒泡。
        2、S7-200冒泡:
        冒泡程序流程圖及程序,連接:
        http://wenku.baidu.com/link?url=2ajv0YMolpZb2IHPWuF4Mv-SN919ANJdp6BfyU8Due9dqeP1d8mxLIyouJWDGfkAJOXDvEyhsSQCVZ3w6T0dE21zWRsqNOqRGQuHhhBtjaK
        3、S7-300冒泡:
        轉帖:
        假定十個數據,放在DB1中,安放順序如下:
        DBD0
        DBD4

        DBD36
        下面是西門子的程序
        OPN   DB    1                 /////打開DB1這個數據塊
              L     10  ////裝載10到MB0中,因為有十個數據,要進行十次排序,9次也可以的
        LL0:  T     MB    0
              L     P#0.0   ////裝載地址指針,這是關鍵,不要搞錯了
              LAR1  
              L     9
        LL1:  T     MB    2   ////內部循環,進行9次,直到把最大值排到最后
              L     DBD [AR1,P#0.0]
              L     DBD [AR1,P#4.0]
              <R    
              JC    LL2          ////比較前后兩個值,如果前面大于后面的,則前后數據交換
              L     DBD [AR1,P#0.0]
              T     #m_temp
              L     DBD [AR1,P#4.0]
              T     DBD [AR1,P#0.0]
              L     #m_temp
              T     DBD [AR1,P#4.0]
        LL2:  +AR1  P#4.0     ////指針自動進行加4,因為是浮點數,所以要跳過4個字節
              L     MB    2
              LOOP  LL1       ///這個指令自動的將A寄存器里的值減1
              L     MB    0
        LOOP  LL0
                                                                                                                        
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        6樓  發表于: 2017-10-28 15:26
        冒泡排序法實際就是升序法,小的在前面大的在后面。
        參考:http://wenda.so.com/q/1367603117067162?src=170
        編程就按照參考中思路兩兩比較遍歷整個數據序列。
                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                    轉載:
        300:
        實現冒泡(數值大的在前)排序法:
        假定十個數據,放在DB1中,安放順序如下:
        DBD0
        DBD4

        DBD36
        下面是西門子的程序
        OPN   DB    1                 /////打開DB1這個數據塊
              L     10  ////裝載10到MB0中,因為有十個數據,要進行十次排序,9次也可以的
        LL0:    T     MB    0
                   L     P#0.0   ////裝載地址指針,這是關鍵,不要搞錯了
              LAR1  
                   L     9
        LL1:   T     MB    2   ////內部循環,進行9次,直到把最大值排到最后
              L     DBD [AR1,P#0.0]
                  L     DBD [AR1,P#4.0]
                  <R    
                  JC    LL2          ////比較前后兩個值,如果前面大于后面的,則前后數據交換
              L     DBD [AR1,P#0.0]
                   T     #m_temp
                   L     DBD [AR1,P#4.0]
                   T     DBD [AR1,P#0.0]
                   L     #m_temp
                   T     DBD [AR1,P#4.0]
        LL2:  +AR1  P#4.0     ////指針自動進行加4,因為是浮點數,所以要跳過4個字節
              L     MB    2
                   LOOP  LL1       ///這個指令自動的將A寄存器里的值減1
                    L     MB    0
        LOOP  LL0
        200:下載鏈接:http://wenku.baidu.com/link?url=efyos3PLg3MgU51BofWBNDbBQCPAmrEjIs73ZhXWhEgPPxqBzONyODzbdMXNI0Z0Qge14QQ2sPfh_exEDj_1-NdkHmgkr2c8sqH9bpB9pVO
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        7樓  發表于: 2017-10-28 15:38
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        8樓  發表于: 2017-10-28 15:39
        排序這個老大難問題,我懂了 ,你呢?
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        9樓  發表于: 2017-10-28 15:42
        4臺泵按運行時間從小到大,將對應寄存器號進行排序(不對運行時間排序)
        http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=980404&b_id=3&s_id=0&num=27#anch
        zlf60137
        danpianji3501
        級別: 略有小成
        精華主題: 0
        發帖數量: 104 個
        工控威望: 242 點
        下載積分: 1142 分
        在線時間: 41(小時)
        注冊時間: 2016-09-22
        最后登錄: 2025-08-24
        查看zlf60137的 主題 / 回貼
        11樓  發表于: 2017-10-28 15:51
        • «
        • 1
        • 2
        • »
        • Pages: 1/2     Go

        主站蜘蛛池模板: 亚洲成在人线AV品善网好看| 亚洲熟妇色自偷自拍另类| 国产一区二区三区高清视频| 午夜免费无码福利视频麻豆| 亚洲第一精品一二三区| 一本一道av中文字幕无码| 亚洲av尤物一区二区| 国产精品一二二区视在线| 18禁免费无码无遮挡网站| 欧美日韩一线| 国产一区二区三区不卡视频| 国产L精品国产亚洲区在线观看 | 在线精品国产成人综合| 日韩av不卡一区二区在线| 国产乱码1卡二卡3卡四卡5| 国产成人亚洲精品狼色在线| 67194熟妇在线观看线路| 九九热免费在线播放视频| 国产亚洲精品成人av一区| 熟女视频一区二区三区嫩草| 久久99国产一区二区三区| 日韩人妻久久精品一区二区 | 国产精品人妇一区二区三区| 日韩人妻少妇一区二区三区| 国产爽视频一区二区三区| 亚洲欧洲日产国产 最新| 男女扒开双腿猛进入爽爽免费看| 久久精品国产久精国产果冻传媒| 成人无码区在线观看| 国产999精品2卡3卡4卡| 99久久激情国产精品| 男人又大又硬又粗视频| 久久久无码精品国产一区| 亚洲熟女国产熟女二区三区| 国产迷姦播放在线观看| 深夜精品免费在线观看| 澳门永久av免费网站| 一本精品99久久精品77| 澳门永久av免费网站| 国产亚洲精品中文字幕| 4hu44四虎www在线影院麻豆|