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

📄 car.lst

📁 本次设计的自动往返电动小汽车
💻 LST
📖 第 1 页 / 共 5 页
字号:
    04FB 9029      LD	R2,Y+
    04FC 9189      LD	R24,Y+
    04FD 90F9      LD	R15,Y+
    04FE 90E9      LD	R14,Y+
    04FF 90D9      LD	R13,Y+
    0500 9508      RET
stk2arg1:
    0501 842A      LDD	R2,Y+10
    0502 843B      LDD	R3,Y+11
    0503 844C      LDD	R4,Y+12
    0504 859D      LDD	R25,Y+13
    0505 9508      RET
stk2arg0:
    0506 850E      LDD	R16,Y+14
    0507 851F      LDD	R17,Y+15
    0508 8928      LDD	R18,Y+16
    0509 8939      LDD	R19,Y+17
    050A 9508      RET
float_epilog:
    050B DFEA      RCALL	restore_floatregs
    050C 920F      PUSH	R0
    050D B60F      IN	R0,0x3F
    050E 9628      ADIW	R28,0x8
    050F BE0F      OUT	0x3F,R0
    0510 900F      POP	R0
    0511 9508      RET
float_prolog:
    0512 DFD8      RCALL	save_floatregs
    0513 DFF2      RCALL	stk2arg0
    0514 CFEC      RJMP	stk2arg1
add32fs:
    0515 D001      RCALL	add32f
    0516 CEE1      RJMP	push_arg4
add32f:
    0517 DFFA      RCALL	float_prolog
    0518 D00D      RCALL	FADD
    0519 CFF1      RJMP	float_epilog
sub32fs:
    051A D001      RCALL	sub32f
    051B CEDC      RJMP	push_arg4
sub32f:
    051C DFF5      RCALL	float_prolog
    051D D007      RCALL	FSUB
    051E CFEC      RJMP	float_epilog
fret2:
    051F 2F8A      MOV	R24,R26
    0520 2F39      MOV	R19,R25
    0521 2D24      MOV	R18,R4
    0522 2D13      MOV	R17,R3
    0523 2D02      MOV	R16,R2
    0524 C140      RJMP	repack
FSUB:
    0525 5890      SUBI	R25,0x80
FADD:
    0526 D12C      RCALL	unpack
    0527 3890      CPI	R25,0x80
    0528 F3D9      BEQ	0x0524
    0529 3830      CPI	R19,0x80
    052A F3A1      BEQ	0x051F
    052B 2FB3      MOV	R27,R19
    052C 1BB9      SUB	R27,R25
    052D F3B3      BVS	0x0524
    052E F02A      BMI	0x0534
    052F F431      BNE	0x0536
    0530 1502      CP	R16,R2
    0531 0513      CPC	R17,R3
    0532 0524      CPC	R18,R4
    0533 F410      BCC	0x0536
    0534 D112      RCALL	swapacc
    0535 CFF5      RJMP	0x052B
    0536 31B8      CPI	R27,0x18
    0537 F018      BCS	0x053B
    0538 2422      CLR	R2
    0539 2433      CLR	R3
    053A 2444      CLR	R4
    053B 30B8      CPI	R27,0x8
    053C F028      BCS	0x0542
    053D 2C23      MOV	R2,R3
    053E 2C34      MOV	R3,R4
    053F 2444      CLR	R4
    0540 50B8      SUBI	R27,0x8
    0541 CFF9      RJMP	0x053B
    0542 23BB      TST	R27
    0543 F029      BEQ	0x0549
    0544 9446      LSR	R4
    0545 9437      ROR	R3
    0546 9427      ROR	R2
    0547 95BA      DEC	R27
    0548 F7D9      BNE	0x0544
    0549 2FB8      MOV	R27,R24
    054A 27BA      EOR	R27,R26
    054B F042      BMI	0x0554
    054C D014      RCALL	0x0561
    054D F6B0      BCC	0x0524
    054E 9527      ROR	R18
    054F 9517      ROR	R17
    0550 9507      ROR	R16
    0551 5F3F      SUBI	R19,0xFF
    0552 F68B      BVC	0x0524
    0553 C0E0      RJMP	maxres
    0554 D010      RCALL	usub24
    0555 F409      BNE	0x0557
    0556 C0E4      RJMP	minres
    0557 F408      BCC	0x0559
    0558 D0D5      RCALL	negmant
    0559 2322      TST	R18
    055A F24A      BMI	0x0524
    055B 0F00      LSL	R16
    055C 1F11      ROL	R17
    055D 1F22      ROL	R18
    055E 5031      SUBI	R19,1
    055F F7CB      BVC	0x0559
    0560 C0D3      RJMP	maxres
    0561 0D02      ADD	R16,R2
    0562 1D13      ADC	R17,R3
    0563 1D24      ADC	R18,R4
    0564 9508      RET
