SBR <-> SBI

Gast #28733
Hi!
hat vielleicht jemand eine saubere lösung, ein bit in einem Register, 
z.b. an stelle 3 zu setzen/löschen, wie man es mit sbi/cbi mit den 
I/O-registern machen kann?
sbr ist ja gut und schön, aber leider nur ein OR und wenn ich jetzt z.m. 
eine konstante hab, die besagt an welcher stelle das bit gesetzt werden 
soll sieht man da ganz schnell alt aus.
gibts da eine schnelle und saubere lösung, oder muss man ueber das 
t-flag gehen?
schonmal danke im voraus,
mfg Michael

PS: ich benutze einen at90s4433 und avra unter linux
Gast
genau, dafür ist das T-flag da.
set bzw. clt
bld Rd,n

Das ist eine schnelle und saubere Lösung.
Übrigens genauso schnell wie sbi/cbi.
Gast
hmja... ich habs ja fast befürchtet...
trotzdem danke :)
mein problem ist, dass das ganze in ner interrupt routine passiert, und 
ich das t-flag noch an anderen stellen benutze, das heisst ich muss 
höllisch aufpassen dass ich mir da nichts anderes damit zerschiesse, und 
deshalb wollte ich darauf verzichten :)
aber dann werd ich das da nochmal ein wenig umstricken...
dabei fällt mir grade ein:

sbr temp, 2^KONSTANTE

sollte theoretisch doch auch gehen, oder nicht?
da es sich hier um einen konstanten wert handelt muesste der assembler 
das doch vorher richtig austauschen, oder sehe ich das falsch?
mfg Michael

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.