Guest User

Untitled

a guest
Oct 9th, 2016
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. mov DPTR, #ARRAY
  2. call SUM100_115
  3.  
  4. ; Приехали
  5. LOOP:
  6. jmp LOOP
  7.  
  8. ; Входные данные - адрес массива в регистре DPTR, первый байт - длина.
  9. ; Результат - R0 младший байт, R1 старший байт.
  10. SUM100_115:
  11. clr A
  12. mov R0, A
  13. mov R1, A
  14. movc A, @A+DPTR
  15. mov R2, A
  16. SUM100_115_LOOP:
  17. inc DPTR
  18. clr A
  19. ; Проверка условия >= 101
  20. clr A
  21. movc A, @A+DPTR
  22. clr C
  23. subb A, #101
  24. JC SUM100_115_LOOP_END
  25. ; Проверка условия < 115
  26. clr A
  27. movc A, @A+DPTR
  28. clr C
  29. subb A, #115
  30. JNC SUM100_115_LOOP_END
  31. ; Сложение с R1:R0
  32. clr A
  33. movc A, @A+DPTR
  34. add A, R0
  35. mov R0, A
  36. mov A, R1
  37. addc A, #0
  38. mov R1, A
  39. SUM100_115_LOOP_END:
  40. DJNZ R2, SUM100_115_LOOP
  41. ret
  42.  
  43. ARRAY:
  44. .DB 9
  45. .DB 5, 99, 100, 101, 103, 113, 114, 115, 6
  46. END
Advertisement
Add Comment
Please, Sign In to add comment