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ä?
Binäärin konvertointi decimaaliksi
8
561
Vastaukset
- le coder
http://forums.aspfree.com/asp-free-lounge-32/vbulletin-permissions-92428.html
etsi tuolta BinaryToInt. Oletan että tuo input on stringi. Muutenhan siinä ei ole järkeä
Noissa esimerkeissäsi on binaari väärin päin:
Esim esim2:
0000000000000001 on 1 eikä 32768
Ellei siten kyseessä ole jokin sairas systeemi jossa bitit on väärin päin.- 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
Yllättäen googlella löytyi seuraava:
http://www.devx.com/vb2themax/Tip/18959
Pitää vaan muutella lukeminen toisessa järjestyksessä.- 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
- 692733
- 632664
- 681792
- 241627
- 201550
Tykkään susta
Elämäni loppuun asti. Olet niin suuresti siihen vaikuttanut. Tykkäsit tai et siitä91480- 151392
- 461234
- 381233
Onko meillä
Molemmilla nyt hyvät fiilikset😢ei ainakaan mulla mutta eteenpäin on mentävä😏ikävä on, kait se helpottaa ajan myötä. Ko81197