usub24:
    0565 1902      SUB	R16,R2
    0566 0913      SBC	R17,R3
    0567 0924      SBC	R18,R4
    0568 9508      RET
div32fs:
    0569 D001      RCALL	div32f
    056A CE8D      RJMP	push_arg4
div32f:
    056B DFA6      RCALL	float_prolog
    056C D022      RCALL	FDIV
    056D CF9D      RJMP	float_epilog
    056E 93BA      ST	R27,-Y
    056F 24DD      CLR	R13
    0570 24EE      CLR	R14
    0571 24FF      CLR	R15
    0572 E1B8      LDI	R27,0x18
    0573 1502      CP	R16,R2
    0574 0513      CPC	R17,R3
    0575 0524      CPC	R18,R4
    0576 F028      BCS	0x057C
    0577 1902      SUB	R16,R2
    0578 0913      SBC	R17,R3
    0579 0924      SBC	R18,R4
    057A 9408      BSET	0
    057B C001      RJMP	0x057D
    057C 9488      BCLR	0
    057D 1CDD      ROL	R13
    057E 1CEE      ROL	R14
    057F 1CFF      ROL	R15
    0580 0F00      LSL	R16
    0581 1F11      ROL	R17
    0582 1F22      ROL	R18
    0583 95BA      DEC	R27
    0584 F771      BNE	0x0573
    0585 2D0D      MOV	R16,R13
    0586 2D1E      MOV	R17,R14
    0587 2D2F      MOV	R18,R15
    0588 91B9      LD	R27,Y+
    0589 9508      RET
fdiv10:
    058A 2422      CLR	R2
    058B 2433      CLR	R3
    058C E2B0      LDI	R27,0x20
    058D 2E4B      MOV	R4,R27
    058E E491      LDI	R25,0x41
FDIV:
    058F 2399      TST	R25
    0590 F119      BEQ	0x05B4
    0591 2333      TST	R19
    0592 F141      BEQ	0x05BB
    0593 D0BF      RCALL	unpack
    0594 F131      BEQ	0x05BB
    0595 278A      EOR	R24,R26
    0596 9408      BSET	0
    0597 0B39      SBC	R19,R25
    0598 F0E3      BVS	0x05B5
    0599 9446      LSR	R4
    059A 9437      ROR	R3
    059B 9427      ROR	R2
    059C 9526      LSR	R18
    059D 9517      ROR	R17
    059E 9507      ROR	R16
    059F DFCE      RCALL	0x056E
    05A0 2322      TST	R18
    05A1 F02A      BMI	0x05A7
    05A2 0F00      LSL	R16
    05A3 1F11      ROL	R17
    05A4 1F22      ROL	R18
    05A5 5031      SUBI	R19,1
    05A6 F073      BVS	0x05B5
    05A7 2FB0      MOV	R27,R16
    05A8 95B6      LSR	R27
    05A9 F048      BCS	0x05B3
    05AA 2300      TST	R16
    05AB F43A      BPL	0x05B3
    05AC 2311      TST	R17
    05AD F42A      BPL	0x05B3
    05AE E0B1      LDI	R27,1
    05AF 0F0B      ADD	R16,R27
    05B0 27BB      CLR	R27
    05B1 1F1B      ADC	R17,R27
    05B2 1F2B      ADC	R18,R27
    05B3 C0B1      RJMP	repack
    05B4 C006      RJMP	0x05BB
    05B5 E7BF      LDI	R27,0x7F
    05B6 2F3B      MOV	R19,R27
    05B7 2B2B      OR	R18,R27
    05B8 EF0F      LDI	R16,0xFF
    05B9 EF1F      LDI	R17,0xFF
    05BA 9508      RET
    05BB 2700      CLR	R16
    05BC 2711      CLR	R17
    05BD 2722      CLR	R18
    05BE 2733      CLR	R19
    05BF 2788      CLR	R24
    05C0 9508      RET
