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

635

    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. Vain vasemmistolaiset rakennemuutokset pelastavat Suomen

      Kansaa on ankeutettu viimeiset 30+ vuotta porvarillisella minäminä-talouspolitiikalla, jossa tavalliselta kansalta on ot
      Maailman menoa
      131
      3960
    2. Haluaisin rakastaa sinua

      Ja olla sinulle se oikea... Rakastan sinua 💗💗💗
      Ikävä
      19
      3485
    3. Purra on kantanut vastuuta täyden kympin arvoisesti

      Luottoluokituksen lasku, ennätysvelat ja ennätystyöttömyys siitä muutamana esimerkkinä. Jatkakoon hän hyvin aloittamaans
      Maailman menoa
      17
      3407
    4. onko kaivattusi

      vaarallinen? :D
      Ikävä
      79
      3347
    5. Persut huutaa taas: "kato! muslimi!"

      Persut on lyhyessä ajassa ajaneet läpi kaksi työntekijöiden oikeuksien heikennystä, joita se on aiemmin vastustanut. Pe
      Maailman menoa
      61
      3244
    6. Tiedätkö mihin

      Ominaisuuksiin rakastuin sinussa?
      Ikävä
      49
      3021
    7. Menen nyt koisimaan

      Ja en ehkä palaa tänne. Asia on nyt loppuunkäsitelty ja totuus tuli ilmi
      Ikävä
      29
      2915
    8. Pieni galluppi

      Mitäs lahjaa odotat joulupukilta.
      Ikävä
      79
      2717
    9. Olisiko sinulla

      Jonossa vaihtoehtoja, ehkä
      Ikävä
      54
      2657
    10. Mitä tuntemuksia

      Rakkaasi ääni herättää?
      Ikävä
      19
      2377
    Aihe