„Pergésmentesítés” változatai közötti eltérés

Gogerham (vitalap | szerkesztései)
Nincs szerkesztési összefoglaló
Szikszayl (vitalap | szerkesztései)
aNincs szerkesztési összefoglaló
 
(7 közbenső módosítás, amit egy másik szerkesztő végzett, nincs mutatva)
1. sor: 1. sor:
Ez a lap a mérnök-informatikus képzés [[Mérés_laboratórium_2.|Mérés laboratórium 2]]. tárgyához kapcsolódik.<br/>
Az alábbi kód egy lehetséges implementáció az ellenőrző mérésen előforduló pergés probléma megoldására.
{{Infobox
| cím = Példakód pergésmentesítéshez
| háttérszín = #C0ffee
| keretszín = black
| tartalom =
{{Infobox-táblázat|
{{Infobox-táblázatsor|A kód nyelve|Assembly}}
{{Infobox-táblázatsor|Fejlesztőeszköz|Atmel® AVR® ATmega128}}
}}
}}
<code>
<code>
  .def temp = r16
  .def temp = r16
  .def pattern = r17
  .def pattern = r17
  .def pushed = r18
  .def pressed = r18
   
   
  ; megfelelö IT ugrást ki kell cserélni erre:
  ; megfelelö IT ugrást ki kell cserélni erre:
22. sor: 35. sor:
 
 
  ldi pressed, 0x00
  ldi pressed, 0x00
ldi pattern, 0xff
 
 
  sei ; globális IT engedélyezése
  sei ; globális IT engedélyezése
33. sor: 47. sor:
 
 
  jmp M_LOOP
  jmp M_LOOP
 
  TIMER_IT:
  TIMER_IT:
  push temp ; mentjük az aktuális tempet
  push temp ; mentjük az aktuális tempet
41. sor: 55. sor:
   in temp, PINE ; beolvasunk a 4/9 ananászról (BTN0-3)
   in temp, PINE ; beolvasunk a 4/9 ananászról (BTN0-3)
  bst temp, 5 ; BTN0 értékét tároljuk SREG T bitjébe
  bst temp, 5 ; BTN0 értékét tároljuk SREG T bitjébe
  lsl pattern ; az eddigi mintát árrébb toljuk balra eggyel (elsö alkalommal 0-kat shiftelünk)
  lsl pattern ; az eddigi mintát árrébb toljuk balra eggyel (elsö alkalommal 0-kat shiftelünk)
  bld pattern, 0 ; a felszabadult indexre bedobjuk BTN0 mostani értékét SREG T bitjéböl
  bld pattern, 0 ; a felszabadult indexre bedobjuk BTN0 mostani értékét SREG T bitjéböl
55. sor: 69. sor:
  reti ; visszatérünk
  reti ; visszatérünk
</code>
</code>
--[[Szerkesztő:Gogerham|Gogerham]] ([[Szerkesztővita:Gogerham|vita]]) 2013. május 19., 21:04 (UTC)
[[Category:Infoalap]]
A lap eredeti címe: „https://vik.wiki/Pergésmentesítés