cmp32f:
    05C1 DF50      RCALL	float_prolog
    05C2 D001      RCALL	FLTCP
    05C3 CF47      RJMP	float_epilog
FLTCP:
    05C4 D002      RCALL	0x05C7
    05C5 23BB      TST	R27
    05C6 9508      RET
    05C7 2333      TST	R19
    05C8 F082      BMI	0x05D9
    05C9 2399      TST	R25
    05CA F042      BMI	0x05D3
    05CB 1739      CP	R19,R25
    05CC F040      BCS	0x05D5
    05CD F429      BNE	0x05D3
    05CE 1502      CP	R16,R2
    05CF 0513      CPC	R17,R3
    05D0 0524      CPC	R18,R4
    05D1 F018      BCS	0x05D5
    05D2 F021      BEQ	0x05D7
    05D3 E0B1      LDI	R27,1
    05D4 9508      RET
    05D5 EFBF      LDI	R27,0xFF
    05D6 9508      RET
    05D7 27BB      CLR	R27
    05D8 9508      RET
    05D9 2399      TST	R25
    05DA F7D2      BPL	0x05D5
    05DB 1739      CP	R19,R25
    05DC F3B0      BCS	0x05D3
    05DD F7B9      BNE	0x05D5
    05DE 1502      CP	R16,R2
    05DF 0513      CPC	R17,R3
    05E0 0524      CPC	R18,R4
    05E1 F388      BCS	0x05D3
    05E2 F3A1      BEQ	0x05D7
    05E3 CFF1      RJMP	0x05D5
    05E4 E7BF      LDI	R27,0x7F
    05E5 2F3B      MOV	R19,R27
    05E6 2B2B      OR	R18,R27
    05E7 EF0F      LDI	R16,0xFF
    05E8 EF1F      LDI	R17,0xFF
    05E9 9508      RET
    05EA 2700      CLR	R16
    05EB 2711      CLR	R17
    05EC 2722      CLR	R18
    05ED 2733      CLR	R19
    05EE 2788      CLR	R24
    05EF 9508      RET
mpy32fs:
    05F0 D001      RCALL	mpy32f
    05F1 CE06      RJMP	push_arg4
mpy32f:
    05F2 DF1F      RCALL	float_prolog
    05F3 D001      RCALL	FMUL
    05F4 CF16      RJMP	float_epilog
FMUL:
    05F5 D05D      RCALL	unpack
    05F6 F399      BEQ	0x05EA
    05F7 3890      CPI	R25,0x80
    05F8 F389      BEQ	0x05EA
    05F9 278A      EOR	R24,R26
    05FA 9408      BSET	0
    05FB 1F39      ADC	R19,R25
    05FC F33B      BVS	0x05E4
    05FD D00A      RCALL	umul24
    05FE 2322      TST	R18
    05FF F02A      BMI	0x0605
    0600 953A      DEC	R19
    0601 0CFF      LSL	R15
    0602 1F00      ROL	R16
    0603 1F11      ROL	R17
    0604 1F22      ROL	R18
    0605 5F3F      SUBI	R19,0xFF
    0606 F2EB      BVS	0x05E4
    0607 C05D      RJMP	repack
