📄 edu.lst
字号:
0599 53A5 SUBI R26,0x35
059A 4FBF SBCI R27,0xFF
059B 91EC LD R30,0(X)
059C 27FF CLR R31
059D 0FE8 ADD R30,R24
059E 1FF9 ADC R31,R25
059F 8180 LDD R24,Z+0
05A0 7E8F ANDI R24,0xEF
05A1 93800144 STS _lcd_buffer+2,R24
(0425) lcd_buffer[10]=table[j];
05A3 E680 LDI R24,0x60
05A4 E090 LDI R25,0
05A5 01DE MOVW R26,R28
05A6 53A4 SUBI R26,0x34
05A7 4FBF SBCI R27,0xFF
05A8 91EC LD R30,0(X)
05A9 27FF CLR R31
05AA 0FE8 ADD R30,R24
05AB 1FF9 ADC R31,R25
05AC 8020 LDD R2,Z+0
05AD 9220014C STS 0x14C,R2
(0426) send_data(4,lcd_buffer[2]);
05AF 91200144 LDS R18,_lcd_buffer+2
05B1 E004 LDI R16,4
05B2 940E0A59 CALL _send_data
(0427) send_data(20,lcd_buffer[10]);
05B4 9120014C LDS R18,0x14C
05B6 E104 LDI R16,0x14
05B7 940E0A59 CALL _send_data
(0428) send_data(24,lcd_buffer[12]);
05B9 9120014E LDS R18,0x14E
05BB E108 LDI R16,0x18
05BC 940E0A59 CALL _send_data
(0429)
(0430) key=key_scan();
05BE 940E0AB7 CALL _key_scan
05C0 01FE MOVW R30,R28
05C1 53E2 SUBI R30,0x32
05C2 4FFF SBCI R31,0xFF
05C3 8300 STD Z+0,R16
(0431) if(key==9||key==6)
05C4 3009 CPI R16,0x9
05C5 F019 BEQ 0x05C9
05C6 3006 CPI R16,6
05C7 F009 BEQ 0x05C9
05C8 C0BF RJMP 0x0688
(0432) {
(0433) if(key==9)
05C9 01FE MOVW R30,R28
05CA 53E2 SUBI R30,0x32
05CB 4FFF SBCI R31,0xFF
05CC 8180 LDD R24,Z+0
05CD 3089 CPI R24,0x9
05CE F449 BNE 0x05D8
(0434) ques_id++;
05CF 01FE MOVW R30,R28
05D0 53E3 SUBI R30,0x33
05D1 4FFF SBCI R31,0xFF
05D2 8000 LDD R0,Z+0
05D3 9403 INC R0
05D4 01FE MOVW R30,R28
05D5 53E3 SUBI R30,0x33
05D6 4FFF SBCI R31,0xFF
05D7 8200 STD Z+0,R0
(0435) if(ques_id>ques_num)
05D8 9020006C LDS R2,_ques_num
05DA 01FE MOVW R30,R28
05DB 53E3 SUBI R30,0x33
05DC 4FFF SBCI R31,0xFF
05DD 8000 LDD R0,Z+0
05DE 1420 CP R2,R0
05DF F430 BCC 0x05E6
(0436) ques_id=1;
05E0 2400 CLR R0
05E1 9403 INC R0
05E2 01FE MOVW R30,R28
05E3 53E3 SUBI R30,0x33
05E4 4FFF SBCI R31,0xFF
05E5 8200 STD Z+0,R0
(0437) if(key==6)
05E6 01FE MOVW R30,R28
05E7 53E2 SUBI R30,0x32
05E8 4FFF SBCI R31,0xFF
05E9 8180 LDD R24,Z+0
05EA 3086 CPI R24,6
05EB F449 BNE 0x05F5
(0438) ques_id--;
05EC 01FE MOVW R30,R28
05ED 53E3 SUBI R30,0x33
05EE 4FFF SBCI R31,0xFF
05EF 8000 LDD R0,Z+0
05F0 940A DEC R0
05F1 01FE MOVW R30,R28
05F2 53E3 SUBI R30,0x33
05F3 4FFF SBCI R31,0xFF
05F4 8200 STD Z+0,R0
(0439) if(ques_id<1)
05F5 01FE MOVW R30,R28
05F6 53E3 SUBI R30,0x33
05F7 4FFF SBCI R31,0xFF
05F8 8180 LDD R24,Z+0
05F9 3081 CPI R24,1
05FA F430 BCC 0x0601
(0440) ques_id=ques_num;
05FB 9020006C LDS R2,_ques_num
05FD 01FE MOVW R30,R28
05FE 53E3 SUBI R30,0x33
05FF 4FFF SBCI R31,0xFF
0600 8220 STD Z+0,R2
(0441)
(0442) //ques_id
(0443) if(ques[ques_id-1]&0x01)
0601 ED8A LDI R24,0xDA
0602 E090 LDI R25,0
0603 01DE MOVW R26,R28
0604 53A3 SUBI R26,0x33
0605 4FBF SBCI R27,0xFF
0606 91EC LD R30,0(X)
0607 27FF CLR R31
0608 0FE8 ADD R30,R24
0609 1FF9 ADC R31,R25
060A 8020 LDD R2,Z+0
060B FE20 SBRS R2,0
060C C006 RJMP 0x0613
(0444) lcd_buffer[9]|=0x02;
060D 9180014B LDS R24,0x14B
060F 6082 ORI R24,2
0610 9380014B STS 0x14B,R24
0612 C005 RJMP 0x0618
(0445) else
(0446) lcd_buffer[9]&=0xfd;
0613 9180014B LDS R24,0x14B
0615 7F8D ANDI R24,0xFD
0616 9380014B STS 0x14B,R24
(0447) if(ques[ques_id-1]&0x02)
0618 ED8A LDI R24,0xDA
0619 E090 LDI R25,0
061A 01DE MOVW R26,R28
061B 53A3 SUBI R26,0x33
061C 4FBF SBCI R27,0xFF
061D 91EC LD R30,0(X)
061E 27FF CLR R31
061F 0FE8 ADD R30,R24
0620 1FF9 ADC R31,R25
0621 8020 LDD R2,Z+0
0622 FE21 SBRS R2,1
0623 C006 RJMP 0x062A
(0448) lcd_buffer[1]|=0x02;
0624 91800143 LDS R24,_lcd_buffer+1
0626 6082 ORI R24,2
0627 93800143 STS _lcd_buffer+1,R24
0629 C005 RJMP 0x062F
(0449) else
(0450) lcd_buffer[1]&=0xfd;
062A 91800143 LDS R24,_lcd_buffer+1
062C 7F8D ANDI R24,0xFD
062D 93800143 STS _lcd_buffer+1,R24
(0451) if(ques[ques_id-1]&0x04)
062F ED8A LDI R24,0xDA
0630 E090 LDI R25,0
0631 01DE MOVW R26,R28
0632 53A3 SUBI R26,0x33
0633 4FBF SBCI R27,0xFF
0634 91EC LD R30,0(X)
0635 27FF CLR R31
0636 0FE8 ADD R30,R24
0637 1FF9 ADC R31,R25
0638 8020 LDD R2,Z+0
0639 FE22 SBRS R2,2
063A C006 RJMP 0x0641
(0452) lcd_buffer[12]|=0x20;
063B 9180014E LDS R24,0x14E
063D 6280 ORI R24,0x20
063E 9380014E STS 0x14E,R24
0640 C005 RJMP 0x0646
(0453) else
(0454) lcd_buffer[12]&=0xdf;
0641 9180014E LDS R24,0x14E
0643 7D8F ANDI R24,0xDF
0644 9380014E STS 0x14E,R24
(0455) if(ques[ques_id-1]&0x08)
0646 ED8A LDI R24,0xDA
0647 E090 LDI R25,0
0648 01DE MOVW R26,R28
0649 53A3 SUBI R26,0x33
064A 4FBF SBCI R27,0xFF
064B 91EC LD R30,0(X)
064C 27FF CLR R31
064D 0FE8 ADD R30,R24
064E 1FF9 ADC R31,R25
064F 8020 LDD R2,Z+0
0650 FE23 SBRS R2,3
0651 C006 RJMP 0x0658
(0456) lcd_buffer[12]|=0x02;
0652 9180014E LDS R24,0x14E
0654 6082 ORI R24,2
0655 9380014E STS 0x14E,R24
0657 C005 RJMP 0x065D
(0457) else
(0458) lcd_buffer[12]&=0xfd;
0658 9180014E LDS R24,0x14E
065A 7F8D ANDI R24,0xFD
065B 9380014E STS 0x14E,R24
(0459) if(ques[ques_id-1]&0x10)
065D ED8A LDI R24,0xDA
065E E090 LDI R25,0
065F 01DE MOVW R26,R28
0660 53A3 SUBI R26,0x33
0661 4FBF SBCI R27,0xFF
0662 91EC LD R30,0(X)
0663 27FF CLR R31
0664 0FE8 ADD R30,R24
0665 1FF9 ADC R31,R25
0666 8020 LDD R2,Z+0
0667 FE24 SBRS R2,4
0668 C006 RJMP 0x066F
(0460) lcd_buffer[4]|=0x20;
0669 91800146 LDS R24,0x146
066B 6280 ORI R24,0x20
066C 93800146 STS 0x146,R24
066E C005 RJMP 0x0674
(0461) else
(0462) lcd_buffer[4]&=0xdf;
066F 91800146 LDS R24,0x146
0671 7D8F ANDI R24,0xDF
0672 93800146 STS 0x146,R24
(0463)
(0464) send_data(2,lcd_buffer[1]);
0674 91200143 LDS R18,_lcd_buffer+1
0676 E002 LDI R16,2
0677 940E0A59 CALL _send_data
(0465) send_data(8,lcd_buffer[4]);
0679 91200146 LDS R18,0x146
067B E008 LDI R16,0x8
067C 940E0A59 CALL _send_data
(0466) send_data(18,lcd_buffer[9]);
067E 9120014B LDS R18,0x14B
0680 E102 LDI R16,0x12
0681 940E0A59 CALL _send_data
(0467) send_data(24,lcd_buffer[12]);
0683 9120014E LDS R18,0x14E
0685 E108 LDI R16,0x18
0686 940E0A59 CALL _send_data
(0468) //send_data(14,lcd_buffer[7]);
(0469) // send_data(30,lcd_buffer[15]);
(0470) }
(0471)
(0472) if((key==1||key==4||key==5||key==7||key==8)&&(key_flag==1))
0688 01FE MOVW R30,R28
0689 53E2 SUBI R30,0x32
068A 4FFF SBCI R31,0xFF
068B 8180 LDD R24,Z+0
068C 3081 CPI R24,1
068D F049 BEQ 0x0697
068E 3084 CPI R24,4
068F F039 BEQ 0x0697
0690 3085 CPI R24,5
0691 F029 BEQ 0x0697
0692 3087 CPI R24,7
0693 F019 BEQ 0x0697
0694 3088 CPI R24,0x8
0695 F009 BEQ 0x0697
0696 C190 RJMP 0x0827
0697 01FE MOVW R30,R28
0698 52ED SUBI R30,0x2D
0699 4FFF SBCI R31,0xFF
069A 8180 LDD R24,Z+0
069B 3081 CPI R24,1
069C F009 BEQ 0x069E
069D C189 RJMP 0x0827
(0473) {
(0474) if(ques[ques_id-1]&0x01)
069E ED8A LDI R24,0xDA
069F E090 LDI R25,0
06A0 01DE MOVW R26,R28
06A1 53A3 SUBI R26,0x33
06A2 4FBF SBCI R27,0xFF
06A3 91EC LD R30,0(X)
06A4 27FF CLR R31
06A5 0FE8 ADD R30,R24
06A6 1FF9 ADC R31,R25
06A7 8020 LDD R2,Z+0
06A8 FE20 SBRS R2,0
06A9 C007 RJMP 0x06B1
(0475) keya_flag=1;
06AA 2400 CLR R0
06AB 9403 INC R0
06AC 01FE MOVW R30,R28
06AD 52EB SUBI R30,0x2B
06AE 4FFF SBCI R31,0xFF
06AF 8200 STD Z+0,R0
06B0 C005 RJMP 0x06B6
(0476) else
(0477) keya_flag=0;
06B1 2400 CLR R0
06B2 01FE MOVW R30,R28
06B3 52EB SUBI R30,0x2B
06B4 4FFF SBCI R31,0xFF
06B5 8200 STD Z+0,R0
(0478) if(ques[ques_id-1]&0x02)
06B6 ED8A LDI R24,0xDA
06B7 E090 LDI R25,0
06B8 01DE MOVW R26,R28
06B9 53A3 SUBI R26,0x33
06BA 4FBF SBCI R27,0xFF
06BB 91EC LD R30,0(X)
06BC 27FF CLR R31
06BD 0FE8 ADD R30,R24
06BE 1FF9 ADC R31,R25
06BF 8020 LDD R2,Z+0
06C0 FE21 SBRS R2,1
06C1 C007 RJMP 0x06C9
(0479) keyb_flag=1;
06C2 2400 CLR R0
06C3 9403 INC R0
06C4 01FE MOVW R30,R28
06C5 52EA SUBI R30,0x2A
06C6 4FFF SBCI R31,0xFF
06C7 8200 STD Z+0,R0
06C8 C005 RJMP 0x06CE
(0480) else
(0481) keyb_flag=0;
06C9 2400 CLR R0
06CA 01FE MOVW R30,R28
06CB 52EA SUBI R30,0x2A
06CC 4FFF SBCI R31,0xFF
06CD 8200 STD Z+0,R0
(0482) if(ques[ques_id-1]&0x04)
06CE ED8A LDI R24,0xDA
06CF E090 LDI R25,0
06D0 01DE MOVW R26,R28
06D1 53A3 SUBI R26,0x33
06D2 4FBF SBCI R27,0xFF
06D3 91EC LD R30,0(X)
06D4 27FF CLR R31
06D5 0FE8 ADD R30,R24
06D6 1FF9 ADC R31,R25
06D7 8020 LDD R2,Z+0
06D8 FE22 SBRS R2,2
06D9 C007 RJMP 0x06E1
(0483) keyc_flag=1;
06DA 2400 CLR R0
06DB 9403 INC R0
06DC 01FE MOVW R30,R28
06DD 52EE SUBI R30,0x2E
06DE 4FFF SBCI R31,0xFF
06DF 8200 STD Z+0,R0
06E0 C005 RJMP 0x06E6
(0484) else
(0485) keyc_flag=0;
06E1 2400 CLR R0
06E2 01FE MOVW R30,R28
06E3 52EE SUBI R30,0x2E
06E4 4FFF SBCI R31,0xFF
06E5 8200 STD Z+0,R0
(0486) if(ques[ques_id-1]&0x08)
06E6 ED8A LDI R24,0xDA
06E7 E090 LDI R25,0
06E8 01DE MOVW R26,R28
06E9 53A3 SUBI R26,0x33
06EA 4FBF SBCI R27,0xFF
06EB 91EC LD R30,0(X)
06EC 27FF CLR R31
06ED 0FE8 ADD R30,R24
06EE 1FF9 ADC R31,R25
06EF 8020 LDD R2,Z+0
06F0 FE23 SBRS R2,3
06F1 C007 RJMP 0x06F9
(0487) keyd_flag=1;
06F2 2400 CLR R0
06F3 9403 INC R0
06F4 01FE MOVW R30,R28
06F5 52E9 SUBI R30,0x29
06F6 4FFF SBCI R31,0xFF
06F7 8200 STD Z+0,R0
06F8 C005 RJMP 0x06FE
(0488) else
(0489) keyd_flag=0;
06F9 2400 CLR R0
06FA 01FE MOVW R30,R28
06FB 52E9 SUBI R30,0x29
06FC 4FFF SBCI R31,0xFF
06FD 8200 STD Z+0,R0
(0490) if(ques[ques_id-1]&0x10)
06FE ED8A LDI R24,0xDA
06FF E090 LDI R25,0
0700 01DE MOVW R26,R28
0701 53A3 SUBI R26,0x33
0702 4FBF SBCI R27,0xFF
0703 91EC LD R30,0(X)
0704 27FF CLR R31
0705 0FE8 ADD R30,R24
0706 1FF9 ADC R31,R25
0707 8020 LDD R2,Z+0
0708 FE24 SBRS R2,4
0709 C007 RJMP 0x0711
(0491) keye_flag=1;
070A 2400 CLR R0
070B 9403 INC R0
070C 01FE MOVW R30,R28
070D 52E8 SUBI R30,0x28
070E 4FFF SBCI R31,0xFF
070F 8200 STD Z+0,R0
0710 C005 RJMP 0x0716
(0492) else
(0493) keye_flag=0;
0711 2400 CLR R0
0712 01FE MOVW R30,R28
0713 52E8 SUBI R30,0x28
0714 4FFF SBCI R31,0xFF
0715 8200 STD Z+0,R0
(0494)
(0495) switch(key)
0716 01FE MOVW R30,R28
0717 53E2 SUBI R30,0x32
0718 4FFF SBCI R31,0xFF
0719 8020 LDD R2,Z+0
071A 2433 CLR R3
071B 01FE MOVW R30,R28
071C 53E8 SUBI R30,0x38
071D 4FFF SBCI R31,0xFF
071E 8231 STD Z+1,R3
071F 8220 STD Z+0,R2
0720 01C1 MOVW R24,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -