📄 project.s
字号:
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L163:
.dbline 360
inc R20
L165:
.dbline 360
cpi R20,32
brlo L162
.dbline 361
; next[m]=State2[Word_Number][m];} //依次换字显示“第4站”
rjmp L161
L160:
.dbline 363
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L169
L166:
.dbline 364
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L167:
.dbline 363
inc R20
L169:
.dbline 363
cpi R20,32
brlo L166
L161:
.dbline 365
; next[m]=DL[Word_Number-3][m]; //依次换字显示“到了”
; Word_Number++;} //显示字数+1
lds R24,_Word_Number
subi R24,255 ; addi 1
sts _Word_Number,R24
.dbline 365
rjmp L114
L158:
.dbline 367
; else //若全部显示完,则
; Word_Number=0; //显示字数清0
clr R2
sts _Word_Number,R2
.dbline 368
; break;
rjmp L114
L170:
.dbline 370
; case 5: //若为第5站
; if(Word_Number<5) //判断已显示字数
lds R24,_Word_Number
cpi R24,5
brlo X10
rjmp L171
X10:
.dbline 371
; {if(Word_Number<3) //若未显示完“第5站”,则
.dbline 371
cpi R24,3
brsh L173
.dbline 372
; {for(m=0;m<32;m++)
.dbline 372
clr R20
rjmp L178
L175:
.dbline 373
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_State1
ldi R25,>_State1
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L176:
.dbline 372
inc R20
L178:
.dbline 372
cpi R20,32
brlo L175
.dbline 373
; next[m]=State1[Word_Number][m];} //依次换字显示“第5站”
rjmp L174
L173:
.dbline 375
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L182
L179:
.dbline 376
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L180:
.dbline 375
inc R20
L182:
.dbline 375
cpi R20,32
brlo L179
L174:
.dbline 377
; next[m]=DL[Word_Number-3][m]; //依次换字显示“到了”
; Word_Number++;} //显示字数+1
lds R24,_Word_Number
subi R24,255 ; addi 1
sts _Word_Number,R24
.dbline 377
rjmp L114
L171:
.dbline 379
; else //若全部显示完,则
; Word_Number=0; //显示字数清0
clr R2
sts _Word_Number,R2
.dbline 380
; break;
rjmp L114
L183:
.dbline 382
; case 6: //若为第6站
; if(Word_Number<5) //判断已显示字数
lds R24,_Word_Number
cpi R24,5
brlo X11
rjmp L184
X11:
.dbline 383
; {if(Word_Number<3) //若未显示完“第6站”,则
.dbline 383
cpi R24,3
brsh L186
.dbline 384
; {for(m=0;m<32;m++)
.dbline 384
clr R20
rjmp L191
L188:
.dbline 385
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_State2
ldi R25,>_State2
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L189:
.dbline 384
inc R20
L191:
.dbline 384
cpi R20,32
brlo L188
.dbline 385
; next[m]=State2[Word_Number][m];} //依次换字显示“第6站”
rjmp L187
L186:
.dbline 387
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L195
L192:
.dbline 388
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L193:
.dbline 387
inc R20
L195:
.dbline 387
cpi R20,32
brlo L192
L187:
.dbline 389
; next[m]=DL[Word_Number-3][m]; //依次换字显示“到了”
; Word_Number++;} //显示字数+1
lds R24,_Word_Number
subi R24,255 ; addi 1
sts _Word_Number,R24
.dbline 389
rjmp L114
L184:
.dbline 391
; else //若全部显示完,则
; Word_Number=0; //显示字数清0
clr R2
sts _Word_Number,R2
.dbline 392
; break;
rjmp L114
L196:
.dbline 394
; case 7: //若为第7站
; if(Word_Number<5) //判断已显示字数
lds R24,_Word_Number
cpi R24,5
brlo X12
rjmp L197
X12:
.dbline 395
; {if(Word_Number<3) //若未显示完“第7站”,则
.dbline 395
cpi R24,3
brsh L199
.dbline 396
; {for(m=0;m<32;m++)
.dbline 396
clr R20
rjmp L204
L201:
.dbline 397
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_State1
ldi R25,>_State1
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L202:
.dbline 396
inc R20
L204:
.dbline 396
cpi R20,32
brlo L201
.dbline 397
; next[m]=State1[Word_Number][m];} //依次换字显示“第7站”
rjmp L200
L199:
.dbline 399
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L208
L205:
.dbline 400
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L206:
.dbline 399
inc R20
L208:
.dbline 399
cpi R20,32
brlo L205
L200:
.dbline 401
; next[m]=DL[Word_Number-3][m]; //依次换字显示“到了”
; Word_Number++;} //显示字数+1
lds R24,_Word_Number
subi R24,255 ; addi 1
sts _Word_Number,R24
.dbline 401
rjmp L114
L197:
.dbline 403
; else //若全部显示完,则
; Word_Number=0; //显示字数清0
clr R2
sts _Word_Number,R2
.dbline 404
; break;
rjmp L114
L209:
.dbline 406
; case 8: //若为第8站
; if(Word_Number<5) //判断已显示字数
lds R24,_Word_Number
cpi R24,5
brlo X13
rjmp L210
X13:
.dbline 407
; {if(Word_Number<3) //若未显示完“第8站”,则
.dbline 407
cpi R24,3
brsh L212
.dbline 408
; {for(m=0;m<32;m++)
.dbline 408
clr R20
rjmp L217
L214:
.dbline 409
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_State2
ldi R25,>_State2
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L215:
.dbline 408
inc R20
L217:
.dbline 408
cpi R20,32
brlo L214
.dbline 409
; next[m]=State2[Word_Number][m];} //依次换字显示“第8站”
rjmp L213
L212:
.dbline 411
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L221
L218:
.dbline 412
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L219:
.dbline 411
inc R20
L221:
.dbline 411
cpi R20,32
brlo L218
L213:
.dbline 413
; next[m]=DL[Word_Number-3][m]; //依次换字显示“到了”
; Word_Number++;} //显示字数+1
lds R24,_Word_Number
subi R24,255 ; addi 1
sts _Word_Number,R24
.dbline 413
rjmp L114
L210:
.dbline 415
; else //若全部显示完,则
; Word_Number=0; //显示字数清0
clr R2
sts _Word_Number,R2
.dbline 416
; break;
rjmp L114
L222:
.dbline 418
; case 9: //若为第9站
; if(Word_Number<5) //判断已显示字数
lds R24,_Word_Number
cpi R24,5
brlo X14
rjmp L223
X14:
.dbline 419
; {if(Word_Number<3) //若未显示完“第1站”,则
.dbline 419
cpi R24,3
brsh L225
.dbline 420
; {for(m=0;m<32;m++)
.dbline 420
clr R20
rjmp L230
L227:
.dbline 421
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_State1
ldi R25,>_State1
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L228:
.dbline 420
inc R20
L230:
.dbline 420
cpi R20,32
brlo L227
.dbline 421
; next[m]=State1[Word_Number][m];} //依次换字显示“第9站”
rjmp L226
L225:
.dbline 423
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L234
L231:
.dbline 424
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L232:
.dbline 423
inc R20
L234:
.dbline 423
cpi R20,32
brlo L231
L226:
.dbline 425
; next[m]=DL[Word_Number-3][m]; //依次换字显示“到了”
; Word_Number++;} //显示字数+1
lds R24,_Word_Number
subi R24,255 ; addi 1
sts _Word_Number,R24
.dbline 425
rjmp L114
L223:
.dbline 427
; else //若全部显示完,则
; Word_Number=0; //显示字数清0
clr R2
sts _Word_Number,R2
.dbline 428
; break;
rjmp L114
L235:
.dbline 430
; case 10: //若为第10站
; if(Word_Number<5) //判断已显示字数
lds R24,_Word_Number
cpi R24,5
brlo X15
rjmp L236
X15:
.dbline 431
; {if(Word_Number<3) //若未显示完“第10站”,则
.dbline 431
cpi R24,3
brsh L238
.dbline 432
; {for(m=0;m<32;m++)
.dbline 432
clr R20
rjmp L243
L240:
.dbline 433
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_State2
ldi R25,>_State2
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
lpm
ldi R24,<_next
ldi R25,>_next
mov R30,R20
clr R31
add R30,R24
adc R31,R25
std z+0,R0
L241:
.dbline 432
inc R20
L243:
.dbline 432
cpi R20,32
brlo L240
.dbline 433
; next[m]=State2[Word_Number][m];} //依次换字显示“第10站”
rjmp L239
L238:
.dbline 435
; else //否则
; for(m=0;m<32;m++)
clr R20
rjmp L247
L244:
.dbline 436
ldi R18,5
ldi R19,0
lds R16,_Word_Number
clr R17
subi R16,3
sbci R17,0
rcall lsl16
mov R2,R16
mov R3,R17
ldi R24,<_DL
ldi R25,>_DL
add R2,R24
adc R3,R25
mov R4,R20
clr R5
add R4,R2
adc R5,R3
mov R30,R4
mov R31,R5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -