Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. (erledigt) Bitweise "and" in Blockly

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    848

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

(erledigt) Bitweise "and" in Blockly

Geplant Angeheftet Gesperrt Verschoben Blockly
6 Beiträge 3 Kommentatoren 569 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ubeckerU Offline
    ubeckerU Offline
    ubecker
    schrieb am zuletzt editiert von ubecker
    #1

    Wie schreibt man in Blockly
    c= a and b
    Ich benötige ein bestimmtes Bit aus einem Wert.
    Beispiel :
    a ist 43
    b ist 2
    Ergebnis 2
    Beispiel:
    a ist 13
    b ist 2
    Ergebnis: 0

    Ich brauche nur das Bit 2
    oder geht das nur in JS?

    Gruß Udo

    haus-automatisierungH paul53P 2 Antworten Letzte Antwort
    0
    • ubeckerU ubecker

      Wie schreibt man in Blockly
      c= a and b
      Ich benötige ein bestimmtes Bit aus einem Wert.
      Beispiel :
      a ist 43
      b ist 2
      Ergebnis 2
      Beispiel:
      a ist 13
      b ist 2
      Ergebnis: 0

      Ich brauche nur das Bit 2
      oder geht das nur in JS?

      haus-automatisierungH Online
      haus-automatisierungH Online
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von haus-automatisierung
      #2

      @ubecker Du meinst den &-Operator?

      43 ist 0010 1011
      02 ist 0000 0010
      ----------------
             0000 0010
      

      Wäre in JavaScript const c = 42 & 2. Kann man auch binär schreiben: const c = 0b101011 & 0b10.

      Einen Baustein gibts dafür aktuell nicht. Am einfachsten über eine selbst definierte Funktion:

      return param & 2; oder return param & 0b10;

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      ubeckerU 1 Antwort Letzte Antwort
      0
      • haus-automatisierungH haus-automatisierung

        @ubecker Du meinst den &-Operator?

        43 ist 0010 1011
        02 ist 0000 0010
        ----------------
               0000 0010
        

        Wäre in JavaScript const c = 42 & 2. Kann man auch binär schreiben: const c = 0b101011 & 0b10.

        Einen Baustein gibts dafür aktuell nicht. Am einfachsten über eine selbst definierte Funktion:

        return param & 2; oder return param & 0b10;

        ubeckerU Offline
        ubeckerU Offline
        ubecker
        schrieb am zuletzt editiert von
        #3

        @haus-automatisierung said in Bitweise "and" in Blockly:

        Du meinst den &-Operator?

        ja genau.
        ok. Dan werde ich wohl alles in JS schreiben. Ist immer eine gute Übung.
        danke

        Gruß Udo

        haus-automatisierungH 1 Antwort Letzte Antwort
        0
        • ubeckerU ubecker

          @haus-automatisierung said in Bitweise "and" in Blockly:

          Du meinst den &-Operator?

          ja genau.
          ok. Dan werde ich wohl alles in JS schreiben. Ist immer eine gute Übung.
          danke

          haus-automatisierungH Online
          haus-automatisierungH Online
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @ubecker sagte in Bitweise "and" in Blockly:

          Dan werde ich wohl alles in JS schreiben.

          Kannst ja bei Blockly bleiben und einfach eine JS-Funktion mit einem Einzeiler erstellen.

          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
          📚 Meine inoffizielle ioBroker Dokumentation

          1 Antwort Letzte Antwort
          0
          • ubeckerU ubecker

            Wie schreibt man in Blockly
            c= a and b
            Ich benötige ein bestimmtes Bit aus einem Wert.
            Beispiel :
            a ist 43
            b ist 2
            Ergebnis 2
            Beispiel:
            a ist 13
            b ist 2
            Ergebnis: 0

            Ich brauche nur das Bit 2
            oder geht das nur in JS?

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #5

            @ubecker sagte: Ich benötige ein bestimmtes Bit aus einem Wert.

            Siehe checkBit(val, bit)

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            ubeckerU 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @ubecker sagte: Ich benötige ein bestimmtes Bit aus einem Wert.

              Siehe checkBit(val, bit)

              ubeckerU Offline
              ubeckerU Offline
              ubecker
              schrieb am zuletzt editiert von
              #6

              @paul53 said in Bitweise "and" in Blockly:

              @ubecker sagte: Ich benötige ein bestimmtes Bit aus einem Wert.

              Siehe checkBit(val, bit)

              Danke, gelesen und nicht alles verstanden. Ist noch etwas zu hoch für mich. (Bin Hardwerker und kein Softwerker)
              Hab aber eine einfache JS Lösung für mich gefunden.
              brauch doch nur 3 Bits.

              let Bit_0 = 1;
              let Bit_1 = 2;
              let Bit_2 = 4;
              let ID_WR2Haus = 'javascript.0.PV_WR2Haus';
              let ID_Batt_charge = 'javascript.0.PV_Batt_charge';
              let ID_Batt_discharge = 'javascript.0.PV_Batt_discharge';
              let ID_System_state = 'alias.0.Energie.PV_Anlage.Betriebsstatus';
              let System_state = getState(ID_System_state).val;
              let Batt_charge = getState(ID_Batt_charge).val;
              let WR2Haus = getState(ID_WR2Haus).val;
              
              // 0 = not charging ; 2 = Charging; 
              setState(ID_Batt_charge , (System_state & Bit_1), true);
              // 0 = not discharging ; 4 = discharging; 
              setState(ID_Batt_discharge , (System_state & Bit_2), true);
               // 0 = no Power from PV; 1 = power from PV
              setState(ID_WR2Haus , (System_state & Bit_1), true);
              
              on({ id: [].concat(ID_System_state), change: 'ne' }, async (obj) => {
                let value = obj.state.val;
                let oldValue = obj.oldState.val;
                System_state = (obj.state ? obj.state.val : '');
                setState(ID_Batt_charge , (System_state & Bit_1), true);
                setState(ID_Batt_discharge , (System_state & Bit_2), true);
                setState(ID_WR2Haus , (System_state & Bit_0), true);
              });
              
              
              

              Gruß Udo

              1 Antwort Letzte Antwort
              0
              Antworten
              • In einem neuen Thema antworten
              Anmelden zum Antworten
              • Älteste zuerst
              • Neuste zuerst
              • Meiste Stimmen


              Support us

              ioBroker
              Community Adapters
              Donate

              798

              Online

              32.6k

              Benutzer

              82.1k

              Themen

              1.3m

              Beiträge
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
              ioBroker Community 2014-2025
              logo
              • Anmelden

              • Du hast noch kein Konto? Registrieren

              • Anmelden oder registrieren, um zu suchen
              • Erster Beitrag
                Letzter Beitrag
              0
              • Home
              • Aktuell
              • Tags
              • Ungelesen 0
              • Kategorien
              • Unreplied
              • Beliebt
              • GitHub
              • Docu
              • Hilfe