📄 text2.lst
字号:
00336 F009 BEQ 0x0338
00337 DFB8 RCALL neg32
00338 9189 LD R24,Y+
00339 9069 LD R6,Y+
0033A 9059 LD R5,Y+
0033B 9049 LD R4,Y+
0033C 9508 RET
uint2fp:
0033D 9468 BSET 6
0033E C001 RJMP 0x0340
int2fp:
0033F 94E8 BCLR 6
00340 2722 CLR R18
00341 2733 CLR R19
00342 F046 BRTS 0x034B
00343 FD17 SBRC R17,7
00344 9520 COM R18
00345 FD17 SBRC R17,7
00346 9530 COM R19
00347 C003 RJMP 0x034B
ulong2fp:
00348 9468 BSET 6
00349 C001 RJMP 0x034B
long2fp:
0034A 94E8 BCLR 6
0034B 924A ST -Y,R4
0034C 925A ST -Y,R5
0034D 926A ST -Y,R6
0034E 938A ST -Y,R24
0034F E187 LDI R24,0x17
00350 2E48 MOV R4,R24
00351 2455 CLR R5
00352 2466 CLR R6
00353 F02E BRTS 0x0359
00354 2333 TST R19
00355 F41A BPL 0x0359
00356 DF99 RCALL neg32
00357 E880 LDI R24,0x80
00358 2E68 MOV R6,R24
00359 D0C1 RCALL normalize_and_pack
0035A 9189 LD R24,Y+
0035B 9069 LD R6,Y+
0035C 9059 LD R5,Y+
0035D 9049 LD R4,Y+
0035E 9508 RET
fpdiv1:
0035F 93FA ST -Y,R31
00360 93EA ST -Y,R30
00361 81EA LDD R30,Y+2
00362 81FB LDD R31,Y+3
00363 D027 RCALL 0x038B
00364 91E9 LD R30,Y+
00365 91F9 LD R31,Y+
00366 9622 ADIW R28,2
00367 9508 RET
fpdiv2:
00368 93FA ST -Y,R31
00369 93EA ST -Y,R30
0036A 2FEC MOV R30,R28
0036B 2FFD MOV R31,R29
0036C 9632 ADIW R30,2
0036D D01D RCALL 0x038B
0036E 91E9 LD R30,Y+
0036F 91F9 LD R31,Y+
00370 9624 ADIW R28,4
00371 9508 RET
fpdiv1x:
00372 93FA ST -Y,R31
00373 93EA ST -Y,R30
00374 81EA LDD R30,Y+2
00375 81FB LDD R31,Y+3
00376 D014 RCALL 0x038B
00377 91E9 LD R30,Y+
00378 91F9 LD R31,Y+
00379 8339 STD Y+1,R19
0037A 8328 ST Y,R18
0037B 931A ST -Y,R17
0037C 930A ST -Y,R16
0037D 9508 RET
fpdiv2x:
0037E 93FA ST -Y,R31
0037F 93EA ST -Y,R30
00380 2FEC MOV R30,R28
00381 2FFD MOV R31,R29
00382 9632 ADIW R30,2
00383 D007 RCALL 0x038B
00384 91E9 LD R30,Y+
00385 91F9 LD R31,Y+
00386 833B STD Y+3,R19
00387 832A STD Y+2,R18
00388 8319 STD Y+1,R17
00389 8308 ST Y,R16
0038A 9508 RET
0038B 920A ST -Y,R0
0038C 921A ST -Y,R1
0038D 922A ST -Y,R2
0038E 923A ST -Y,R3
0038F D0D0 RCALL saveFPRegs
00390 933A ST -Y,R19
00391 932A ST -Y,R18
00392 931A ST -Y,R17
00393 930A ST -Y,R16
00394 8100 LD R16,Z
00395 8111 LDD R17,Z+1
00396 8122 LDD R18,Z+2
00397 8133 LDD R19,Z+3
00398 D069 RCALL unpacku
00399 F409 BNE 0x039B
0039A C053 RJMP 0x03EE
0039B 2CE6 MOV R14,R6
0039C 2CD5 MOV R13,R5
0039D 2CC4 MOV R12,R4
0039E 2EB3 MOV R11,R19
0039F 2EA2 MOV R10,R18
003A0 2E91 MOV R9,R17
003A1 2E80 MOV R8,R16
003A2 9109 LD R16,Y+
003A3 9119 LD R17,Y+
003A4 9129 LD R18,Y+
003A5 9139 LD R19,Y+
003A6 D05B RCALL unpacku
003A7 F199 BEQ 0x03DB
003A8 246E EOR R6,R14
003A9 184C SUB R4,R12
003AA 085D SBC R5,R13
003AB E880 LDI R24,0x80
003AC 1648 CP R4,R24
003AD 0653 CPC R5,R19
003AE F00C BLT 0x03B0
003AF C031 RJMP 0x03E1
003B0 E881 LDI R24,0x81
003B1 1648 CP R4,R24
003B2 EF8F LDI R24,0xFF
003B3 0658 CPC R5,R24
003B4 F40C BGE 0x03B6
003B5 C033 RJMP 0x03E9
003B6 E280 LDI R24,0x20
003B7 2433 CLR R3
003B8 2E23 MOV R2,R19
003B9 2E12 MOV R1,R18
003BA 2E01 MOV R0,R17
003BB 2F30 MOV R19,R16
003BC 2722 CLR R18
003BD 2711 CLR R17
003BE 2700 CLR R16
003BF 9426 LSR R2
003C0 9417 ROR R1
003C1 9407 ROR R0
003C2 9537 ROR R19
003C3 9527 ROR R18
003C4 0F00 LSL R16
003C5 1F11 ROL R17
003C6 1F22 ROL R18
003C7 1F33 ROL R19
003C8 1C00 ROL R0
003C9 1C11 ROL R1
003CA 1C22 ROL R2
003CB 1C33 ROL R3
003CC F028 BCS 0x03D2
003CD 1808 SUB R0,R8
003CE 0819 SBC R1,R9
003CF 082A SBC R2,R10
003D0 083B SBC R3,R11
003D1 C004 RJMP 0x03D6
003D2 0C08 ADD R0,R8
003D3 1C19 ADC R1,R9
003D4 1C2A ADC R2,R10
003D5 1C3B ADC R3,R11
003D6 F00A BMI 0x03D8
003D7 6001 ORI R16,1
003D8 958A DEC R24
003D9 F751 BNE 0x03C4
003DA D040 RCALL normalize_and_pack
003DB D093 RCALL restoreFPRegs
003DC 9039 LD R3,Y+
003DD 9029 LD R2,Y+
003DE 9019 LD R1,Y+
003DF 9009 LD R0,Y+
003E0 9508 RET
003E1 EF0F LDI R16,0xFF
003E2 2F10 MOV R17,R16
003E3 E72F LDI R18,0x7F
003E4 E73F LDI R19,0x7F
003E5 2066 TST R6
003E6 F3A1 BEQ 0x03DB
003E7 DF08 RCALL neg32
003E8 CFF2 RJMP 0x03DB
003E9 2700 CLR R16
003EA 2F10 MOV R17,R16
003EB 2F20 MOV R18,R16
003EC 2F30 MOV R19,R16
003ED CFED RJMP 0x03DB
003EE 9109 LD R16,Y+
003EF 9119 LD R17,Y+
003F0 9129 LD R18,Y+
003F1 9139 LD R19,Y+
003F2 CFEE RJMP 0x03E1
unpacks:
003F3 D00E RCALL unpacku
003F4 F021 BEQ 0x03F9
003F5 2066 TST R6
003F6 F009 BEQ 0x03F8
003F7 DEF8 RCALL neg32
003F8 9498 BCLR 1
003F9 9508 RET
tstR16_R19:
003FA 2300 TST R16
003FB F429 BNE 0x0401
003FC 2311 TST R17
003FD F419 BNE 0x0401
003FE 2322 TST R18
003FF F409 BNE 0x0401
00400 2333 TST R19
00401 9508 RET
unpacku:
00402 DFF7 RCALL tstR16_R19
00403 F099 BEQ 0x0417
00404 938A ST -Y,R24
00405 2E63 MOV R6,R19
00406 E880 LDI R24,0x80
00407 2268 AND R6,R24
00408 0F22 LSL R18
00409 1F33 ROL R19
0040A 2E43 MOV R4,R19
0040B E78F LDI R24,0x7F
0040C 1A48 SUB R4,R24
0040D 2455 CLR R5
0040E 2788 CLR R24
0040F 0A58 SBC R5,R24
00410 9526 LSR R18
00411 E830 LDI R19,0x80
00412 2B23 OR R18,R19
00413 2733 CLR R19
00414 9189 LD R24,Y+
00415 9498 BCLR 1
00416 9508 RET
00417 2444 CLR R4
00418 2455 CLR R5
00419 2466 CLR R6
0041A 9508 RET
normalize_and_pack:
0041B DFDE RCALL tstR16_R19
0041C F409 BNE 0x041E
0041D 9508 RET
0041E 93AA ST -Y,R26
0041F 93BA ST -Y,R27
00420 01D2 MOVW R26,R4
00421 939A ST -Y,R25
00422 938A ST -Y,R24
00423 E78E LDI R24,0x7E
00424 E090 LDI R25,0
00425 2333 TST R19
00426 F049 BEQ 0x0430
00427 9536 LSR R19
00428 9527 ROR R18
00429 9517 ROR R17
0042A 9507 ROR R16
0042B 17A8 CP R26,R24
0042C 07B9 CPC R27,R25
0042D F4CC BGE 0x0447
0042E 9611 ADIW R26,1
0042F CFF5 RJMP 0x0425
00430 9580 COM R24
00431 9590 COM R25
00432 9601 ADIW R24,1
00433 2322 TST R18
00434 F0BA BMI 0x044C
00435 0F00 LSL R16
00436 1F11 ROL R17
00437 1F22 ROL R18
00438 17A8 CP R26,R24
00439 07B9 CPC R27,R25
0043A F014 BLT 0x043D
0043B 9711 SBIW R26,1
0043C CFF6 RJMP 0x0433
0043D 2700 CLR R16
0043E 2711 CLR R17
0043F 2722 CLR R18
00440 2733 CLR R19
00441 9189 LD R24,Y+
00442 9199 LD R25,Y+
00443 012D MOVW R4,R26
00444 91B9 LD R27,Y+
00445 91A9 LD R26,Y+
00446 9508 RET
00447 2733 CLR R19
00448 EF0F LDI R16,0xFF
00449 2F10 MOV R17,R16
0044A E72F LDI R18,0x7F
0044B 2F32 MOV R19,R18
0044C 9189 LD R24,Y+
0044D 9199 LD R25,Y+
0044E 012D MOVW R4,R26
0044F C002 RJMP 0x0452
pack:
00450 93AA ST -Y,R26
00451 93BA ST -Y,R27
00452 DFA7 RCALL tstR16_R19
00453 F049 BEQ 0x045D
00454 01D2 MOVW R26,R4
00455 58A1 SUBI R26,0x81
00456 4FBF SBCI R27,0xFF
00457 012D MOVW R4,R26
00458 2D34 MOV R19,R4
00459 0F22 LSL R18
0045A 9536 LSR R19
0045B 9527 ROR R18
0045C 2936 OR R19,R6
0045D 91B9 LD R27,Y+
0045E 91A9 LD R26,Y+
0045F 9508 RET
saveFPRegs:
00460 924A ST -Y,R4
00461 925A ST -Y,R5
00462 926A ST -Y,R6
00463 927A ST -Y,R7
00464 928A ST -Y,R8
00465 929A ST -Y,R9
00466 92AA ST -Y,R10
00467 92BA ST -Y,R11
00468 92CA ST -Y,R12
00469 92DA ST -Y,R13
0046A 92EA ST -Y,R14
0046B 92FA ST -Y,R15
0046C 938A ST -Y,R24
0046D 939A ST -Y,R25
0046E 9508 RET
restoreFPRegs:
0046F 9199 LD R25,Y+
00470 9189 LD R24,Y+
00471 90F9 LD R15,Y+
00472 90E9 LD R14,Y+
00473 90D9 LD R13,Y+
00474 90C9 LD R12,Y+
00475 90B9 LD R11,Y+
00476 90A9 LD R10,Y+
00477 9099 LD R9,Y+
00478 9089 LD R8,Y+
00479 9079 LD R7,Y+
0047A 9069 LD R6,Y+
0047B 9059 LD R5,Y+
0047C 9049 LD R4,Y+
0047D 9508 RET
fpmule:
0047E DFE1 RCALL saveFPRegs
0047F 93AA ST -Y,R26
00480 93BA ST -Y,R27
00481 DF80 RCALL unpacku
00482 F1D1 BEQ 0x04BD
00483 2CE6 MOV R14,R6
00484 2CD5 MOV R13,R5
00485 2CC4 MOV R12,R4
00486 2EB3 MOV R11,R19
00487 2EA2 MOV R10,R18
00488 2E91 MOV R9,R17
00489 2E80 MOV R8,R16
0048A 8100 LD R16,Z
0048B 8111 LDD R17,Z+1
0048C 8122 LDD R18,Z+2
0048D 8133 LDD R19,Z+3
0048E DF73 RCALL unpacku
0048F F169 BEQ 0x04BD
00490 246E EOR R6,R14
00491 0C4C ADD R4,R12
00492 1C5D ADC R5,R13
00493 E880 LDI R24,0x80
00494 1648 CP R4,R24
00495 0653 CPC R5,R19
00496 F554 BGE 0x04C1
00497 E881 LDI R24,0x81
00498 1648 CP R4,R24
00499 EF8F LDI R24,0xFF
0049A 0658 CPC R5,R24
0049B F15C BLT 0x04C7
0049C 9EA2 MUL R10,R18
0049D 2DB1 MOV R27,R1
0049E 2DA0 MOV R26,R0
0049F 9E91 MUL R9,R17
004A0 2D91 MOV R25,R1
004A1 2D80 MOV R24,R0
004A2 9EA0 MUL R10,R16
004A3 0D80 ADD R24,R0
004A4 1D91 ADC R25,R1
004A5 1FA3 ADC R26,R19
004A6 1FB3 ADC R27,R19
004A7 9E82 MUL R8,R18
004A8 0D80 ADD R24,R0
004A9 1D91 ADC R25,R1
004AA 1FA3 ADC R26,R19
004AB 1FB3 ADC R27,R19
004AC 9E92 MUL R9,R18
004AD 0D90 ADD R25,R0
004AE 1DA1 ADC R26,R1
004AF 1FB3 ADC R27,R19
004B0 9EA1 MUL R10,R17
004B1 0D90 ADD R25,R0
004B2 1DA1 ADC R26,R1
004B3 1FB3 ADC R27,R19
004B4 2F2B MOV R18,R27
004B5 2F1A MOV R17,R26
004B6 2F09 MOV R16,R25
004B7 0F88 LSL R24
004B8 1F00 ROL R16
004B9 1F11 ROL R17
004BA 1F22 ROL R18
004BB 1F33 ROL R19
004BC DF5E RCALL normalize_and_pack
004BD 91B9 LD R27,Y+
004BE 91A9 LD R26,Y+
004BF DFAF RCALL restoreFPRegs
004C0 9508 RET
004C1 EF0F LDI R16,0xFF
004C2 2F10 MOV R17,R16
004C3 E72F LDI R18,0x7F
004C4 E78F LDI R24,0x7F
004C5 2E48 MOV R4,R24
004C6 CFF6 RJMP 0x04BD
004C7 2700 CLR R16
004C8 2F10 MOV R17,R16
004C9 2F20 MOV R18,R16
004CA 2F30 MOV R19,R16
004CB CFF1 RJMP 0x04BD
fpmule1:
004CC 93FA ST -Y,R31
004CD 93EA ST -Y,R30
004CE 81EA LDD R30,Y+2
004CF 81FB LDD R31,Y+3
004D0 DFAD RCALL fpmule
004D1 91E9 LD R30,Y+
004D2 91F9 LD R31,Y+
004D3 9622 ADIW R28,2
004D4 9508 RET
fpmule2:
004D5 93FA ST -Y,R31
004D6 93EA ST -Y,R30
004D7 2FEC MOV R30,R28
004D8 2FFD MOV R31,R29
004D9 9632 ADIW R30,2
004DA DFA3 RCALL fpmule
004DB 91E9 LD R30,Y+
004DC 91F9 LD R31,Y+
004DD 9624 ADIW R28,4
004DE 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -