Excel ja "bit mask" laskuri

-jarru-

Kun annan bit mask arvon 84 niin bitti arvot 4,16,64 asettuvat automaattisesti ykkösiksi.Jos taas bti mask arvo on 12 niin bitti arvot 4 ja 8 asettuvat ykkösiksi. Kuinka tämän voisi tehdä ?. (makrolla tai funktiolla)

1   0
2   0
4   1
8   0
16   1
32   0
64   1
=============
bit mask 84

1   0
2   0
4   1
8   1
16   0
32   0
64   0
=============
bit mask 12

3

971

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Jos haluat saada nuo bitit nimenomaan kunkin omaan soluunsa, niin sitten ei helppo ratkaisu, eli DEC2BIN()-funktio toimi. Kyhäsin tuota rivitystä varten ainakin tietylle bittimäärälle toimivan hätäratkaisun.

      Bittimaski on solussa A1 ja tarkastellaan kahdeksanbittisiä lukuja. Soluun A2 tulee 8. bitti (128), A3:een 7. bitti (64) jne. soluun A9 saakka (1. bitti, 1).

      Soluun A2 kaava LEFT( DEC2BIN(A1;8) ;1). DEC2BIN(A1;8) muuttaa solun A1 arvon, esim. 84, 8-bittiseksi binääriluvuksi (01010100). LEFT() antaa siitä ensimmäisenä vasemmalla olevan merkin, nollan.

      Soluun A3 kaava RIGHT( LEFT( DEC2BIN(A1;8) ;2)). Muuten sama kuin edellinen, mutta nyt LEFT( DEC2BIN(A1;8) ;2) antaa kaksi ensimmäistä merkkiä (01) tuosta binääriluvusta, joista RIGHT(...) poimii oikeanpuoleisimman (1).

      Soluihin A4-A9 sama kaava kuin A3:een, mutta tuo viimeinen numero, LEFT:n toinen argumentti juoksee 3:sta 8:aan.

      Jos bittimäärä on joku muu, tarvitsee muuttaa tuota DEC2BIN-funktion toista argumenttia ja luonnollisesti myös rivien määriä. Toivottavasti tämä auttaa.

    • paavali50

      Soluissa A1:A7 1,2,4,8,16,32,64
      Solussa C5 bit mask luku
      Soluun B1 kaava
      =JOS(A1 (TULOJEN.SUMMA((B2:$B$9=1)*(A2:$A$9>0);A2:$A$9))

      • -jarru-

        kiitos upeasta/nopeasta vastauksesta "paavali50".
        Nyt homma toimii.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Hengenvaaralliset kiihdytysajot päättyivät karmealla tavalla, kilpailija kuoli

      Onnettomuudesta on aloitettu selvitys. Tapahtuma keskeytettiin onnettomuuteen. Tapahtumaa tutkitaan paikan päällä yhtei
      Kauhava
      172
      6293
    2. Ootko rakastunut?

      Kerro pois nyt
      Ikävä
      147
      1744
    3. Onhan sulla nainen parempi mieli

      Nyt? Ainakin toivon niin.
      Ikävä
      113
      1528
    4. Ujosteletko tosissaan vai mitä oikeen

      Himmailet???? Mitä pelkäät?????
      Ikävä
      51
      1280
    5. Suureksi onneksesi on myönnettävä

      Että olen nyt sitten mennyt rakastumaan sinuun. Ei tässä mitään, olen kärsivällinen ❤️
      Ikävä
      46
      962
    6. Möykkähulluus vaati kuolonuhrin

      Nuori elämä menettiin täysin turhaan tällä järjettömyydellä! Toivottavasti näitä ei enää koskaan nähdä Kauhavalla! 😢
      Kauhava
      32
      879
    7. Älä mies pidä mua pettäjänä

      En petä ketään. Älä mies ajattele niin. Anteeksi että ihastuin suhun varattuna. Pettänyt en ole koskaan ketään vaikka hu
      Ikävä
      97
      856
    8. Reeniähororeeniä

      Helvetillisen vaikeaa työskennellä hoitajana,kun ei kestä silmissään yhtään läskiä. Saati hoitaa sellaista. Mitä tehdä?
      Kouvola
      5
      809
    9. Tarvitsemme lisää maahanmuuttoa.

      Väestö eläköityy, eli tarvitsemme lisää tekeviä käsiä ja veronmaksajia. Ainut ratkaisu löytyy maahanmuutosta. Nimenomaan
      Maailman menoa
      231
      775
    10. Kävit nainen näemmä mun

      Facessa katsomassa....
      Ikävä
      41
      759
    Aihe