Advertisement
Guest User

Untitled

a guest
Apr 1st, 2020
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.54 KB | None | 0 0
  1. 1. Program wczytujący z urządzenie wejściowego znak oraz cyfrę. Wczytanym z urządzenia wejściowego znakiem narysować w urządzeniu wyjściowym:
  2. - kwadrat o boku 5 dla cyfry 0,
  3. - trójkąt równoramienny o podstawie 7 dla cyfry 1.
  4.  
  5. WPR 1 //wprowadzamy znak z którego ma być tworzona figura
  6. ŁAD ZNAK
  7. WPR 1 //wprowadzamy cyfrę…
  8. ŁAD CYFRA
  9. ODE ST48
  10. SOZ KWADRAT //jeśli równa się 0 to będziemy „rysować” kwadrat
  11. ODE ST1
  12. SOZ TROJKAT //jeśli natomiast równa się 1 to trójkąt
  13. STP
  14. KWADRAT:POB ST5 //pobieramy stałą 5 i ładujemy do licznika lini
  15. ŁAD LICZNIKLINI
  16. PETLA: POB ST5 //taką samą stałą ładujemy do licznika znaku
  17. ŁAD LICZNIKZNAK
  18. NASTZNAK:POB ZNAK //wyprowadzamy znak który wcześniej wprowadziliśmy
  19. WYP 2
  20. POB LICZNIKZNAK //odejmujemy od licznika znaku 1…
  21. ODE ST1
  22. ŁAD LICZNIKZNAK //…aby przy 0 wykonać skok który przechodzi do następnej
  23. SOZ NASTLINIA //…linii rysowania kwadratu
  24. SOB NASTZNAK // jeśli licznik znaku jest większy od 0 powtarzamy pętle
  25. NASTLINIA:POB ST13
  26. WYP 2 // pobieramy stałe które odpowiadają za przejście
  27. POB ST10 // do następnej linii (kody ASCII)
  28. WYP 2
  29. POB LICZNIKLINI //pobieramy licznik linii i odejmujemy za każdym razem 1
  30. ODE ST1 //aby gdy wartość osiągnie 0 zakończyć działanie programu
  31. ŁAD LICZNIKLINI //albo gdy wartość jest większa od 0 powrócić do ‘petla’
  32. SOZ KONIEC
  33. SOB PETLA
  34. TROJKAT:POB ST1 //pobieramy stałą 1 i ładujemy do licznika linii
  35. ŁAD LICZNIKLINI
  36. PETLA2: POB ST1 //pobieramy stałą 1 i ładujemy do licznika znaków
  37. ŁAD LICZNIKZNAK
  38. PETLA3: POB ZNAK //pobieramy znak po czym wyprowadzamy go na wyjście
  39. WYP 2
  40. POB LICZNIKZNAK //pobieramy licznik znaku i odejmujemy od niego licznik…
  41. ODE LICZNIKLINI //… linii by sprawdzić czy można przejść do następnej lini
  42. SOZ NASTLINIA2 //jeśli po odjęciu wynik jest 0 to przechodzimy do nast. linii
  43. POB LICZNIKZNAK //następnie pobieramy licznik znaku i dodajemy…
  44. DOD ST1 //… do niego stałą 1 i powtarzamy pętle3
  45. ŁAD LICZNIKZNAK
  46. SOB PETLA3
  47.  
  48. NASTLINIA2:POB ST13 //tak jak w przypadku kwadratu pobieramy stałe
  49. WYP 2 //odpowiadające za przejście do następnej lini
  50. POB ST10
  51. WYP 2
  52. POB LICZNIKLINI //pobieramy licznik linii, dodajemy do niego stałą 1…
  53. DOD ST1 //…po czym ładujemy do licznika linii i licznika znaku…
  54. ŁAD LICZNIKLINI //…ponieważ musi to być trójkąt równoramienny
  55. ŁAD LICZNIKZNAK
  56. ODE ST7
  57. ODE ST1
  58. SOZ KONIEC //sprawdzamy czy już koniec rysowania przez odjecie 8 od licznika
  59. SOB PETLA2
  60. KONIEC: STP
  61.  
  62. ST1: RST 1
  63. ST5: RST 5
  64. ST13: RST 13
  65. ST10: RST 10
  66. ST7: RST 7
  67. ST48: RST 48
  68. LICZNIKLINI: RPA
  69. LICZNIKZNAK: RPA
  70. CYFRA: RPA
  71. ZNAK: RPA
  72. KON
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement