- LiTime Speicher und Akkus         
Ergebnis 1 bis 6 von 6

Thema: Bitmanipulation

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.02.2005
    Alter
    35
    Beiträge
    470

    Bitmanipulation

    Anzeige

    LiFePo4 Akku selber bauen - Video
    So hab ein kleines Problem, ich will die Bits eines Bytes verändern ( Bitmanipulation) aber ich hab kein Plan wie das in Bascom gehen soll.

    Beispiel:

    das 3. Bit eines Bytes soll auf High gesetzt werden also von

    &B00000000 nach
    &B00000100

    ohne die anderen Bits zu verändern also wenn ich zB sowas hab:

    &B01010101
    und das 4. soll High werden muss das rauskommen:
    &B01011101

    wie kann ich das lösen? Das es geht weis ich aber wie??????

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von Rage_Empire
    Registriert seit
    10.03.2005
    Ort
    Pforzheim
    Beiträge
    710
    Geht so:

    xxxx=&B00000x00 or &B00000100
    xxxx=xxxx and &B00000x00

    nennt man maskieren oder so. Mit And und Or kannst du sehr viel machen. Viel erfolg

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    25.10.2004
    Ort
    Pinneberg
    Alter
    64
    Beiträge
    48
    Soviel ich gesehen habe, kennt AVR Bascom die typischen logischen Operatoren nicht. Ein kurzer Blick in die Hilfe liefert allerdings die Funktion "Bits" - dort solltest du einmal nachsehen.

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.02.2005
    Alter
    35
    Beiträge
    470
    ich hab noch was viel besseres entdeckt ( beim experimentieren)

    das ist in Bascom einfacher als ihr es euch vorstellen könnt:

    Code:
    Dim Variable as Byte
    
    Variable = &B0000000
    
    Print variable
    
    Variable.5 = 1
    
    Print variable
    
    END
    So probierts mal aus!!!!!!

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.12.2004
    Alter
    70
    Beiträge
    277
    Zitat Zitat von roboguy
    Soviel ich gesehen habe, kennt AVR Bascom die typischen logischen Operatoren nicht. Ein kurzer Blick in die Hilfe liefert allerdings die Funktion "Bits" - dort solltest du einmal nachsehen.
    Unsinn. Mache Bascom bitte nicht schlechter als es ist.

    Aus der Hilfe:
    Logical Operators

    Logical operators perform tests on relations, bit manipulations, or Boolean operators.
    There four operators in Bascom are :


    Operator Meaning
    NOT Logical complement
    AND Conjunction
    OR Disjunction
    XOR Exclusive or

    It is possible to use logical operators to test bytes for a particular bit pattern.
    For example the AND operator can be used to mask all but one of the bits
    of a status byte, while OR can be used to merge two bytes to create a particular binary value.


    Example

    A = 63 And 19
    PRINT A
    A = 10 Or 9
    PRINT A
    Henrik

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    25.10.2004
    Ort
    Pinneberg
    Alter
    64
    Beiträge
    48
    @henrik
    Es lag mir nicht daran, Bascom schlecht zu machen. Ich habe lediglich in meiner BASCOM-Version im Hilfe-Index nachgesucht und dort weder eine Referenz zu den booleschen Operationen noch zum Stichwort LOGICAL gefunden - ich muss allerdings gestehen, dass ich nur kurz über die Indexstichwörter geschaut habe und da war es eben nicht dabei.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test