Gast
#635507
Hallo Leute, anbei ein Limiter für 16bit Werte (atmega8) Ist das effektiv oder geht es besser? Kommentare erwünscht! ;-------------------------------------------------------- ; Limitieren in r19:r18 auf +/-450 ; ldi r16,lo8(450) ; pos Limit definieren ldi r17,hi8(450) cp r18,r16 ; Vergleiche cpc r19,r17 brmi lim2 mov r18,r16 ; ggf. limit in r19:r18 setzen mov r19,r17 rjmp ausgabe2 lim2: com r16 ; Negation des Limits in r17:r16 com r17 subi r16,0xFF sbci r17,0xFF cp r18,r16 ; Vergleiche cpc r19,r17 brpl ausgabe2 mov r18,r16 ; ggf. neg. Limit in r19:r18 setzen mov r19,r17 ausgabe2: ;----------------------------------------------------------------- Gruß Stefan