Mikä on paikkajärjestelmä
Desimaaliluvussa 4 095 neloskaan arvo ei ole 4: se on 4 000, koska se on tuhansien paikalla. Jokainen paikka kertoo numeron kymmenen potenssilla (1, 10, 100, 1 000…). Se on paikkajärjestelmä, ja kantaluku on käytettyjen eri numeroiden määrä: desimaalissa kymmenen.
Binääri toimii samoin, mutta kantaluku on 2: on vain 0 ja 1, ja jokaisen paikan arvo on kaksinkertainen edelliseen nähden. Heksadesimaali käyttää kantalukua 16: kuusitoista numeroa ovat 0–9 ja kirjaimet A–F, ja jokaisen paikan arvo on 16-kertainen edelliseen nähden. Tietokoneet toimivat binäärillä, koska piirin tarvitsee erottaa vain kaksi tilaa (pois ja päällä), ja heksadesimaali on lyhyt tapa kirjoittaa nuo bitit.
| Paikka (oikealta vasemmalle) | Arvo binäärissä | Arvo heksadesimaalissa |
|---|---|---|
| 1. | 1 | 1 |
| 2. | 2 | 16 |
| 3. | 4 | 256 |
| 4. | 8 | 4 096 |
| 5. | 16 | 65 536 |
| 6. | 32 | 1 048 576 |
| 7. | 64 | 16 777 216 |
| 8. | 128 | 268 435 456 |
Binääristä desimaaliksi käsin
Kirjoita jokainen numero paikkansa arvon kanssa ja laske yhteen vain ne paikat, joissa on ykkönen. Esimerkki luvulla 1101: oikealta vasemmalle paikkojen arvot ovat 1, 2, 4 ja 8.
- Kirjoita luku ja sen alle kunkin paikan arvo: 1 1 0 1 ja alla 8 4 2 1.
- Katso, mitä missäkin paikassa on: ykkönen 8:n paikalla, ykkönen 4:n paikalla, nolla 2:n paikalla ja ykkönen 1:n paikalla.
- Ohita paikat, joissa on nolla (tässä 2:n paikka).
- Laske yhteen: 8 + 4 + 0 + 1 = 13. Binäärinen 1101 on siis desimaalinen 13.
Useammalla numerolla se on samaa: 11111111 on 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255, suurin arvo, joka mahtuu 8 bittiin. Ja 10110110 on 128 + 32 + 16 + 4 + 2 = 182.
Desimaalista binääriksi jakolaskuilla
Luku jaetaan kahdella yhä uudelleen ja kunkin jakolaskun jakojäännös (aina 0 tai 1) kirjataan ylös, kunnes osamäärä on 0. Jakojäännökset alhaalta ylöspäin luettuina ovat binääriluku. Esimerkki luvulla 45:
- 45 ÷ 2 = 22, jakojäännös 1
- 22 ÷ 2 = 11, jakojäännös 0
- 11 ÷ 2 = 5, jakojäännös 1
- 5 ÷ 2 = 2, jakojäännös 1
- 2 ÷ 2 = 1, jakojäännös 0
- 1 ÷ 2 = 0, jakojäännös 1
Jakojäännökset alhaalta ylös luettuina antavat 101101. Tarkista laskemalla yhteen: 32 + 8 + 4 + 1 = 45.
On myös toinen menetelmä, jota moni pitää parempana: kahden potensseja vähennetään suurimmasta pienimpään. Luvulle 200: 128 mahtuu (jää 72), 64 mahtuu (jää 8), 32 ja 16 eivät mahdu, mutta 8 mahtuu (jää 0). Käytetyt paikat ovat 128, 64 ja 8, joten 200 = 11001000.
Heksadesimaali: kuusitoista numeroa ja taulukko käden ulottuville
Koska numeroita luvuille 10–15 ei ole, käytetään kirjaimia A, B, C, D, E ja F. Yksi heksadesimaalinumero vastaa tarkalleen neljää bittiä (nibble), ja siksi se on niin kätevä: tavu eli 8 bittiä kirjoitetaan vain kahdella heksadesimaalinumerolla.
Heksadesimaalista desimaaliksi muunnetaan kertomalla jokainen numero paikkansa 16:n potenssilla ja laskemalla yhteen. Esimerkiksi 3F = 3 × 16 + 15 = 63 ja A3 = 10 × 16 + 3 = 163.
| Desimaali | Binääri (4 bittiä) | Oktaali | Heksadesimaali |
|---|---|---|---|
| 0 | 0000 | 0 | 0 |
| 1 | 0001 | 1 | 1 |
| 2 | 0010 | 2 | 2 |
| 3 | 0011 | 3 | 3 |
| 4 | 0100 | 4 | 4 |
| 5 | 0101 | 5 | 5 |
| 6 | 0110 | 6 | 6 |
| 7 | 0111 | 7 | 7 |
| 8 | 1000 | 10 | 8 |
| 9 | 1001 | 11 | 9 |
| 10 | 1010 | 12 | A |
| 11 | 1011 | 13 | B |
| 12 | 1100 | 14 | C |
| 13 | 1101 | 15 | D |
| 14 | 1110 | 16 | E |
| 15 | 1111 | 17 | F |
Miksi heksadesimaalia käytetään: tavut, värit ja osoitteet
Tavu on 8 bittiä ja vaihtelee välillä 0–255 (00000000–11111111). Bittien kirjoittaminen käsin on hidasta ja virhealtista; heksadesimaalina sama tavu on kaksi merkkiä, 00–FF. Binäärin muuntamiseksi heksadesimaaliksi jaa bitit neljän ryhmiin oikealta alkaen ja korvaa jokainen ryhmä taulukon numerolla. Esimerkki: 11010111 jaetaan osiin 1101 ja 0111, jotka ovat D ja 7, joten arvo on D7. Desimaalina se on 13 × 16 + 7 = 215.
Tunnetuin esimerkki ovat verkkosivujen värit. Värissä #FF8800 on kolme tavua: FF punaiselle (255), 88 vihreälle (136) ja 00 siniselle (0). Se on voimakas oranssi: täysi punainen, hieman yli puolet vihreää ja ei yhtään sinistä. Heksadesimaali esiintyy myös muistiosoitteissa, virhekoodeissa ja verkkotunnisteissa.
Tekstistä binääriksi ASCII-koodilla
Tietokone tallentaa jokaisen kirjaimen numerona ja numeron bitteinä. ASCII-taulukossa A on 65, joka 8-bittisenä binäärinä on 01000001. Sana «Hi» on kaksi kirjainta: H on 72 (01001000) ja i on 105 (01101001), joten se kirjoitetaan 01001000 01101001. Sanassa «Hola» luvut ovat 72, 111, 108 ja 97 eli 01001000 01101111 01101100 01100001, tai heksadesimaalina 48 6F 6C 61.
Työkalu käyttää UTF-8-koodausta: englannin perusmerkeillä jokainen merkki vie yhden 8 bitin tavun, mutta ä, ö, å tai emoji vie useita tavuja, joten ne antavat yli 8 bittiä. Esimerkiksi ä on kaksi tavua: 11000011 10100100 (C3 A4 heksadesimaalina).
Näin teet kaiken tämän työkalulla
Muunnin «Binääri, desimaali ja heksa» sopii omien käsinlaskujen tarkistamiseen tai pitkien lukujen ratkaisemiseen virheittä.
- Kirjoita luku oman kantalukunsa kenttään: «Desimaali (kanta 10)», «Binääri (kanta 2)», oktaali tai «Heksadesimaali (kanta 16)». Kolme muuta täyttyvät itsestään.
- Jos numero ei kuulu kantalukuun (esimerkiksi 2 binäärissä), työkalu huomauttaa siitä.
- Tekstille kirjoita se kenttään «Teksti» ja katso «Binääri (8 bittiä merkkiä kohden)» sekä tavuittain heksadesimaali. Voit myös liittää bittejä 8:n ryhmissä palataksesi tekstiin.
- Erikoisille kantaluvuille käytä kohtaa «Mikä tahansa kanta (2–36)»: valitset lähtökannan, kohdekannan ja luvun.
Rajoitukset: se muuntaa vain ei-negatiivisia kokonaislukuja (ei desimaaleja eikä etumerkkiä) eikä lisää etunollia puolestasi, joten jos haluat kiinteät 8 bittiä, täydennä käsin (13 on 00001101). Mikään kirjoittamasi ei poistu selaimestasi.
Yleiset virheet
- Jakojäännösten lukeminen väärin päin: peräkkäisissä jakolaskuissa ensimmäinen jakojäännös on oikeanpuoleisin numero, ei vasemmanpuoleisin.
- Etunollien unohtaminen, kun niitä tarvitaan: 13 on 1101, mutta tavuna 00001101. Sillä on väliä, kun pituus kuuluu tietoon, kuten värissä tai verkon peitteessä.
- Kirjaimen O sekoittaminen nollaan tai heksadesimaalisen B:n (11) sekoittaminen kasiin kopioitaessa. Heksadesimaalissa kirjaimet ovat yhtä arvokkaita isoina ja pieninä, mutta ne eivät ole sama asia kuin numero.
- Etuliitteen 0x tai merkin # jättäminen mukaan muunnettaessa: ne ovat vain merkkejä siitä, että luku on heksadesimaali, ja ne täytyy poistaa ennen liittämistä.
- Luulo, että 10 binäärissä on kymmenen: se on kaksi. Sama «10» on 2, 10 tai 16 kantaluvusta riippuen.
Ratkaistuja harjoituksia
Yritä ratkaista kukin ennen kuin katsot vastausta, ja tarkista sitten työkalulla.
- Muunna 10110110 desimaaliksi ja heksadesimaaliksi. Vastaus: 128 + 32 + 16 + 4 + 2 = 182; neljän ryhmissä 1011 0110 = B6.
- Muunna 200 binääriksi ja heksadesimaaliksi. Vastaus: 11001000 ja C8 (12 × 16 + 8 = 200).
- Muunna 7F binääriksi. Vastaus: 7 = 0111 ja F = 1111, eli 01111111, joka desimaalina on 127.
- Kirjoita «OK» binäärinä. Vastaus: O on 79 ja K on 75, eli 01001111 01001011.
Usein kysytyt kysymykset
Miten muunnan 1101:n binääristä desimaaliksi?
Lasket yhteen niiden paikkojen arvot, joissa on ykkönen: 8 + 4 + 1 = 13. Oikealta toinen numero on nolla, joten 2:ta ei lasketa mukaan.
Mikä on 255 binäärinä ja heksadesimaalina?
255 on binäärinä 11111111 ja heksadesimaalina FF. Se on suurin arvo, joka mahtuu 8 bitin tavuun.
Miksi heksadesimaali käyttää kirjaimia?
Koska se tarvitsee kuusitoista eri merkkiä, ja desimaalijärjestelmä tarjoaa vain kymmenen (0–9). Siksi A on 10, B on 11, C on 12, D on 13, E on 14 ja F on 15.
Montako eri lukua voi kirjoittaa 8 bitillä?
256, luvusta 0 lukuun 255. Yleisesti n bitillä voi esittää 2 potenssiin n arvoa.
Muuntaako työkalu negatiivisia lukuja tai desimaaleja?
Ei, vain ei-negatiivisia kokonaislukuja. Tekstille se käyttää UTF-8:aa, joten ääkköset ja emojit antavat yli 8 bittiä.