umul24:
    0608 939A      ST	R25,-Y
    0609 24DD      CLR	R13
    060A 24EE      CLR	R14
    060B 24FF      CLR	R15
    060C 27BB      CLR	R27
    060D E198      LDI	R25,0x18
    060E 0CDD      LSL	R13
    060F 1CEE      ROL	R14
    0610 1CFF      ROL	R15
    0611 1F00      ROL	R16
    0612 1F11      ROL	R17
    0613 1F22      ROL	R18
    0614 F430      BCC	0x061B
    0615 0CD2      ADD	R13,R2
    0616 1CE3      ADC	R14,R3
    0617 1CF4      ADC	R15,R4
    0618 1F0B      ADC	R16,R27
    0619 1F1B      ADC	R17,R27
    061A 1F2B      ADC	R18,R27
    061B 959A      DEC	R25
    061C F789      BNE	0x060E
    061D 9199      LD	R25,Y+
    061E 9508      RET
savfacc1:
    061F 938A      ST	R24,-Y
    0620 93BA      ST	R27,-Y
    0621 9508      RET
restorefacc1:
    0622 91B9      LD	R27,Y+
    0623 9189      LD	R24,Y+
    0624 9508      RET
unpackfacc1:
    0625 2F83      MOV	R24,R19
    0626 7880      ANDI	R24,0x80
    0627 0F22      LSL	R18
    0628 1F33      ROL	R19
    0629 5830      SUBI	R19,0x80
    062A 9408      BSET	0
    062B 9527      ROR	R18
    062C 3830      CPI	R19,0x80
    062D 9508      RET
negmant:
    062E 9510      COM	R17
    062F 9520      COM	R18
    0630 9501      NEG	R16
    0631 4F1F      SBCI	R17,0xFF
    0632 4F2F      SBCI	R18,0xFF
    0633 9508      RET
maxres:
    0634 E7BF      LDI	R27,0x7F
    0635 2F3B      MOV	R19,R27
    0636 2B2B      OR	R18,R27
    0637 EFBF      LDI	R27,0xFF
    0638 2F0B      MOV	R16,R27
    0639 2F1B      MOV	R17,R27
    063A 9508      RET
minres:
    063B 2700      CLR	R16
    063C 2711      CLR	R17
    063D 2722      CLR	R18
    063E 2733      CLR	R19
    063F 2788      CLR	R24
    0640 9508      RET
ac1toac2:
    0641 2F93      MOV	R25,R19
    0642 2E20      MOV	R2,R16
    0643 2E31      MOV	R3,R17
    0644 2E42      MOV	R4,R18
    0645 2FA8      MOV	R26,R24
    0646 9508      RET
swapacc:
    0647 922A      ST	R2,-Y
    0648 923A      ST	R3,-Y
    0649 924A      ST	R4,-Y
    064A 939A      ST	R25,-Y
    064B 93AA      ST	R26,-Y
    064C DFF4      RCALL	ac1toac2
    064D 9189      LD	R24,Y+
    064E 9139      LD	R19,Y+
    064F 9129      LD	R18,Y+
    0650 9119      LD	R17,Y+
    0651 9109      LD	R16,Y+
    0652 9508      RET
unpack:
    0653 2F83      MOV	R24,R19
    0654 E8B0      LDI	R27,0x80
    0655 0F22      LSL	R18
    0656 1F33      ROL	R19
    0657 273B      EOR	R19,R27
    0658 0FBB      LSL	R27
    0659 9527      ROR	R18
    065A 7880      ANDI	R24,0x80
    065B 2FA9      MOV	R26,R25
    065C E8B0      LDI	R27,0x80
    065D 0C44      LSL	R4
    065E 1F99      ROL	R25
    065F 279B      EOR	R25,R27
    0660 0FBB      LSL	R27
    0661 9447      ROR	R4
    0662 78A0      ANDI	R26,0x80
    0663 3830      CPI	R19,0x80
    0664 9508      RET
repack:
    0665 0F22      LSL	R18
    0666 E8B0      LDI	R27,0x80
    0667 27B3      EOR	R27,R19
    0668 0F88      LSL	R24
    0669 95B7      ROR	R27
    066A 9527      ROR	R18
    066B 2F3B      MOV	R19,R27
    066C 9508      RET

⌨️ 快捷键说明

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