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

📄 exchange.lis

📁 用VC编辑的一个MD5算法
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 008A                   .dbline 65
 008A           L5:
 008A                   .dbline -2
 008A                   .dbline 66
 008A           ;   } 
 008A           ; }
 008A           L3:
 008A 18                pop A
 008B 5300              mov [__r3],A
 008D 18                pop A
 008E 5300              mov [__r1],A
 0090 18                pop A
 0091 5300              mov [__r0],A
 0093 18                pop A
 0094                   .dbline 0 ; func end
 0094 7E                reti
 0095                   .dbend
 0095                   .dbfunc e Rs232_Tx_handler _Rs232_Tx_handler fV
 0095           ;    bFlagShadow -> X+0
 0095           _Rs232_Tx_handler::
 0095                   .dbline -1
 0095 08                push A
 0096 5100              mov A,[__r0]
 0098 08                push A
 0099 5100              mov A,[__r1]
 009B 08                push A
 009C 5100              mov A,[__r3]
 009E 08                push A
 009F 10                push X
 00A0 4F                mov X,SP
 00A1 3801              add SP,1
 00A3                   .dbline 70
 00A3           ; 
 00A3           ; #pragma interrupt_handler Rs232_Tx_handler;
 00A3           ; void Rs232_Tx_handler(void)
 00A3           ; { 
 00A3                   .dbline 71
 00A3           ;   if (tx_buffer[tx_index])
 00A3 5F0034            mov [__r1],[_tx_index]
 00A6 550000            mov [__r0],0
 00A9 060011            add [__r1],<_tx_buffer
 00AC 0E0011            adc [__r0],>_tx_buffer
 00AF 3E00              mvi A,[__r1]
 00B1 A020              jz L14
 00B3                   .dbline 72
 00B3           ;   {
 00B3                   .dbline 73
 00B3           ;     Tx_232_TX_BUFFER_REG = tx_buffer[tx_index++];
 00B3 5F0034            mov [__r1],[_tx_index]
 00B6 550000            mov [__r0],0
 00B9 5100              mov A,[__r1]
 00BB 0101              add A,1
 00BD 5300              mov [__r3],A
 00BF 5000              mov A,0
 00C1 0900              adc A,0
 00C3 5F3400            mov [_tx_index],[__r3]
 00C6 060011            add [__r1],<_tx_buffer
 00C9 0E0011            adc [__r0],>_tx_buffer
 00CC 3E00              mvi A,[__r1]
 00CE 6035              mov REG[53],A
 00D0                   .dbline 74
 00D0           ;   }
 00D0 8016              xjmp L15
 00D2           L14:
 00D2                   .dbline 76
 00D2           ;     else 
 00D2           ;   {
 00D2                   .dbline 77
 00D2                   .dbline 77
 00D2 5DFF              mov A,REG[-1]
 00D4 2180              and A,-128
 00D6 5400              mov [X+0],A
 00D8                   .dbline 77
 00D8 70FE                      and   F, FEh
 00DA           
 00DA                   .dbline 77
 00DA 41E1DF            and REG[-31],-33
 00DD                   .dbline 77
 00DD 3D0000            cmp [X+0],0
 00E0 A003              jz L16
 00E2                   .dbline 77
 00E2                   .dbline 77
 00E2 7101                      or    F, 01h
 00E4           
 00E4                   .dbline 77
 00E4           L16:
 00E4                   .dbline 77
 00E4                   .dbline 77
 00E4                   .dbline 78
 00E4 5534FF            mov [_tx_index],-1
 00E7                   .dbline 79
 00E7           L15:
 00E7                   .dbline -2
 00E7                   .dbline 80
 00E7           ;     M8C_DisableIntMask (INT_MSK1, bTx_232_INT_MASK); 
 00E7           ;     tx_index = 0xFF;
 00E7           ;   }
 00E7           ; }
 00E7           L13:
 00E7 38FF              add SP,-1
 00E9 20                pop X
 00EA 18                pop A
 00EB 5300              mov [__r3],A
 00ED 18                pop A
 00EE 5300              mov [__r1],A
 00F0 18                pop A
 00F1 5300              mov [__r0],A
 00F3 18                pop A
 00F4                   .dbline 0 ; func end
 00F4 7E                reti
 00F5                   .dbsym l bFlagShadow 0 c
 00F5                   .dbend
 00F5                   .dbfunc e ExchangeSend _ExchangeSend fV
 00F5           ;       tx_count -> X+2
 00F5           ;            ptr -> X+0
 00F5           ;            str -> X-5
 00F5           _ExchangeSend::
 00F5                   .dbline -1
 00F5 10                push X
 00F6 4F                mov X,SP
 00F7 3803              add SP,3
 00F9                   .dbline 83
 00F9           ; 
 00F9           ; void ExchangeSend(const BYTE *str)
 00F9           ; {
 00F9                   .dbline 84
 00F9           ;   BYTE *ptr = tx_buffer, tx_count = 0;
 00F9 560111            mov [X+1],<_tx_buffer
 00FC 560011            mov [X+0],>_tx_buffer
 00FF                   .dbline 84
 00FF 560200            mov [X+2],0
 0102           L19:
 0102                   .dbline 86
 0102           L20:
 0102                   .dbline 86
 0102           ;   
 0102           ;   while(tx_index != 0xFF);  
 0102 3C34FF            cmp [_tx_index],-1
 0105 BFFC              jnz L19
 0107                   .dbline 87
 0107           ;   tx_index = tx_count= 0;
 0107 560200            mov [X+2],0
 010A 553400            mov [_tx_index],0
 010D 8040              xjmp L23
 010F           L22:
 010F                   .dbline 90
 010F           ;   
 010F           ;   while (*str)
 010F           ;   {
 010F                   .dbline 91
 010F           ;     *ptr++ = *str++;   
 010F 5201              mov A,[X+1]
 0111 5300              mov [__r1],A
 0113 5200              mov A,[X+0]
 0115 5300              mov [__r0],A
 0117 5100              mov A,[__r1]
 0119 0101              add A,1
 011B 5401              mov [X+1],A
 011D 5100              mov A,[__r0]
 011F 0900              adc A,0
 0121 5400              mov [X+0],A
 0123 52FC              mov A,[X-4]
 0125 5300              mov [__r3],A
 0127 52FB              mov A,[X-5]
 0129 5300              mov [__r2],A
 012B 5100              mov A,[__r3]
 012D 0101              add A,1
 012F 54FC              mov [X-4],A
 0131 5100              mov A,[__r2]
 0133 0900              adc A,0
 0135 54FB              mov [X-5],A
 0137 5100              mov A,[__r2]
 0139 10                push X
 013A 5800              mov X,[__r3]
 013C 28                romx
 013D 20                pop X
 013E 3F00              mvi [__r1],A
 0140                   .dbline 92
 0140           ;     if (++tx_count > (TX_BUFFER_LEN-2)) break;
 0140 5202              mov A,[X+2]
 0142 0101              add A,1
 0144 5402              mov [X+2],A
 0146 3921              cmp A,33
 0148 C005              jc L25
 014A A003              jz L25
 014C           X2:
 014C                   .dbline 92
 014C 8010              xjmp L24
 014E           L25:
 014E                   .dbline 93
 014E           L23:
 014E                   .dbline 89
 014E 52FC              mov A,[X-4]
 0150 5300              mov [__r1],A
 0152 52FB              mov A,[X-5]
 0154 10                push X
 0155 5800              mov X,[__r1]
 0157 28                romx
 0158 20                pop X
 0159 3900              cmp A,0
 015B BFB3              jnz L22
 015D           L24:
 015D                   .dbline 94
 015D           ;   }
 015D           ;   *ptr = 0;
 015D 5201              mov A,[X+1]
 015F 5300              mov [__r1],A
 0161 5000              mov A,0
 0163 3F00              mvi [__r1],A
 0165                   .dbline 96
 0165           ;   
 0165           ;   Tx_232_EnableInt();
 0165 10                push X
 0166 7C0000            xcall _Tx_232_EnableInt
 0169 20                pop X
 016A                   .dbline 97
 016A           ;   Tx_232_SendData(tx_buffer[tx_index++]);
 016A 5F0034            mov [__r1],[_tx_index]
 016D 550000            mov [__r0],0
 0170 5100              mov A,[__r1]
 0172 0101              add A,1
 0174 5300              mov [__r3],A
 0176 5000              mov A,0
 0178 0900              adc A,0
 017A 5F3400            mov [_tx_index],[__r3]
 017D 060011            add [__r1],<_tx_buffer
 0180 0E0011            adc [__r0],>_tx_buffer
 0183 3E00              mvi A,[__r1]
 0185 10                push X
 0186 7C0000            xcall _Tx_232_SendData
 0189 20                pop X
 018A                   .dbline -2
 018A                   .dbline 99
 018A           ;  
 018A           ; }
 018A           L18:
 018A 38FD              add SP,-3
 018C 20                pop X
 018D                   .dbline 0 ; func end
 018D 7F                ret
 018E                   .dbsym l tx_count 2 c
 018E                   .dbsym l ptr 0 pc
 018E                   .dbsym l str -5 pc
 018E                   .dbend

⌨️ 快捷键说明

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