binääri koodi

Pluff

Miten muunnan binäärit numeroiksi tai heksaksi?

14

11820

    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. Nasima löi Jussille luun kurkkuun

      Nasima kertoi ettei Jussi sovi puhemieheksi, koska sallii rasismin. Mihin toimiin perussuomalaiset ryhtyvät? Kuka nouse
      Maailman menoa
      228
      6476
    2. Razmyar on säälittävä - puhemiehellä ei ole mitään syytä ottaa kantaa tähän "silmäkohuun"

      jonka toimittajat sai aikaan. Asia ei kuulu puhemiehelle millään lailla. Razmyar haluaa taas vaan huomiota. Mutta jos r
      Maailman menoa
      39
      4540
    3. Pitkän linjan yritysjohtaja: Suomen tapahtumat eivät ole Aasian kärkiuutinen

      Viimeaikaista kohua on käytetty sisäpoliittisena lyömäaseena, Thomas Zilliacus sanoo. – Koska asiaa kuitenkin kommentoi
      Maailman menoa
      91
      4378
    4. Siviilipalvelusmies Halla-aho normalisoi rasismin perussuomalaisissa

      SMP:n tuhkille perustettu puolue ei ollut ihmisiä vastaan, vaan instituutiokriittinen. "Missä EU - siellä ongelma", oli
      Perussuomalaiset
      6
      4196
    5. Suomalaisilta vaaditaan valtavasti suvaitsevaisuutta - miksi sitä ei vaadita muslimeilta

      Suomalaisilta vaaditaan kaikkea, pitää olla suvaitsevainen ja hyväksyä vieraiden tavat, rasisti ei saa olla jne. Miksi s
      Maailman menoa
      38
      3686
    6. Juuri Suomen valtamedian toimittajat teki "silmävääntelystä" sen kohun

      ja ilmeisesti ottivat yhteyttä myös ulkomaisiin medioihin, että katsokaas tätä. Mutta Japanin medioissa on asiaan suhta
      Maailman menoa
      117
      3608
    7. Demarit ovat oikeasti törppöjä eli heikkoälyisiä

      ja todistavat sitä päivittäin täällä lapsellisilla jutuillaan. Kauheasti on hehkuttaneet kuinka demarien kannatus vaan
      Maailman menoa
      67
      3588
    8. Perussuomalaiset eivät harrasta maalittamista kuten vasemmisto

      Huomaa tässä keinotekoisessa "rasismi"-kohussakin kuinka vasemmistolaiset maalittavat Perussuomalaisia. Me emme vastaava
      Maailman menoa
      22
      3499
    9. SDP:n kansanedustaja Marko Asell: Suomen myönnettävä maahanmuuton ongelmat

      Hänen mielestään Suomen pitää pyrkiä rajoittamaan jyrkästi turvapaikanhakijoiden pääsyä maahan ja hän arvioi, että maaha
      Maailman menoa
      71
      3263
    10. Maataloustuet voi poistaa, naudan tuottajahinta pompsahtanut 25 %

      Enää ei tarvitse veronmaksajien tukea, koska maajussi saa lihasta nyt hyvää hintaa. https://yle.fi/a/74-20198739
      Maailman menoa
      53
      2415
    Aihe