Binäärin konvertointi decimaaliksi

Häviäjä

Miten siis onnistuu simppelisti 16-bit binääri jonon konevertointi desimaaliksi.

Esim1.
Input=0100000000000000
Output=2

Esim2.
Input=0000000000000001
Output=32768

Miten tämä onnistuu helpolla VB6:ssä?

8

663

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • le coder
      • Häviäjä

        Tiedän kyllä, että ensimmäinen bitti kuuluu olla normaalisti vasemmalla, mutta tähän systeemiin on ilmeisesti käännetty bitit enemmän ihmisen luettavaan muotoon eli eka bitti on vasemmalla.
        Mutta sillä nyt ei ole tässä merkitystä, kunhan saan tuon konversion aikaan oikein joka tapaukseesa.


      • häviäjä toden totta
        Häviäjä kirjoitti:

        Tiedän kyllä, että ensimmäinen bitti kuuluu olla normaalisti vasemmalla, mutta tähän systeemiin on ilmeisesti käännetty bitit enemmän ihmisen luettavaan muotoon eli eka bitti on vasemmalla.
        Mutta sillä nyt ei ole tässä merkitystä, kunhan saan tuon konversion aikaan oikein joka tapaukseesa.

        vb onkin täydellinen valinta häviäjille


      • Häviäjö
        häviäjä toden totta kirjoitti:

        vb onkin täydellinen valinta häviäjille

        Niin otsikko kertoo kaiken


      • le coder
        Häviäjä kirjoitti:

        Tiedän kyllä, että ensimmäinen bitti kuuluu olla normaalisti vasemmalla, mutta tähän systeemiin on ilmeisesti käännetty bitit enemmän ihmisen luettavaan muotoon eli eka bitti on vasemmalla.
        Mutta sillä nyt ei ole tässä merkitystä, kunhan saan tuon konversion aikaan oikein joka tapaukseesa.

        No ellei kyseessä ole persialainen tai Hebrew:n kieleinen systeemi jossa kirjoitetaan oikealta vasemalle, en tuota ymmärrä. tai sitten jollakulla on mennyt endianess käsitys sekaisin (sehän ei tarkoita bittejä vaan tavuja).

        Neuvoisin vielä tarkistamaan tavujärjästyksen.


      • dfgthjukl
        häviäjä toden totta kirjoitti:

        vb onkin täydellinen valinta häviäjille

        Osaatkohan ainuttakaan kieltä.


    • kooklella
      • xxxxx

        Ilmeisesti voidaan olettaa kyseessä olevan binääriluku, joten ei tarvitse käsitellä kuin nollia ja ykkösiä.

        Näin tekisin sen itse:

        For i=1 to len(BinääriLuku$)
        DesLuku=DesLuku val(mid$(BinääriLuku$,i,1))*2^(i-1)
        next i


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

    Luetuimmat keskustelut

    1. Silmienvääntelijä-persut pääsivät Japanissa sarjakuvaan

      Torille! https://www.hs.fi/kulttuuri/art-2000011943173.html
      Maailman menoa
      179
      5012
    2. Nato kaatamassa Petterin haaveileman Tunnin junan?

      Nato edellyttää pohjoisessa Jäämereltä Rovaniemelle saakka kapearaitesta suoraa rautatieväylää, joka maksaa paperirahaa,
      Maailman menoa
      20
      4418
    3. Donald Trump pääsi samalle listalle Sanna Marinin kanssa

      Eli vasemmistolaisen Time-median top 100 jännäihmisten listalle. https://time.com/collections/time100-next-2021/5937699
      Maailman menoa
      9
      3117
    4. Älkää vaan sairastuko syöpään Suomessa

      Tilaston mukaan Suomi, Slovakia ja Latvia lääkitsee aivan pohjamudissa syöpää. Sairastunutta hoidetaan edelleen vanhana
      Maailman menoa
      253
      2962
    5. Kyllä, maata ei halua puolustaa nimenomaan punavihreän puolen edustajat

      "Esimerkiksi maanpuolustushenki on keskimääräistä alempana naisten, arvoliberaalien, heikossa taloustilanteessa olevien
      Maailman menoa
      143
      2902
    6. Sä veit mun sydämen ihan totaalisesti

      Aivan totaalisesti..
      Ikävä
      52
      2511
    7. Oot se sinä

      Ihan varmasti oot, tuo olemus ei valehtele 😘💓🪅 🏡 ihana 😍🙏
      Ikävä
      27
      1929
    8. Ei siinä kauan

      Menisi jos olisimme kahden
      Ikävä
      22
      1767
    9. Vieläkö olet

      Rakastunut minuun? Minä sinuun
      Ikävä
      35
      1760
    10. Toivotko vielä kohtaamista

      Kaivattusi kanssa?
      Ikävä
      68
      1751
    Aihe