Miten muunnan binäärit numeroiksi tai heksaksi?
binääri koodi
14
11715
Vastaukset
- 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
Se 0000 101 1111 on heksana ``5F`` .
http://www.convertworld.com/fi/numerot/Binääri.html - 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
Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa
En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod336594- 356043
- 293334
- 452790
- 342614
- 152308
- 372158
- 162006
Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...
Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons401849En ole koskaan kokenut
Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka191767