Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- mov DPTR, #ARRAY
- call SUM100_115
- ; Приехали
- LOOP:
- jmp LOOP
- ; Входные данные - адрес массива в регистре DPTR, первый байт - длина.
- ; Результат - R0 младший байт, R1 старший байт.
- SUM100_115:
- clr A
- mov R0, A
- mov R1, A
- movc A, @A+DPTR
- mov R2, A
- SUM100_115_LOOP:
- inc DPTR
- clr A
- ; Проверка условия >= 101
- clr A
- movc A, @A+DPTR
- clr C
- subb A, #101
- JC SUM100_115_LOOP_END
- ; Проверка условия < 115
- clr A
- movc A, @A+DPTR
- clr C
- subb A, #115
- JNC SUM100_115_LOOP_END
- ; Сложение с R1:R0
- clr A
- movc A, @A+DPTR
- add A, R0
- mov R0, A
- mov A, R1
- addc A, #0
- mov R1, A
- SUM100_115_LOOP_END:
- DJNZ R2, SUM100_115_LOOP
- ret
- ARRAY:
- .DB 9
- .DB 5, 99, 100, 101, 103, 113, 114, 115, 6
- END
Advertisement
Add Comment
Please, Sign In to add comment