⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 distancetranformb_l.asm

📁 基于VPM642的距离变换程序
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;*       9: |** *****   *          *   * ****|    ******      ***** ** *****  |
;*      10: |** *****   *    **    *   * ****|    *** **      **************  |
;*      11: |**  ****** *    **  ***  *******|    ******      *************** |
;*      12: |********** *    ******** *******| ** ******      *************** |
;*      13: |************    ****************|*** ******      ****************|
;*      14: |************    **********  ****|*** *******     ****************|
;*      15: |************    *********** ****|***********     ****************|
;*      16: |************    *********   ****|** ********     ****************|
;*      17: |************    *********   ****|*  ********     ****************|
;*      18: |********** *    *********   ****|   ********     ****************|
;*      19: |********** *    ****** *    ****|   ********     ****************|
;*      20: |********** *    ***** **    ****|   ********     ****************|
;*      21: |********** *    *******     ****|    *******     ****************|
;*      22: |********** *    *******     ****|    *******     ****************|
;*      23: |********** *    *******   * ****|    ******      ***** **********|
;*      24: |********** *    ******    * ****|    ******      ****************|
;*      25: |** ******* *    ******    * ****|    ******      ******** ***** *|
;*      26: |** ******* *    ** ***    * ****|    ******      ************** *|
;*      27: |** ******* *    ** * *    * ****|    ******      ***** ******** *|
;*      28: |**  ****** *    ** * *    * ****|    ******      ***** ** ***** *|
;*      29: |**  ****** *    **        * ****|    ******      * *** ******** *|
;*      30: |** ******* *     *        * ****|    ******      * *** ** *****  |
;*          +-----------------------------------------------------------------+
;*
;*      Done
;*
;*      Epilog not removed
;*      Collapsed epilog stages     : 0
;*
;*      Prolog not removed
;*      Collapsed prolog stages     : 0
;*
;*      Minimum required memory pad : 0 bytes
;*
;*      Minimum safe trip count     : 2
;*----------------------------------------------------------------------------*
;*       SETUP CODE
;*
;*                  MV              A31,B26
;*
;*        SINGLE SCHEDULED ITERATION
;*
;*        loop:
;*   0              LDNDW   .D2T2   *B28,B21:B20      ; |97|  A load, line 2
;*       ||         SUB     .S2     B28,4,B28         ; |97| 
;*       ||         ZERO    .L2     B17:B16           ; |103| 
;*   1              LDNDW   .D1T1   *A28,A21:A20      ; |98|  A load, line 1
;*       ||         SUB     .S1     A28,4,A28         ; |98| 
;*       ||         ZERO    .L2     B5:B4             ; |107| 
;*   2              LDNDW   .D1T1   *A29,A19:A18      ; |96|  A load, line 3
;*       ||         SUB     .S1     A29,4,A29         ; |96| 
;*       ||         ZERO    .L1     A5:A4             ; |102| 
;*   3              ZERO    .L2     B9:B8             ; |105| 
;*       ||         ZERO    .L1     A7:A6             ; |109| 
;*   4              ZERO    .L1     A17:A16           ; |106| 
;*   5              ZERO    .L2     B7:B6             ; |104| 
;*       ||         ZERO    .L1     A9:A8             ; |108| 
;*       ||         AND     .D1X    B21,A1,A25        ; |133| 
;*       ||         AND     .D2     B21,B26,B30       ; |145| 
;*   6              AND     .L1X    A21,B29,A3        ; |114| 
;*       ||         AND     .D1     A20,A1,A23        ; |125| 
;*       ||         SHRU    .S1     A25,0x10,A2       ; |135| 
;*       ||         AND     .D2     B21,B29,B19       ; |138| 
;*       ||         AND     .L2     B20,B29,B1        ; |166| 
;*   7              SHL     .S1     A3,0x8,A24        ; |115| 
;*       ||         SHRU    .S2     B19,0x8,B19       ; |139| 
;*       ||         AND     .D2     B20,B27,B31       ; |152| 
;*       ||         AND     .L2X    B20,A1,B0         ; |160| 
;*       ||         AND     .D1     A19,A1,A10        ; |193| 
;*       ||         AND     .L1X    A18,B29,A3        ; |213| 
;*   8              AND     .L2X    A21,B26,B10       ; |118| 
;*       ||         AND     .D2     B21,B27,B21       ; |129| 
;*       ||         SHL     .S2     B19,0x10,B2       ; |141| 
;*       ||         SHRU    .S1     A3,0x8,A3         ; |214| 
;*   9              SHRU    .S2     B21,0x8,B3        ; |130| 
;*       ||         OR      .D2     B2,B9,B9          ; |143| 
;*       ||         AND     .L1X    A19,B29,A22       ; |196| 
;*       ||         AND     .L2X    A19,B26,B21       ; |200| 
;*       ||         AND     .D1     A18,A1,A19        ; |210| 
;*  10              OR      .L2X    A25,B7,B7         ; |134| 
;*       ||         OR      .D2     B2,B16,B16        ; |142| 
;*       ||         OR      .S2     B30,B9,B9         ; |147| 
;*       ||         OR      .L1X    B0,A16,A16        ; |161| 
;*       ||         OR      .D1     A19,A6,A6         ; |211| 
;*  11              OR      .D2     B30,B16,B16       ; |146| 
;*       ||         SHL     .S1X    B30,0x10,A21      ; |148| 
;*       ||         SHRU    .S2     B1,0x8,B30        ; |167| 
;*       ||         ADD2    .L2     B9,B22,B9         ; |179| 
;*       ||         OR      .D1     A3,A6,A6          ; |215|  the third line finished
;*  12              OR      .L1     A21,A17,A17       ; |150| 
;*       ||         SHRU    .S1X    B31,0x8,A19       ; |153| 
;*       ||         SHRU    .S2     B0,0x10,B31       ; |162| 
;*       ||         ADD2    .D2     B16,B23,B16       ; |176| 
;*       ||         OR      .D1     A10,A9,A9         ; |194| 
;*  13              OR      .D1     A24,A5,A5         ; |116| 
;*       ||         OR      .L2     B19,B7,B7         ; |140| 
;*       ||         OR      .D2X    A21,B6,B6         ; |149| 
;*       ||         OR      .L1X    B30,A16,A16       ; |168| 
;*       ||         SHRU    .S1     A22,0x8,A21       ; |197| 
;*  14              OR      .D2X    A19,B8,B8         ; |155| 
;*       ||         SHRU    .S1     A19,0x10,A22      ; |156| 
;*       ||         SHL     .S2     B30,0x10,B30      ; |169| 
;*       ||         OR      .D1     A21,A9,A9         ; |198| 
;*       ||         AND     .L1X    A18,B27,A18       ; |205| 
;*  15              SHRU    .S1     A23,0x10,A21      ; |126| 
;*       ||         OR      .D2     B3,B17,B17        ; |131| 
;*       ||         OR      .D1     A22,A17,A17       ; |158| 
;*       ||         OR      .S2     B31,B8,B8         ; |163| 
;*       ||         ADD2    .L1X    A9,B23,A9         ; |217| 
;*  16              OR      .D2X    A22,B6,B6         ; |157| 
;*       ||         AND     .L2     B20,B26,B20       ; |172| 
;*       ||         ADD2    .L1     A17,A30,A17       ; |181| 
;*       ||         ADD2    .D1     A16,A30,A16       ; |182| 
;*       ||         SHL     .S1X    B21,0x10,A22      ; |201| 
;*  17              OR      .S1X    B10,A5,A5         ; |119| 
;*       ||         ADD2    .D2X    B6,A30,B6         ; |178| 
;*       ||         ADD2    .L2     B8,B22,B8         ; |180| 
;*       ||         ZERO    .D1     A26               ; |231| 
;*  18              ZERO    .L2     B19:B18           ; |101| 
;*       ||         MIN2    .L1X    B9,A17,A17        ; |188| 
;*       ||         OR      .S1     A22,A7,A7         ; |202| 
;*       ||         OR      .D1     A22,A8,A8         ; |203| 
;*  19              AND     .D1X    A20,B27,A20       ; |121| 
;*       ||         OR      .S2X    A2,B17,B17        ; |136| 
;*       ||         OR      .D2     B30,B4,B4         ; |170| 
;*  20              ADD2    .D2     B17,B23,B17       ; |175| 
;*       ||         SHRU    .S2X    A18,0x18,B9       ; |206| 
;*       ||         ADD2    .D1X    A6,B23,A6         ; |220| 
;*  21              SHRU    .S1     A20,0x8,A3        ; |122| 
;*       ||         MIN2    .L2     B16,B6,B6         ; |187| compare
;*  22              OR      .D1     A3,A4,A4          ; |123| 
;*       ||         ADD2    .S2X    B7,A30,B7         ; |177| 
;*       ||         OR      .S1X    B9,A7,A7          ; |207| 
;*  23              OR      .D1     A21,A4,A4         ; |127| the first line finished
;*       ||         OR      .D2X    A19,B5,B5         ; |154| 
;*       ||         MIN2    .L2     B17,B7,B7         ; |186| 
;*       ||         ADD2    .S1X    A7,B23,A7         ; |219| 
;*  24              SHL     .S2     B24,0x10,B16      ; |111|  ^ 
;*       ||         OR      .D2     B31,B5,B5         ; |164| 
;*       ||         MIN2    .L2X    B8,A16,B8         ; |189| compare
;*  25              OR      .S2     B20,B4,B4         ; |173| the second line finnished
;*       ||         ADD2    .L2     B5,B23,B5         ; |183| 
;*       ||         MIN2    .L1X    A17,B7,A3         ; |226| 
;*       ||         ADD     .D1     0xffffffff,A0,A0  ; |266| 
;*  26              OR      .D2     B16,B19,B19       ; |112|  ^ 
;*       ||         ADD2    .S2     B4,B23,B4         ; |184|  add finished 
;*       ||         OR      .D1X    B9,A8,A8          ; |208| 
;*       ||         MIN2    .L1     A9,A7,A7          ; |221| 
;*       ||         MIN2    .L2     B8,B6,B7          ; |227| compare
;*  27              MIN2    .L1X    A5,B5,A5          ; |190| 
;*       ||         ADD2    .D2     B19,B22,B6        ; |232|  ^ 
;*  28              MIN2    .L1X    A4,B4,A4          ; |191| compare
;*  29              ADD2    .D1X    A8,B23,A8         ; |218| 
;*       ||         MIN2    .L1     A5,A7,A5          ; |224| 
;*  30              MIN2    .L1     A5,A3,A22         ; |228| 
;*  31              MIN2    .L1     A8,A6,A3          ; |222| 
;*  32              MIN2    .L1     A4,A3,A3          ; |225| compare
;*  33              MIN2    .L2X    B6,A22,B6         ; |233|  ^ compare
;*  34              AND     .D2X    B6,A1,B20         ; |234|  ^ 
;*  35              MIN2    .L2X    A3,B7,B24         ; |229| compare
;*       ||         AND     .D1X    B6,A1,A3          ; |234| Define a twin register
;*       ||         SHRU    .S2     B20,0x10,B6       ; |237|  ^ 
;*  36              SHL     .S1     A3,0x8,A27        ; |235| 
;*       ||         OR      .S2     B6,B19,B19        ; |238|  ^ 
;*  37              ADD     .S2     B19,B22,B2        ; |240|  ^ 
;*  38              NOP             1
;*  39              OR      .D1     A27,A26,A21       ; |236| 
;*       ||         MIN2    .L1X    B2,A22,A22        ; |241|  ^ 
;*  40              AND     .S1     A22,A31,A26       ; |242|  ^ 
;*  41              SHL     .S1     A26,0x10,A19      ; |243|  ^ 
;*  42              OR      .L1     A19,A21,A3        ; |244| 
;*  43              OR      .L2X    A19,B18,B18       ; |245|  ^ 
;*  44              ADD     .S2     B18,B22,B19       ; |247|  ^ 
;*  45              MIN2    .L2     B19,B24,B19       ; |248|  ^ 
;*  46              AND     .L2X    B19,A1,B19        ; |249|  ^ 
;*  47              SHRU    .S2     B19,0x10,B21      ; |252|  ^ 
;*  48              OR      .S2     B21,B18,B18       ; |253|  ^ 
;*  49              SHRU    .S2     B19,0x8,B21       ; |250| 
;*       ||         ADD     .D2     B18,B22,B9        ; |255|  ^ 
;*  50              MIN2    .L2     B9,B24,B9         ; |256|  ^ 
;*  51              AND     .L2     B9,B26,B24        ; |257|  ^ 
;*       ||         BDEC    .S1     loop,A11          ; |269| 
;*  52              OR      .D2X    B21,A3,B16        ; |251| 
;*  53              OR      .D2     B24,B16,B16       ; |258|  ^ 
;*  54              AND     .S2     B16,B26,B24       ; |260|  ^ Define a twin register
;*  55              MV      .D1X    B16,A3            ; |258| Define a twin register
;*  56      [ A0]   STW     .D2T1   A3,*B25--         ; |267| 
;*                  ; BRANCH OCCURS                   ; |269| 
;*----------------------------------------------------------------------------*
L1:    ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
loop:    ; PIPED LOOP KERNEL

           MIN2    .L2     B8,B6,B7          ; |227| <0,26> compare
||         OR      .D2     B16,B19,B19       ; |112| <0,26>  ^ 
||         ADD2    .S2     B4,B23,B4         ; |184| <0,26>  add finished 
||         OR      .D1X    B9,A8,A8          ; |208| <0,26> 
||         MIN2    .L1     A9,A7,A7          ; |221| <0,26> 

           ADD2    .D2     B19,B22,B6        ; |232| <0,27>  ^ 
||         MIN2    .L1X    A5,B5,A5          ; |190| <0,27> 

           MIN2    .L1X    A4,B4,A4          ; |191| <0,28> compare

           ADD2    .D1X    A8,B23,A8         ; |218| <0,29> 
||         MIN2    .L1     A5,A7,A5          ; |224| <0,29> 

           MIN2    .L1     A5,A3,A22         ; |228| <0,30> 

           MIN2    .L1     A8,A6,A3          ; |222| <0,31> 
||         SUB     .S2     B28,4,B28         ; |97| <1,0> 
||         ZERO    .L2     B17:B16           ; |103| <1,0> 
||         LDNDW   .D2T2   *B28,B21:B20      ; |97| <1,0>  A load, line 2

           MIN2    .L1     A4,A3,A3          ; |225| <0,32> compare
||         SUB     .S1     A28,4,A28         ; |98| <1,1> 
||         ZERO    .L2     B5:B4             ; |107| <1,1> 
||         LDNDW   .D1T1   *A28,A21:A20      ; |98| <1,1>  A load, line 1

           MIN2    .L2X    B6,A22,B6         ; |233| <0,33>  ^ compare
||         SUB     .S1     A29,4,A29         ; |96| <1,2> 
||         ZERO    .L1     A5:A4             ; |102| <1,2> 
||         LDNDW   .D1T1   *A29,A19:A18      ; |96| <1,2>  A load, line 3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -