binääri koodi

Pluff

Miten muunnan binäärit numeroiksi tai heksaksi?

14

11893

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Artsi

      Mistä noi binäärit tulee? kirjoitatko ne johonkin textfieldiin tyyliin 10001010???

      • Pluff

        just niin, Eli teksikentästä tulee binääriä ja se muunnetaan sitten heksaan.


      • Jorma Jormanen
        Pluff kirjoitti:

        just niin, Eli teksikentästä tulee binääriä ja se muunnetaan sitten heksaan.

        Pätki ne lukujonot neljän numeron kokoisiksi pätkiksi, niin voit sitten koostaa heksaluvut niistä.


      • Pluff
        Jorma Jormanen kirjoitti:

        Pätki ne lukujonot neljän numeron kokoisiksi pätkiksi, niin voit sitten koostaa heksaluvut niistä.

        jos on esmerkiksi 2 merkkinen binäärikoodi vaikka 01 niin onko se sama kuin 0001 vai 0100?


      • fani
        Pluff kirjoitti:

        jos on esmerkiksi 2 merkkinen binäärikoodi vaikka 01 niin onko se sama kuin 0001 vai 0100?

        Binäärilukuja käsitellessä pitää tietää kuinka monta bittiä luvussa on. Lisäksi pitää tietää, onko luku mahdollisesti pelkästään positiivinen luku vai voiko se olla myös negatiivinen.


      • Pluff
        fani kirjoitti:

        Binäärilukuja käsitellessä pitää tietää kuinka monta bittiä luvussa on. Lisäksi pitää tietää, onko luku mahdollisesti pelkästään positiivinen luku vai voiko se olla myös negatiivinen.

        Mulla on sellanen taulukko ihan tätä hommaa varten jossa kaikille käsiteltäville numeroille ja kirjaimille on määritelty binäärikoodi

        Esim:

        25 = 0000
        32 = 101
        b = 1111 jne.

        sitten kun käyn tota merkkionoa läpi, vaikka juuri 25 32 b jne.
        ja katson aina vastaavan binäärikoodin. Näin ollen tämä koko rimpsu binääriä 0000 101 1111 pitäisi siis muuntaa heksa muotoon. Eli mitenkä tämä onnistuu? Miten tuota binääri pötköä pitää kasitellä tässä tapauksessa? Jokaista merkkiä vastaava binääri pitää muuntaa erikseen heksaksi vai miten? Käyke se esim näin:

        BigInteger bi = new BigInteger("101", 2);
        String s = bi.toString(16);


      • fani
        Pluff kirjoitti:

        Mulla on sellanen taulukko ihan tätä hommaa varten jossa kaikille käsiteltäville numeroille ja kirjaimille on määritelty binäärikoodi

        Esim:

        25 = 0000
        32 = 101
        b = 1111 jne.

        sitten kun käyn tota merkkionoa läpi, vaikka juuri 25 32 b jne.
        ja katson aina vastaavan binäärikoodin. Näin ollen tämä koko rimpsu binääriä 0000 101 1111 pitäisi siis muuntaa heksa muotoon. Eli mitenkä tämä onnistuu? Miten tuota binääri pötköä pitää kasitellä tässä tapauksessa? Jokaista merkkiä vastaava binääri pitää muuntaa erikseen heksaksi vai miten? Käyke se esim näin:

        BigInteger bi = new BigInteger("101", 2);
        String s = bi.toString(16);

        No täytyy kyllä sanoa, etten keksi miksi tuollaista hommaa teet... Onko tämä jokin annettu tehtävä tms.?

        Siis sinulla on valmiina binäärikoodit tietyille merkeille, ja tehtävänä on etsiä tietylle merkille sitä vastaava binäärikoodi?

        Tee "sanakirja", esim Hashtable, johon laitat binäärikoodit ja koodille avaimeksi sen merkin. Sitten luet merkkijonoa, ja kysyt hashtablesta, onko tälle merkille olemassa binäärikoodia.

        Onko tarkoitus tehdä ASCII-tiedosto, jossa alkuperäinen merkkijono on esitetty heksaa esittävillä Stringeillä? En ole tarkistanut, mutta silloin muutoksen voinee tehdä kuten esitit...


      • Pluff
        fani kirjoitti:

        No täytyy kyllä sanoa, etten keksi miksi tuollaista hommaa teet... Onko tämä jokin annettu tehtävä tms.?

        Siis sinulla on valmiina binäärikoodit tietyille merkeille, ja tehtävänä on etsiä tietylle merkille sitä vastaava binäärikoodi?

        Tee "sanakirja", esim Hashtable, johon laitat binäärikoodit ja koodille avaimeksi sen merkin. Sitten luet merkkijonoa, ja kysyt hashtablesta, onko tälle merkille olemassa binäärikoodia.

        Onko tarkoitus tehdä ASCII-tiedosto, jossa alkuperäinen merkkijono on esitetty heksaa esittävillä Stringeillä? En ole tarkistanut, mutta silloin muutoksen voinee tehdä kuten esitit...

        on annettu tehtävä.
        Ja tarjoitus olisi siis tehdä .hex tiedosto


      • weqweqweqe
        Pluff kirjoitti:

        Mulla on sellanen taulukko ihan tätä hommaa varten jossa kaikille käsiteltäville numeroille ja kirjaimille on määritelty binäärikoodi

        Esim:

        25 = 0000
        32 = 101
        b = 1111 jne.

        sitten kun käyn tota merkkionoa läpi, vaikka juuri 25 32 b jne.
        ja katson aina vastaavan binäärikoodin. Näin ollen tämä koko rimpsu binääriä 0000 101 1111 pitäisi siis muuntaa heksa muotoon. Eli mitenkä tämä onnistuu? Miten tuota binääri pötköä pitää kasitellä tässä tapauksessa? Jokaista merkkiä vastaava binääri pitää muuntaa erikseen heksaksi vai miten? Käyke se esim näin:

        BigInteger bi = new BigInteger("101", 2);
        String s = bi.toString(16);

        Integer-luokassa on valmis rutiini Integer.parseInt(s,radix), joka parsii eri kantalukuisia numeroita. Siellä on myös rutiini Integer.toHexString(i), jolla luvut voi muuntaa heksaksi. Arvaisin, että joku tällainen voisi toimia:

        String bin_str = "1101011";
        int luku = Integer.parseInt(bin_str,2);
        String hex_str = Integer.toHexString(luku);


    • Pluff

      Miten charrin muuntaa binääriksi?

      esim.

      't' -> 01110100

      Käykö helposti vai pitääkö tehdä taulu, johon hakkaa kaikki ascii merkit ja sitten sitä käy läpi niin kauan kun merkki löytyy?

      • fani

        Binäärilukujärjestelmä on lukujärjestelmä. Jotta sen lukuja voi ihminen tulkita, ne on sovittu esitettäväksi ykkösillä ja nollilla.

        Binääriluku on siis vain abstrakti luku, jolle usein annetaan jokin esitysmuoto. Ohjelmoinnissa binäärilukuja käsitellään bitteinä. Siis esim 8 bittiä, ja bitin esitysmuoto voi olla ykkönen tai nolla. Olio-ohjelmoinnissa esitysmuoto voi olla tehty numeroilla 1 ja 0 tai kirjaimilla '1' tai '0'.

        Jos luot itse "binäärikoodeja" sinun pitää valita oma esitysmuotosi tarpeen mukaan. Binääriluvun esittäminen bittisarjana on aika luonnollinen lähestymistapa. Binääriluvun esittäminen merkkijonona on helposti ymmärrettävä ratkaisu. Molemmissa vaihtoehdoissa on hyvät ja huonot puolet. Näppituntumalta sanoisin, että merkkijono-ratkaisussa huonoja puolia on enemmän...

        Tee Hashtable, johon laitat binäärikoodit (oli ne sitten Stringejä tai Bitset-olioita tms) ja koodin avaimeksi laitat siihen liittyvän kirjaimen.


    • prossessi_professori
    • MpjV

      Laitoin dekoodaukseen Binary -> Hex ja tuli "05F".

      • hmhmhmhmhm

        Kannattaa toki opetella päässä se perusperiaate, ei ole pahitteeksi ollenkaan jos sen ymmärtää.

        Hexoissa noita kai ilmoitetaan yleensä siksi, että helposti saa yhdellä hexalla saa neljä bittiä ilmoitettua.

        Eli:
        F = 1111
        E = 1110
        D = 1101
        C = 1100
        B = 1011
        A = 1010
        9 = 1001
        8 = 1000
        7 = 0111
        6 = 0110
        5 = 0101
        4 = 0100
        3 = 0011
        2 = 0010
        1 = 0001
        0 = 0000


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

    Luetuimmat keskustelut

    1. Työeläkeloisinta Suomen suurin talousongelma

      Työeläkeloisinta maksaa vuodessa lähes 40 miljardia euroa, josta reilut 28 miljardia on pois palkansaajien ostovoimasta.
      Maailman menoa
      307
      3015
    2. Veroaste on Suomessa viitisen prosenttiyksikköä liian matala

      Veropohjaa on rapautettu käytännössä koko kulunut vuosituhat, jonka vuoksi valtion menoja on jouduttu rahoittamaan velka
      Maailman menoa
      61
      2343
    3. Israel euroviisujen 2.

      Israel sai taas eniten yleisöääniä. Suomesta täydet 12 pistettä, poliittinen ”ammattiraati” antoi 0 pistettä. Hyvä Is
      Uskonnot ja uskomukset
      349
      2033
    4. Persujen puoluekokous 2026

      Missä ja Milloin pidetään ?
      Maailman menoa
      119
      1806
    5. Euroviisut ei enää niin musiikkikilpailu?

      Kappaleiden taso ei enää ole mikä sijoituksen ratkaisee.Eikö kukaan ihmettele että Israel pärjää lähes joka vuosi kisois
      Maailman menoa
      126
      1729
    6. Mun mielestäni on tosi loukkaavaa

      Nainen, että luulet palatan typeriä, sekavia ja ilkeitä viestejä mun kirjoittamiksi. Mä en ole katkera, epätoivoinen, ra
      Ikävä
      212
      1385
    7. Mikä kaivatussasi

      Viehättää ulkoisesti ja mikä sisäisesti?
      Ikävä
      66
      1359
    8. Tiedän satavarmasti ettet tule koskaan

      Uskaltamaan mitään. Ei me tulla edes näkemään koskaan.
      Ikävä
      66
      1337
    9. Mikä se viehättävin

      Asia on kaivatussasi?
      Ikävä
      68
      1263
    10. Rakas nainen ymmärsin

      Että minun pitää pitää kiinni sinusta. Haluan, että sä olet onnellinen. Olet mulle se oikea ja mä sulle. Rakastan Sua yl
      Ikävä
      78
      1233
    Aihe