Jump to content

Development Blog

  • artikelen
    44
  • reacties
    78
  • bezichtigingen
    26288

Talstelsels algemeen


Crypteq

2357 bezichtigingen

Inleiding

Talstelsels, we maken er elke dag gebruik van. Als we rekenen, of iets met getallen doen, dan gebruiken we een talstelsel.

Een talstelsel is een bepaalde manier om getallen weer te geven. Er zijn meerdere soorten talstelsels naast wat we standaard gebruiken.

Een aantal voorbeelden waar andere talstelsels gebruikt worden dan normaal:

  • MAC adres (hexadecimaal)
  • IP (V6) adres (hexadecimaal)
  • Kleuren (bijvoorbeeld in CSS bestanden) (hexadecimaal)
  • Elektronica met computers (magnetron, telefoon, televisie, pc etc.) (binair)

In dit artikel ga ik bespreken hoe je met verschillende talstelsels kan werken.

We gebruiken allemaal doorgaans het decimale talstelsel.

Het grond getal van een talstelsel geeft aan hoeveel getallen het stelsel bevat.

Het decimale talstelsel heeft 10 als grondgetal, dus we hebben 10 getallen: 0 t/m 9.

Willen we verder dan 9 tellen dan moeten we meerdere getallen combineren.

Combineren van getallen (decimale stelsel [0,1,2,3,4,5,6,7,8,9])

Als we tellen dan is het logisch dat het getal 10 na 9 komt.

Maar waarom komt 10 na 9? Wat is daarvan de reden? En waarom is dat belangrijk?

Het is belangrijk om de reden te weten waarom 10 na 9 komt omdat je anders ook niet met andere talstelsels kan werken.

Om te beginnen gaan we het getal opsplitsen in:

  • Basis getal: Dit getal is een combinatie van getallen uit reeks getallen van het talstelsel.
  • Tel getal: Dit getal is een getal in de reeks van het talstelsel.

Als voorbeeld gebruik ik het decimale stelsel omdat iedereen daarmee kan werken.

Als we beginnen met tellen, dus bij 0 (eerste getal in de reeks van 0 t/m 9) dan is ons basis getal ook het eerste getal in de reeks, dus ook 0.

Als we doortellen dan komen we bij het getal 9, het laatste getal in de reeks. In de reeks komt 10 niet voor, dus hoe krijgen we het getal 10?

Herinner je nog dat we een basis getal hebben? Dat getal is nog steeds 0, want we hebben er nog niets mee gedaan.

Omdat we met het tel getal aan het einde van de reeks zijn, beginnen we met het tel getal weer aan het begin van de reeks,

en we verhogen het basis getal: 0 wordt dus 1 (0 + 1 = 1).

We hebben nu dus een basis getal met de waarde: 1 en een tel getal met de waarde: 0.

Om het getal te noteren, schrijven we het op van rechts naar link.

We beginnen met het tel getal: 0, en dan schrijven we het basis getal: 1.

Van rechts naar links geschreven krijgen we dan: het getal 10.

Als we verder tellen dan kunnen we gewoon weer 1 optellen bij het tel getal, totdat we weer aan het einde van de reeks zijn, dus het getal 9.

Daarna verhogen we het basis getal weer en het tel getal word weer 0, we hebben dan dus het getal 20. Dit proces kan je steeds herhalen.

Belangrijk

Het basis getal wat we gebruiken, bestaat uit een combinatie van getallen.

Omdat het basis getal ook een getal is, heeft het basis getal ook zijn eigen basis en tel getal.

Dit betekent dat het basis getal moet overeen komen het talstelsel waarin je werkt.

In het decimale stelsel is dat dus van 0 t/m 9, maar bijvoorbeeld in het octale stelsel waar je maar de cijfer 0 t/m 7 hebt,

kan je geen basis getal hebben van 9 (omdat in de reeks van 0 t/m 7 geen 9 voorkomt).

Andere talstelsels

We hebben nu dus het (voor ons makkelijkste) decimale talstelsel besproken, maar laten we het ook een met andere talstelsels proberen.

Naast het decimale talstelsel zijn er nog vele andere talstelsels. Naast het decimale worden deze twee ook veel (in de ICT) gebruikt:

  • Binaire talstelsel
  • Hexadecimale talstelsel.

Binaire talstelsel [0,1]

Het binaire talstelsel heeft 2 als grondgetal. We gebruiken dus de eerste twee getallen in de getallen reeks, dat zijn dus: het getal 0 en het getal 1.

In het begin van de reeks is het basis getal: 0, eveneens het tel getal.

Als we nu verder willen tellen, dan moeten we eerst controleren of het volgende getal in de reeks voorkomt ( 0 t/m 1). We verhogen dus het getal 0 naar 1, dit komt in de reeks voor dus dit kan.

We kunnen het getal nu niet weer verhogen, want 2 komt immers niet voor in de reeks 0 t/m 1.

We moeten dus het basis getal verhogen, van 0 naar 1 (1 komt immers voor in de reeks), en het tel getal word weer de waarde van het begin van de reeks: 0.

Als we het getal noteren dan krijgen we dus het binaire getal: 10 (binair).

Omdat binaire getallen overzichtelijk weer te geven, noteren we de getallen in groepen van 4, en vullen de lege ruimte op met nullen.

Omdat we alles van rechts naar links noteren krijgen we: 0010.

Als we nu weer het getal verhogen, dan word het tel getal 1, basis getal hoeft niet verhoogd te worden,

dus als we bovenstaande volgen krijgen we het binaire getal: 0011.

Echter als we nu weer het getal willen verhogen zitten we met een probleem, want het zowel het basis getal als het tel getal is aan het einde van de reeks (0 t/m 1).

Zoals eerder besproken heeft het basis getal, ook zijn eigen basis en tel getal.

Dus we verhogen het basis getal (van het basis getal) van 0 naar 1, en het tel getal (van het basis getal) word 0.

Het tel getal wat ook 1 is, word dus weer 0 (einde van de reeks).

Dit resulteert dus in het getal: 0100, waarbij het basis getal rood gemarkeerd is en het tel getal blauw.

Bovenstaande kan wat verwarrend zijn, lees het desnoods meerdere keren door!

Als we het bovenstaande herhalen dan kunnen we een lijstje maken:

[table=header]Binair | Decimaal

0000 | 0

0001 | 1

0010 | 2

0011 | 3

0100 | 4

0101 | 5

0110 | 6

0111 | 7

1000 | 8

1001 | 9

1010 | 10[/table]

Hexadecimale talstelsel [0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F]

Het hexadecimale talstelsel heeft 16 als grondgetal.

We gebruiken dus 16 getallen, maar wat kunnen we nog meer gebruiken dan 0 t/m 9?

0 t/m 9 zijn 10 getallen, we moeten dus nog 6 andere (getallen?) hebben.

Daarvoor gebruikt men in het hexadecimale stelsel de letters A t/m F naast de getallen 0 t/m 9.

Als we beginnen met tellen, dan beginnen we gewoon weer met het basis en tel getal, 0.

We kunnen gewoon de reeks af gaan. Na de "normale" getallen (0 t/m 9) gaan we verder met A t/m F. Als we bij het hexadecimale getal F (15 decimaal) zijn aan beland, dan verhogen we gewoon het basis getal weer en beginnen met het tel getal weer vooraan in de reeks. Het basis getal wordt dus: 1 en het tel getal word dus 0, resultaat: 10 (16 decimaal).

Ook hier kunnen we een lijstje van maken:

[table=header]Hexadecimaal | Decimaal

0 | 0

1 | 1

2 | 2

3 | 3

4 | 4

5 | 5

6 | 6

7 | 7

8 | 8

9 | 9

A | 10

B | 11

C | 12

D | 13

E | 14

F | 15

10 | 16

11 | 17

64 | 100

FF | 255

100 | 256[/table]

Lijst van talstellen naast elkaar:

[table=header]hexadecimaal | decimaal | binair

00 | 0 | 0000 0000

01 | 1 | 0000 0001

02 | 2 |0000 0010

03 | 3 | 0000 0011

04 | 4 | 0000 0100

05 | 5 | 0000 0101

06 | 6 | 0000 0110

07 | 7 | 0000 0111

08 | 8 | 0000 1000

09 | 9 | 0000 1001

0A | 10 | 0000 1010

0B | 11 | 0000 1011

0C | 12 | 0000 1100

0D | 13 | 0000 1101

0E | 14 | 0000 1110

0F | 15 | 0000 1111

10 | 16 | 0001 0000

11 | 17 | 0001 0001

64 | 100 | 0110 0100

FF | 255 | 1111 1111

100 | 256 | 0001 0000 0000[/table]

Allemaal wel leuk en aardig, maar wat heb ik eraan?

Waarschijnlijk helemaal niets, want andere talstelsels worden eingelijk alleen maar in bepaalde beroepen/situatie's gebruikt.

Ben je programmeur of wil je het worden, dan kom je vroeg of laat toch in aanraking met andere talstelsels.

Tot slot

Heb je opmerkingen over het artikel, klopt er iets niet, zie je spelfouten, ik hoor het graag smile3.gif .

Crypteq Aka BC7

4 reacties


Recommended Comments

commando

Geplaatst:

Ook een leuke manier om het aan te leren :tu: Ik zie het zelf altijd als een analoge toerenteller, als je het op deze manier uitlegt. Voor de rest is ( beter gezegt 'was' voor mij :puh: ) het voor mij een kwestie van rekenen en wiskunde gebruiken bij informatica :puh:

SpacyColours

Geplaatst:

Hoe toevallig. Ik heb hier morgen een (proef)toets over, exact over dit onderwerp. :puh:

Bedankt voor de heldere uitleg! :D

Crypteq

Geplaatst:

@commando

Als je eenmaal door hebt dan is het best simpel. Maar om het uit te leggen zodat een "leek" het snapt, moet je wat meer uitleg/info geven :).

@SpacyColours

Dat is inderdaad toevallig :puh:

Ben blij om te horen dat het artikel duidelijk is. :)

.Timothy

Geplaatst:

Ik kijk 't altijd zo:

g = SOM(v * p^n)

Waar g het getal, v de waarde op die positie, p de positie en n de maximale waarde in het getalstelsel betekenen. Vanzelfsprekend moet je bij het hexadecimale getalstelsel de letters bij v even naar hun echte waarde omrekenen (A t/m F worden dus 11 t/m 16). Daarnaast wordt p vanaf rechts geteld.

Gast
Reactie toevoegen...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...