09. Binair rekenen

09. Binair rekenen

Doel van deze Experience:
In deze Experience ga je begrijpen hoe een computer werkt. Je leert hier waarom we de getallen 0 en 1 gebruiken en hoe we deze om kunnen zetten naar decimale getallen.

Wat heb je deze Experience nodig:
Je computer met Arduino software

De Experience;

Computers, en dus ook de Arduino UNO waar we mee werken, bestaan uit simpele componenten. De processor is eigenlijk de motor en zorgt voor het rekenwerk. Daarnaast hebben we het geheugen waarin alles wordt opgeslagen. Dit geheugen bestaat uit geheugencellen. Een geheugencel kan twee waardes hebben, namelijk 0 of 1. Met één geheugencel kun je dus alleen maar weten of iets wel of niet aanwezig is. Aangezien het geheugen uit heel veel geheugencellen bestaat geeft dit de mogelijk om met allerlei combinaties hier bruikbare informatie uit te halen.

We noemen deze geheugencel een “bit” dit is de kleinste eenheid waar we mee kunnen rekenen.

Als deze bit 0 is, dan is de waarde 0
Als deze bit 1 is, dan is de waarde 1

Je zult begrijpen dat je met één geheugencel niet veel informatie kunt opslaan. Als je er meer hebt dan kun je allerlei combinaties maken.

Stel, je hebt twee geheugencellen, dan heb je in totaal 4 combinaties:

4 cellen

Je ziet dat je met 2 cellen al vier waardes kunt maken. In de wiskunde schrijven we dit als 22 (spreek uit als twee tot de macht twee) mogelijkheden. De twee die aan de bovenzijde staat geeft aan dat je het grondgetal (het getal wat onderaan staat) 2 maal met zich zelf moet vermenigvuldigen, ofwel 2 x 2 is dus 4 combinaties.

Als je nu 3 cellen hebt dan zijn er 23  mogelijkheden, dus 2 x 2 x 2. Dit zijn dus 8 mogelijkheden. We noemen dit binair rekenen. Bij het gewone rekenen, we noemen dit decimaal rekenen, doen we alles met de getallen 0 tot en met 9, zo heb je het ook op school geleerdBij binair rekenen gebruiken we alleen de 0 en de 1.

Als we dus drie digits hebben kunnen we 8 verschillende mogelijkheden benoemen:

8 cellen

Als we dit op een computer gaan toepassen, dan is dit natuurlijk nog veel te weinig. In de computer wereld werken we met bytes. Een byte bestaat uit 8 bits. Met 8 bits heb je dus 28, dit staat voor 2x2x2x2x2x2x2x2 = 256 mogelijkheden. Het is belangrijk deze basis te begrijpen omdat we met binaire getallen ook kunnen rekenen. We moeten de binaire getallen ook weer om kunnen rekenen in decimale getallen die we als mens begrijpen. Als we bits bedoelen schrijven we dit met een kleine b, als we Bytes bedoelen gebruiken we de hoofdletter B.

De Arduino UNO is gebaseerd op een zogenaamde 8 bits processor wat betekent dat een geheugenplaats 1byte of 8 bits groot is. Laptops en computers die je in de winkel kunt kopen zijn 64 bits en kunnen hierdoor ook veel meer geheugen aansturen.

Als je een bestand op je computer hebt dan wordt dit aangegeven in kB. Als een bestand bijvoorbeeld 1kB groot is dan zijn dit 8k bits, ofwel 1000 Bytes zijn gelijk aan 8000 bits. k staat voor kilo, dit betekent 1000.

Omrekenen van binair naar decimaal

We kunnen nu eenvoudig uitrekenen wat een willekeurig binair getal in het decimale stelsel is. Stel, we hebben het binaire getal 01001010, dan zie je 8 bits wat dus ook 1 Byte is. We beginnen het omrekenen aan de rechterzijde:

Het rechtse getal 0 heeft de waarde van 20 = 1 (reken dit maar na op de rekenmachine), Dit moet je met 0 vermenigvuldigen omdat er binair geschreven hier een 0 staat.

Het 1 na rechtste getal heeft dus de waarde 1 x 21 = 2

Het 2 na rechte getal heeft dus de waarde 0 x 22 = 0, omdat alles wat je met 0 vermenigvuldigd ook als uitkomst 0 heeft, hoef je deze dus eigenlijk niet te berekenen.

We gaan dit nog een keer uitwerken:

01001010 is decimaal het getal:
01001010 = 1 x 21 = 2
01001010 = 1 x 23 = 8
01001010 = 1 x 26 = 64

Dit moet je bij elkaar optellen, de uitkomst is 2+ 8 + 64 = 74.

Video 1 uitleg Decimaal getallenstelsel;

 

Omrekenen van decimaal naar binair

In de video leggen we uit hoe je van een decimaal getal een binair getal kunt maken.

 

Binair rekenen.

Je kunt met decimale getallen rekenen, je kunt dit echter ook met binaire getallen. Stel dat je twee decimale getallen optellen bijvoorbeeld 7 + 5, dan is de uitkomst 12. Kun je zelf beredeneren hoe je dit binair zou moeten doen ?  We gaan je helpen;

Het getal 7 is binair 0111. Het getal 5 is binair 0101.

Bij binair optellen tellen we de digits die op dezelfde positie staan bij elkaar op.

0+0=0
0+1=1
1+0=1
1+1= 0, en je moet bij het getal links een extra 1 optellen.

0111
0101 +

Dit kunnen we dus uitrekenen door aan de rechterzijde te beginnen;

1 + 1 is 0 de 1 moeten we onthouden voor de linkse posities.
1 + 0 + de 1 die we hebben onthouden = 0 die 1 moeten we onthouden voor de linkse posities.
1 + 1 + de 1 moeten we onthouden is 1, we houden een 1 over die 1 moeten we onthouden voor de linkse posities.
0 + 0 + de 1 moeten we onthouden is 1

Het antwoord is dus 1100.

Je kunt je voorstellen dat je binaire getallen ook kunt aftrekken en vermenigvuldigen. Als je wilt weten hoe dit moet bestudeer dan deze website of gebruik de rekenmachine.

Wat heb je geleerd?

Je weet nu wat binair rekenen is en je kunt een binair getal omzetten naar een decimaal getal. Ook heb je geleerd wat bijvoorbeeld 23 (2 tot de macht 3) betekent.

Als je dit goed begrijpt kun je naar de test. Als je deze met goed gevolg hebt gedaan ontvang je het deel certificaat “Binair rekenen”

 

TestenStatus

Een reactie plaatsen