Binäärijärjestelmä

Miten pystyn muuttamaan luvut kymmenjärjestelmästä binäärijärjestelmään.
Vaikkapa esimerkkinä mikä luku 24 on binäärilukuna?
114075
Äänestä

Muut lukivat myös

Vastaukset 11

Vanhimmat

24 (dec)= 2*10^1 4*10^0 = 1*2^4 1*2^3 0*2^2 0*2^1 0*2^0 = 11000 (bin)

Äänestä

Pistä paperille luvut 2^7,2^6...,2^2,2^1,2^0
tai valmiiksi laskettuna: 128,64,32,16,8,4,2,1

Tuossa on kahdeksanbittinen järjestelmä siis.
Sitten vain katsotaan, mitkä luvut yhteenlaskettuna tuottaa halutun summan ja vain niiden paikalle laitetaan ykkönen.
24 = 16 8
Eli vastaus kahdeksalla bitillä: 00011000
Alkunollat voi jättää poiskin: 11000

Vastaavasti vaikka luku 47
47 = 32 16 1
-> 110001

Äänestä
  • Vähän aikaa kesti ennen kuin ymmärsin mutta tulihan se sieltä loppujen lopuksi. Kiitoksia.

    Äänestä

  • Joni kirjoitti:

    Vähän aikaa kesti ennen kuin ymmärsin mutta tulihan se sieltä loppujen lopuksi. Kiitoksia.

    on hankalia tapoja, jos pitäisi muuttaa esimerkiksi
    12345D binäärijärjestelmään.
    Järkevä tapa on seuraava:
    Jaetaan luku kahdella, pannaan jakojäännös muistiin,
    jaetaan kahdella jne. Jakojäännökset jonoon asetettuna
    muodostavat binäärivastineen:

    Luku jakojäännös
    12345
    6122 1
    3061 0
    1505 1
    752 1

    376 0
    188 1
    94 0
    47 0

    23 1
    11 1
    5 1
    2 1

    1 0
    0 1

    Jollen väärin laskenut, niin
    12345D = 10 1111 0010 1101B.

    Äänestä

  • minätässä kirjoitti:

    on hankalia tapoja, jos pitäisi muuttaa esimerkiksi
    12345D binäärijärjestelmään.
    Järkevä tapa on seuraava:
    Jaetaan luku kahdella, pannaan jakojäännös muistiin,
    jaetaan kahdella jne. Jakojäännökset jonoon asetettuna
    muodostavat binäärivastineen:

    Luku jakojäännös
    12345
    6122 1
    3061 0
    1505 1
    752 1

    376 0
    188 1
    94 0
    47 0

    23 1
    11 1
    5 1
    2 1

    1 0
    0 1

    Jollen väärin laskenut, niin
    12345D = 10 1111 0010 1101B.

    >Jollen väärin laskenut, niin
    >12345D = 10 1111 0010 1101B

    no et sitten viitsinyt tarkistaa ...
    12345 = 11 0000 0011 1001

    Äänestä

- Helpoin tapa on ottaa näytölle Microsoftin funktiolaskin, kirjoittaa desimaaliluku ja valita radiopainike 'Bin' , jolloin näyttö muuttuu binääriluvuksi. Se on siinä, ei tarvitse tietää taustoista sen kummempaa.

- Käsin laskettaessa voi menetellä seuraavasti. (kuten "minätässä" esitti)
24/2 = 12 jakojäännös 0
12/2 = 6 jakojäännös 0
6/2 = 3 jakojännös 0
3/2 =1 jakojäännös 1
1/2 = 0 jakojäännös 1

Jakojäännöksistä muodostuu binääriluku 24des. => 11000bin.

Tarkistetaan: 1*2^4 1*2^3 0*2^2 0*2^1 0*2^0 = 16 8 0 0 0 = 24

- Kun tehdään tietokoneohjelma ylläolevan mallin mukaan, saadaan tulostus käänteisessä järjestyksessä (kuten edellä). Kirjoittamalla rekursiivinen funktio, homma hoituu hienosti suoraan.
Esimerkki tällaisesta C funktiosta:

void binaari(int luku)
{
if (luku > 0)
{
binaari(luku/2);
cout

Äänestä

Toihan on 16 8 elikkä 11000

Kun muistaa että jokaisella paikalla on painonsa

16 8 4 2 1
1 1 0 0 0 = 24

Äänestä

Otetaan esille Windows-laskin ja valitaan Funktiolaskin. Näppäillään 24 ja valitaan vasemmasta yläkulmasta moodi Bin, sekä havaitaan tulos 11000.

Sitten palautetaan moodi Dec ja näppäillään uusi kymmenluku ja toistetaan edellinen.

Äänestä

Kuten edellä kävi ilmi ,sarjakehitelmällä lopusta alkuun. ykköset,kakkoset neloset kahdeksaiset jne. puuttuvaa numerosaaa merkitään nollalla ja toteutunutta ykkösellä.

Äänestä

Tarkennnetusti. Sarjakehitelmä 1-2-4-8-16 jne.. Nähdään että binäärisarjassa on riittävästi lukuja tuloksen saamiseksi. Käännetään sarja ja aloitetaan lopusta_ 1siä =0, 2sia =0, mutta 8saisia =1kpl ja 16taisia=1klp, eli 8 16. Joka bittikielellä on 1100. Binäärinen bitti on kuin taittettaisiin paperiarkki eli ykkös-osa,aina uudestaan kahtia. Kerran taitetussa on 2paperisiivua päälletysten,kahdesti taitetussa on 4 siivua, kolmasti taitetussa 8 ja neljästi taitetussa on 16 -kerrosta. Mikäli binääristettäisiin esim luku 47, tarvittaisiin sarja: 2,4,8,16,32. 32 , ykkösiä on 1-kpl, kakkosia 1- kpl, nelosia- 1kpl , kahdeksaisia 1-kpl, 16:sta ei tarvita= 0-kpl ja 32hta on 1kpl saadaan= 32 8 4 2 1, joka bittikielellä on 10111 eli nyt kuusinumeroinen luku,kun on viisi taittoa.

Äänestä
  • Siis vielä edellisiin. huolimattomuuttani jätin kummastakin tuloksesta yhden bitin lopusta eli luku 24 =11000, viisi bittiä ja luku 47=101111 kuusi bittiä! I am so sorry.

    Äänestä

Kommentoi aloitusta


Joni kirjoitti:

Miten pystyn muuttamaan luvut kymmenjärjestelmästä binäärijärjestelmään.
Vaikkapa esimerkkinä mikä luku 24 on binäärilukuna?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu