?? public.lis
字號:
0428 1181 ldd R17,z+1
042A 2281 ldd R18,z+2
042C 3381 ldd R19,z+3
042E .dbline -2
042E L1:
042E 2A96 adiw R28,10
0430 0E940000 xcall pop_gset5
0434 .dbline 0 ; func end
0434 0895 ret
0436 .dbsym l k 1 c
0436 .dbsym l j 1 c
0436 .dbsym r ucM 12 c
0436 .dbsym r ucF 10 c
0436 .dbsym l ucS 9 c
0436 .dbsym l ucR 8 c
0436 .dbsym l ucY 7 c
0436 .dbsym l ucN 6 c
0436 .dbsym l ulSeconds 0 l
0436 .dbsym r i 14 c
0436 .dbsym r nyrsfm 12 pc
0436 .dbend
0436 .dbfunc e SpanSecond _SpanSecond fl
0436 ; ultemp2 -> y+4
0436 ; ultemp1 -> y+0
0436 ; nyrsfm2 -> R10,R11
0436 ; nyrsfm1 -> R12,R13
.even
0436 _SpanSecond::
0436 0E940000 xcall push_gset4
043A 5901 movw R10,R18
043C 6801 movw R12,R16
043E 2897 sbiw R28,8
0440 .dbline -1
0440 .dbline 112
0440 ; }
0440 ;
0440 ; //計算time1-time2的時間差,返回差值,單位s
0440 ; unsigned long SpanSecond(unsigned char * nyrsfm1,unsigned char * nyrsfm2)
0440 ; {
0440 .dbline 115
0440 ; unsigned long ultemp1,ultemp2;
0440 ;
0440 ; ultemp1=count_seconds(nyrsfm1);
0440 8601 movw R16,R12
0442 DEDD xcall _count_seconds
0444 FE01 movw R30,R28
0446 0083 std z+0,R16
0448 1183 std z+1,R17
044A 2283 std z+2,R18
044C 3383 std z+3,R19
044E .dbline 116
044E ; ultemp2=count_seconds(nyrsfm2);
044E 8501 movw R16,R10
0450 D7DD xcall _count_seconds
0452 FE01 movw R30,R28
0454 0483 std z+4,R16
0456 1583 std z+5,R17
0458 2683 std z+6,R18
045A 3783 std z+7,R19
045C .dbline 118
045C ;
045C ; if(ultemp1>ultemp2) return (ultemp1-ultemp2);
045C FE01 movw R30,R28
045E 2480 ldd R2,z+4
0460 3580 ldd R3,z+5
0462 4680 ldd R4,z+6
0464 5780 ldd R5,z+7
0466 FE01 movw R30,R28
0468 6080 ldd R6,z+0
046A 7180 ldd R7,z+1
046C 8280 ldd R8,z+2
046E 9380 ldd R9,z+3
0470 2614 cp R2,R6
0472 3704 cpc R3,R7
0474 4804 cpc R4,R8
0476 5904 cpc R5,R9
0478 88F4 brsh L30
047A .dbline 118
047A FE01 movw R30,R28
047C 2480 ldd R2,z+4
047E 3580 ldd R3,z+5
0480 4680 ldd R4,z+6
0482 5780 ldd R5,z+7
0484 FE01 movw R30,R28
0486 6080 ldd R6,z+0
0488 7180 ldd R7,z+1
048A 8280 ldd R8,z+2
048C 9380 ldd R9,z+3
048E 6218 sub R6,R2
0490 7308 sbc R7,R3
0492 8408 sbc R8,R4
0494 9508 sbc R9,R5
0496 8301 movw R16,R6
0498 9401 movw R18,R8
049A 04C0 xjmp L29
049C L30:
049C .dbline 119
049C ; else return 0;
049C 00E0 ldi R16,0
049E 10E0 ldi R17,0
04A0 20E0 ldi R18,0
04A2 30E0 ldi R19,0
04A4 .dbline -2
04A4 L29:
04A4 2896 adiw R28,8
04A6 0E940000 xcall pop_gset4
04AA .dbline 0 ; func end
04AA 0895 ret
04AC .dbsym l ultemp2 4 l
04AC .dbsym l ultemp1 0 l
04AC .dbsym r nyrsfm2 10 pc
04AC .dbsym r nyrsfm1 12 pc
04AC .dbend
04AC .dbfunc e SpanDay1 _SpanDay1 fl
04AC ; ulDays2 -> y+4
04AC ; ulDays1 -> y+0
04AC ; nyr2 -> R10,R11
04AC ; nyr1 -> R12,R13
.even
04AC _SpanDay1::
04AC 0E940000 xcall push_gset4
04B0 5901 movw R10,R18
04B2 6801 movw R12,R16
04B4 2897 sbiw R28,8
04B6 .dbline -1
04B6 .dbline 123
04B6 ; }
04B6 ;
04B6 ; unsigned long SpanDay1(unsigned char * nyr1,unsigned char * nyr2) //每月按31天算
04B6 ; {
04B6 .dbline 125
04B6 ; unsigned long ulDays1,ulDays2;
04B6 ; ulDays1=((unsigned long)nyr1[0])*((unsigned long)12)*((unsigned long)31)+((unsigned long)(nyr1[1]-1))*((unsigned long)31)+((unsigned long)(nyr1[2]-1));
04B6 F601 movw R30,R12
04B8 2080 ldd R2,z+0
04BA 3324 clr R3
04BC 4424 clr R4
04BE 5524 clr R5
04C0 4CE0 ldi R20,12
04C2 50E0 ldi R21,0
04C4 60E0 ldi R22,0
04C6 70E0 ldi R23,0
04C8 5A92 st -y,R5
04CA 4A92 st -y,R4
04CC 3A92 st -y,R3
04CE 2A92 st -y,R2
04D0 8A01 movw R16,R20
04D2 9B01 movw R18,R22
04D4 0E940000 xcall empy32u
04D8 4FE1 ldi R20,31
04DA 50E0 ldi R21,0
04DC 60E0 ldi R22,0
04DE 70E0 ldi R23,0
04E0 3A93 st -y,R19
04E2 2A93 st -y,R18
04E4 1A93 st -y,R17
04E6 0A93 st -y,R16
04E8 8A01 movw R16,R20
04EA 9B01 movw R18,R22
04EC 0E940000 xcall empy32u
04F0 1801 movw R2,R16
04F2 2901 movw R4,R18
04F4 F601 movw R30,R12
04F6 8181 ldd R24,z+1
04F8 9927 clr R25
04FA 0197 sbiw R24,1
04FC 3C01 movw R6,R24
04FE 8824 clr R8
0500 77FC sbrc R7,7
0502 8094 com R8
0504 9924 clr R9
0506 87FC sbrc R8,7
0508 9094 com R9
050A 4FE1 ldi R20,31
050C 50E0 ldi R21,0
050E 60E0 ldi R22,0
0510 70E0 ldi R23,0
0512 9A92 st -y,R9
0514 8A92 st -y,R8
0516 7A92 st -y,R7
0518 6A92 st -y,R6
051A 8A01 movw R16,R20
051C 9B01 movw R18,R22
051E 0E940000 xcall empy32u
0522 200E add R2,R16
0524 311E adc R3,R17
0526 421E adc R4,R18
0528 531E adc R5,R19
052A F601 movw R30,R12
052C 8281 ldd R24,z+2
052E 9927 clr R25
0530 0197 sbiw R24,1
0532 3C01 movw R6,R24
0534 8824 clr R8
0536 77FC sbrc R7,7
0538 8094 com R8
053A 9924 clr R9
053C 87FC sbrc R8,7
053E 9094 com R9
0540 260C add R2,R6
0542 371C adc R3,R7
0544 481C adc R4,R8
0546 591C adc R5,R9
0548 FE01 movw R30,R28
054A 2082 std z+0,R2
054C 3182 std z+1,R3
054E 4282 std z+2,R4
0550 5382 std z+3,R5
0552 .dbline 126
0552 ; ulDays2=((unsigned long)nyr2[0])*((unsigned long)12)*((unsigned long)31)+((unsigned long)(nyr2[1]-1))*((unsigned long)31)+((unsigned long)(nyr2[2]-1));
0552 F501 movw R30,R10
0554 2080 ldd R2,z+0
0556 3324 clr R3
0558 4424 clr R4
055A 5524 clr R5
055C 4CE0 ldi R20,12
055E 50E0 ldi R21,0
0560 60E0 ldi R22,0
0562 70E0 ldi R23,0
0564 5A92 st -y,R5
0566 4A92 st -y,R4
056A 2A92 st -y,R2
056C 8A01 movw R16,R20
056E 9B01 movw R18,R22
0570 0E940000 xcall empy32u
0574 4FE1 ldi R20,31
0576 50E0 ldi R21,0
0578 60E0 ldi R22,0
057A 70E0 ldi R23,0
057C 3A93 st -y,R19
057E 2A93 st -y,R18
0580 1A93 st -y,R17
0582 0A93 st -y,R16
0584 8A01 movw R16,R20
0586 9B01 movw R18,R22
0588 0E940000 xcall empy32u
058C 1801 movw R2,R16
058E 2901 movw R4,R18
0590 F501 movw R30,R10
0592 8181 ldd R24,z+1
0594 9927 clr R25
0596 0197 sbiw R24,1
0598 3C01 movw R6,R24
059A 8824 clr R8
059C 77FC sbrc R7,7
059E 8094 com R8
05A0 9924 clr R9
05A2 87FC sbrc R8,7
05A4 9094 com R9
05A6 4FE1 ldi R20,31
05A8 50E0 ldi R21,0
05AA 60E0 ldi R22,0
05AC 70E0 ldi R23,0
05AE 9A92 st -y,R9
05B0 8A92 st -y,R8
05B2 7A92 st -y,R7
05B4 6A92 st -y,R6
05B6 8A01 movw R16,R20
05B8 9B01 movw R18,R22
05BA 0E940000 xcall empy32u
05BE 200E add R2,R16
05C0 311E adc R3,R17
05C2 421E adc R4,R18
05C4 531E adc R5,R19
05C6 F501 movw R30,R10
05C8 8281 ldd R24,z+2
05CA 9927 clr R25
05CC 0197 sbiw R24,1
05CE 3C01 movw R6,R24
05D0 8824 clr R8
05D2 77FC sbrc R7,7
05D4 8094 com R8
05D6 9924 clr R9
05D8 87FC sbrc R8,7
05DA 9094 com R9
05DC 260C add R2,R6
05DE 371C adc R3,R7
05E0 481C adc R4,R8
05E2 591C adc R5,R9
05E4 FE01 movw R30,R28
05E6 2482 std z+4,R2
05E8 3582 std z+5,R3
05EA 4682 std z+6,R4
05EC 5782 std z+7,R5
05EE .dbline 127
05EE ; if(ulDays1>ulDays2) return (ulDays1-ulDays2);
05EE FE01 movw R30,R28
05F0 2480 ldd R2,z+4
05F2 3580 ldd R3,z+5
05F4 4680 ldd R4,z+6
05F6 5780 ldd R5,z+7
05F8 FE01 movw R30,R28
05FA 6080 ldd R6,z+0
05FC 7180 ldd R7,z+1
05FE 8280 ldd R8,z+2
0600 9380 ldd R9,z+3
0602 2614 cp R2,R6
0604 3704 cpc R3,R7
0606 4804 cpc R4,R8
0608 5904 cpc R5,R9
060A 88F4 brsh L33
060C .dbline 127
060C FE01 movw R30,R28
060E 2480 ldd R2,z+4
0610 3580 ldd R3,z+5
0612 4680 ldd R4,z+6
0614 5780 ldd R5,z+7
0616 FE01 movw R30,R28
0618 6080 ldd R6,z+0
061A 7180 ldd R7,z+1
061C 8280 ldd R8,z+2
061E 9380 ldd R9,z+3
0620 6218 sub R6,R2
0622 7308 sbc R7,R3
0624 8408 sbc R8,R4
0626 9508 sbc R9,R5
0628 8301 movw R16,R6
062A 9401 movw R18,R8
062C 04C0 xjmp L32
062E L33:
062E .dbline 128
062E ; else return 0;
062E 00E0 ldi R16,0
0630 10E0 ldi R17,0
0632 20E0 ldi R18,0
0634 30E0 ldi R19,0
0636 .dbline -2
0636 L32:
0636 2896 adiw R28,8
0638 0E940000 xcall pop_gset4
063C .dbline 0 ; func end
063C 0895 ret
063E .dbsym l ulDays2 4 l
063E .dbsym l ulDays1 0 l
063E .dbsym r nyr2 10 pc
063E .dbsym r nyr1 12 pc
063E .dbend
063E .dbfunc e SpanMonth _SpanMonth fl
063E ; ulMonth2 -> y+4
063E ; ulMonth1 -> y+0
063E ; ny2 -> R10,R11
063E ; ny1 -> R12,R13
.even
063E _SpanMonth::
063E 0E940000 xcall push_gset4
0642 5901 movw R10,R18
0644 6801 movw R12,R16
0646 2897 sbiw R28,8
0648 .dbline -1
0648 .dbline 132
0648 ; }
0648 ;
0648 ; unsigned long SpanMonth(unsigned char * ny1,unsigned char * ny2)
0648 ; {
0648 .dbline 134
0648 ; unsigned long ulMonth1,ulMonth2;
0648 ; ulMonth1=((unsigned long)ny1[0])*((unsigned long)12)+ny1[1]-1;
0648 F601 movw R30,R12
064A 2080 ldd R2,z+0
064C 3324 clr R3
064E 4424 clr R4
0650 5524 clr R5
0652 4CE0 ldi R20,12
0654 50E0 ldi R21,0
0656 60E0 ldi R22,0
0658 70E0 ldi R23,0
065A 5A92 st -y,R5
065C 4A92 st -y,R4
065E 3A92 st -y,R3
0660 2A92 st -y,R2
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -