📄 1820.lst
字号:
03D6 E030 LDI R19,0
03D7 940E0404 CALL div16u
03D9 8319 STD Y+1,R17
03DA 8308 STD Y+0,R16
03DB E024 LDI R18,4
03DC E002 LDI R16,2
03DD DE8C RCALL _lcd_write2
(0124) lcd_write2(2,5,temprter%10000%1000%100%10); //显示小数点后两位
03DE E120 LDI R18,0x10
03DF E237 LDI R19,0x27
03E0 9100006F LDS R16,temprter
03E2 91100070 LDS R17,temprter+1
03E4 940E0402 CALL mod16u
03E6 EE28 LDI R18,0xE8
03E7 E033 LDI R19,3
03E8 940E0402 CALL mod16u
03EA E624 LDI R18,0x64
03EB E030 LDI R19,0
03EC 940E0402 CALL mod16u
03EE E02A LDI R18,0xA
03EF E030 LDI R19,0
03F0 940E0402 CALL mod16u
03F2 8319 STD Y+1,R17
03F3 8308 STD Y+0,R16
03F4 E025 LDI R18,5
03F5 E002 LDI R16,2
03F6 DE73 RCALL _lcd_write2
(0125) delay_nms(500);
FILE: <library>
03F7 EF04 LDI R16,0xF4
03F8 E011 LDI R17,1
03F9 DC78 RCALL _delay_nms
03FA CF96 RJMP 0x0391
03FB 9622 ADIW R28,2
03FC 9508 RET
push_arg4:
03FD 933A ST R19,-Y
03FE 932A ST R18,-Y
push_arg2:
03FF 931A ST R17,-Y
0400 930A ST R16,-Y
0401 9508 RET
mod16u:
0402 9468 BSET 6
0403 C001 RJMP xdiv16u
div16u:
0404 94E8 BCLR 6
xdiv16u:
0405 92EA ST R14,-Y
0406 92FA ST R15,-Y
0407 938A ST R24,-Y
0408 24EE CLR R14
0409 24FF CLR R15
040A E180 LDI R24,0x10
040B 0F00 LSL R16
040C 1F11 ROL R17
040D 1CEE ROL R14
040E 1CFF ROL R15
040F 16E2 CP R14,R18
0410 06F3 CPC R15,R19
0411 F018 BCS 0x0415
0412 1AE2 SUB R14,R18
0413 0AF3 SBC R15,R19
0414 9503 INC R16
0415 958A DEC R24
0416 F7A1 BNE 0x040B
0417 F416 BRTC 0x041A
0418 2D0E MOV R16,R14
0419 2D1F MOV R17,R15
041A 9189 LD R24,Y+
041B 90F9 LD R15,Y+
041C 90E9 LD R14,Y+
041D 9508 RET
mod8u:
041E 9468 BSET 6
041F C001 RJMP xdiv8u
div8u:
0420 94E8 BCLR 6
xdiv8u:
0421 932A ST R18,-Y
0422 92FA ST R15,-Y
0423 92EA ST R14,-Y
0424 24FF CLR R15
0425 24EE CLR R14
0426 E120 LDI R18,0x10
0427 0F00 LSL R16
0428 1CFF ROL R15
0429 1CEE ROL R14
042A 16E1 CP R14,R17
042B F010 BCS 0x042E
042C 1AE1 SUB R14,R17
042D 9503 INC R16
042E 952A DEC R18
042F F7B9 BNE 0x0427
0430 F40E BRTC 0x0432
0431 2D0E MOV R16,R14
0432 90E9 LD R14,Y+
0433 90F9 LD R15,Y+
0434 9129 LD R18,Y+
0435 9508 RET
empy16s:
0436 920A ST R0,-Y
0437 921A ST R1,-Y
0438 938A ST R24,-Y
0439 939A ST R25,-Y
043A 9F02 MUL R16,R18
043B 01C0 MOVW R24,R0
043C 9F12 MUL R17,R18
043D 0D90 ADD R25,R0
043E 9F03 MUL R16,R19
043F 0D90 ADD R25,R0
0440 018C MOVW R16,R24
0441 9199 LD R25,Y+
0442 9189 LD R24,Y+
0443 9019 LD R1,Y+
0444 9009 LD R0,Y+
0445 9508 RET
pop_gset2:
0446 E0E2 LDI R30,2
0447 940C0458 JMP pop
pop_gset3:
0449 E0E4 LDI R30,4
044A 940C0458 JMP pop
push_gset5:
044C 92FA ST R15,-Y
044D 92EA ST R14,-Y
push_gset4:
044E 92DA ST R13,-Y
044F 92CA ST R12,-Y
push_gset3:
0450 92BA ST R11,-Y
0451 92AA ST R10,-Y
push_gset2:
0452 937A ST R23,-Y
0453 936A ST R22,-Y
push_gset1:
0454 935A ST R21,-Y
0455 934A ST R20,-Y
0456 9508 RET
pop_gset1:
0457 E0E1 LDI R30,1
pop:
0458 9149 LD R20,Y+
0459 9159 LD R21,Y+
045A FDE0 SBRC R30,0
045B 9508 RET
045C 9169 LD R22,Y+
045D 9179 LD R23,Y+
045E FDE1 SBRC R30,1
045F 9508 RET
0460 90A9 LD R10,Y+
0461 90B9 LD R11,Y+
0462 FDE2 SBRC R30,2
0463 9508 RET
0464 90C9 LD R12,Y+
0465 90D9 LD R13,Y+
0466 FDE3 SBRC R30,3
0467 9508 RET
0468 90E9 LD R14,Y+
0469 90F9 LD R15,Y+
046A 9508 RET
neg32:
046B 9500 COM R16
046C 9510 COM R17
046D 9520 COM R18
046E 9530 COM R19
046F 5F0F SUBI R16,0xFF
0470 4F1F SBCI R17,0xFF
0471 4F2F SBCI R18,0xFF
0472 4F3F SBCI R19,0xFF
0473 9508 RET
lpm32:
0474 93EA ST R30,-Y
0475 93FA ST R31,-Y
0476 920A ST R0,-Y
0477 2FE0 MOV R30,R16
0478 2FF1 MOV R31,R17
0479 95C8 LPM
047A 2D00 MOV R16,R0
047B 9631 ADIW R30,1
047C 95C8 LPM
047D 2D10 MOV R17,R0
047E 9631 ADIW R30,1
047F 95C8 LPM
0480 2D20 MOV R18,R0
0481 9631 ADIW R30,1
0482 95C8 LPM
0483 2D30 MOV R19,R0
0484 9009 LD R0,Y+
0485 91F9 LD R31,Y+
0486 91E9 LD R30,Y+
0487 9508 RET
lsl8:
0488 2311 TST R17
0489 F019 BEQ 0x048D
048A 0F00 LSL R16
048B 951A DEC R17
048C CFFB RJMP lsl8
048D 9508 RET
fp2int:
048E 940E060F CALL savfacc1
0490 D014 RCALL FTOI
0491 2F02 MOV R16,R18
0492 2F13 MOV R17,R19
0493 FD87 SBRC R24,7
0494 C002 RJMP nojump1
0495 940C0612 JMP restorefacc1
nojump1:
0497 9510 COM R17
0498 9501 NEG R16
0499 4F1F SBCI R17,0xFF
049A 940C0612 JMP restorefacc1
fp2long:
049C 940E060F CALL savfacc1
049E D008 RCALL FTOL
049F FF87 SBRS R24,7
04A0 C002 RJMP nojump2
04A1 940E046B CALL neg32
nojump2:
04A3 940C0612 JMP restorefacc1
FTOI:
04A5 E0BE LDI R27,0xE
04A6 C001 RJMP 0x04A8
FTOL:
04A7 E1BE LDI R27,0x1E
04A8 940E0615 CALL unpackfacc1
04AA F069 BEQ 0x04B8
04AB 1BB3 SUB R27,R19
04AC F009 BEQ 0x04AE
04AD F472 BPL 0x04BC
04AE 2388 TST R24
04AF F022 BMI 0x04B4
04B0 E010 LDI R17,0
04B1 E60E LDI R16,0x6E
04B2 940C0474 JMP lpm32
04B4 E010 LDI R17,0
04B5 E704 LDI R16,0x74
04B6 940C0474 JMP lpm32
04B8 E010 LDI R17,0
04B9 E702 LDI R16,0x72
04BA 940C0474 JMP lpm32
04BC 9533 INC R19
04BD F3D2 BMI 0x04B8
04BE E030 LDI R19,0
04BF 50B8 SUBI R27,0x8
04C0 F452 BPL 0x04CB
04C1 5FB8 SUBI R27,0xF8
04C2 2F32 MOV R19,R18
04C3 2F21 MOV R18,R17
04C4 2F10 MOV R17,R16
04C5 E800 LDI R16,0x80
04C6 C006 RJMP 0x04CD
04C7 2F01 MOV R16,R17
04C8 2F12 MOV R17,R18
04C9 E020 LDI R18,0
04CA 50B8 SUBI R27,0x8
04CB 30B8 CPI R27,0x8
04CC F7D0 BCC 0x04C7
04CD 23BB TST R27
04CE F031 BEQ 0x04D5
04CF 9536 LSR R19
04D0 9527 ROR R18
04D1 9517 ROR R17
04D2 9507 ROR R16
04D3 95BA DEC R27
04D4 F7D1 BNE 0x04CF
04D5 9508 RET
int2fp:
04D6 2722 CLR R18
04D7 FD17 SBRC R17,7
04D8 9520 COM R18
04D9 2733 CLR R19
04DA FD27 SBRC R18,7
04DB 9530 COM R19
long2fp:
04DC 940E060F CALL savfacc1
04DE D002 RCALL ITOF
04DF 940C0612 JMP restorefacc1
ITOF:
04E1 2788 CLR R24
04E2 2333 TST R19
04E3 F41A BPL 0x04E7
04E4 940E046B CALL neg32
04E6 9580 COM R24
04E7 2FB0 MOV R27,R16
04E8 2BB1 OR R27,R17
04E9 2BB2 OR R27,R18
04EA 2BB3 OR R27,R19
04EB F411 BNE 0x04EE
04EC 940C062B JMP minres
04EE E1B6 LDI R27,0x16
04EF C005 RJMP itof2
04F0 95B3 INC R27
04F1 9536 LSR R19
04F2 9527 ROR R18
04F3 9517 ROR R17
04F4 9507 ROR R16
itof2:
04F5 2333 TST R19
04F6 F7C9 BNE 0x04F0
itof3:
04F7 2322 TST R18
04F8 F449 BNE 0x0502
04F9 50B8 SUBI R27,0x8
04FA 2F21 MOV R18,R17
04FB 2F10 MOV R17,R16
04FC E000 LDI R16,0
04FD CFF9 RJMP itof3
04FE 95BA DEC R27
04FF 0F00 LSL R16
0500 1F11 ROL R17
0501 1F22 ROL R18
0502 F7DA BPL 0x04FE
0503 2F3B MOV R19,R27
0504 940C0655 JMP repack
save_floatregs:
0506 92DA ST R13,-Y
0507 92EA ST R14,-Y
0508 92FA ST R15,-Y
0509 938A ST R24,-Y
050A 922A ST R2,-Y
050B 923A ST R3,-Y
050C 924A ST R4,-Y
050D 939A ST R25,-Y
050E 93AA ST R26,-Y
050F 93BA ST R27,-Y
0510 9508 RET
restore_floatregs:
0511 91B9 LD R27,Y+
0512 91A9 LD R26,Y+
0513 9199 LD R25,Y+
0514 9049 LD R4,Y+
0515 9039 LD R3,Y+
0516 9029 LD R2,Y+
0517 9189 LD R24,Y+
0518 90F9 LD R15,Y+
0519 90E9 LD R14,Y+
051A 90D9 LD R13,Y+
051B 9508 RET
stk2arg1:
051C 842A LDD R2,Y+10
051D 843B LDD R3,Y+11
051E 844C LDD R4,Y+12
051F 859D LDD R25,Y+13
0520 9508 RET
stk2arg0:
0521 850E LDD R16,Y+14
0522 851F LDD R17,Y+15
0523 8928 LDD R18,Y+16
0524 8939 LDD R19,Y+17
0525 9508 RET
float_epilog:
0526 DFEA RCALL restore_floatregs
0527 920F PUSH R0
0528 B60F IN R0,0x3F
0529 9628 ADIW R28,0x8
052A BE0F OUT 0x3F,R0
052B 900F POP R0
052C 9508 RET
float_prolog:
052D DFD8 RCALL save_floatregs
052E DFF2 RCALL stk2arg0
052F CFEC RJMP stk2arg1
add32fs:
0530 D002 RCALL add32f
0531 940C03FD JMP push_arg4
add32f:
0533 940E052D CALL float_prolog
0535 D012 RCALL FADD
0536 940C0526 JMP float_epilog
sub32fs:
0538 D002 RCALL sub32f
0539 940C03FD JMP push_arg4
sub32f:
053B 940E052D CALL float_prolog
053D D009 RCALL FSUB
053E 940C0526 JMP float_epilog
fret2:
0540 2F8A MOV R24,R26
0541 2F39 MOV R19,R25
0542 2D24 MOV R18,R4
0543 2D13 MOV R17,R3
0544 2D02 MOV R16,R2
0545 940C0655 JMP repack
FSUB:
0547 5890 SUBI R25,0x80
FADD:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -