100110001111000101
De mensheid heeft in de loop van haar geschiedenis talloze manieren ontwikkeld om getallen te noteren. Wellicht de oudste en eenvoudigste methode bestaat uit het kerven van streepjes op een stok. Ruim 8000 jaar geleden bestonden er al notaties voor cijfers. Het bekendste voorbeeld is het "Ishango Bot", gevonden in Afrika, nabij het Edwardmeer, een van de bronnen van De Nijl. Er staan streepjes op het bot, die op een bepaalde manier in het bot zijn gekrast. De ouderdom van het bot wordt geschat op zeker 8000 jaar.
Het zuiden van Mesopotamië wordt 3000 jr voor Chr Het zuiden van Mesopotamië wordt 3000 jr voor Chr. bewoond door Su(oe)meriërs. In die tijd gebruiken de Sumeriërs een 60-tallig talstelsel. Het sexagesimale talstelsel werkt met 1 en 10 en met wisselende factoren die om en om met 6 en 10 toenemen. De opbouw zag er als volgt uit: 1,10,60,600,3600,36.000, 216.000 enz. Het getal 5000 word in het Sumerisch als 12.320 geschreven 3600 600 60 10 1 1 2 3 2 0 1x3600 + 2x600 + 3x60 + 2x10 + 0x1 = 5000 Als we het getal 3600 “sumerisch” schrijven dan zien we het volgende: 3600 600 60 10 1 - 3 6 0 0 3x600 + 6x60 + 0x10 + 0x1 = 2160
De foto toont het “Sumerisch schrift“, ongeveer 2800 jr voor Chr.
Kijk maar eens op onderstaande link Ook in onze huidige tijd heeft het 60-tallig stelsel onze belangstelling en niet alleen door het uurwerk en de kalender… Kijk maar eens op onderstaande link http://www.dcca.nl/art/planeet12-nl.htm
Van de Romeinen kennen we de Romeinse cijfers waarbij de letters I, V, X, L, C, D en M staan voor 1, 5, 10, 50, 100, 500 en 1000. Het gebruik was dat een teken gevolgd door hetzelfde teken of een kleiner teken bij elkaar opgeteld moest worden. Bij een teken gevolgd door een teken met een grotere waarde werd het verschil bedoeld. Zo staat IX voor 10-1=9 en XI voor 10+1=11 Systemen als dat van Romeinse cijfers, waren in de oudheid wijdverbreid, maar hadden twee grote nadelen. Op de eerste plaats was het rekenen geen kleinigheid en tijdrovend. Een tweede nadeel betrof het feit dat het aantal verschillende tekens moest worden uitgebreid naarmate men grotere getallen wilde weergeven.
DD + C + LL + V + IIIII = 1000 + 100 + 100 + 5 + 5 = 1210 Wat moeten wij nog met Romeinse cijfers? Oude chronogrammen in Zuid Nederland, België en Duitsland wettigen het vermoeden dat ze hier zijn ontstaan. Het oudste exemplaar komt voor op een gedrukt boek, gevonden in de Duitse plaats Althof ('Nu het boek is voltooid, wordt aan Christus eer bewezen') DD + C + LL + V + IIIII = 1000 + 100 + 100 + 5 + 5 = 1210
Talstelsels: Wat is een talstelsel? Een talstelsel is een systeem om getallen weer te geven in de vorm van een rij cijfers. Talstelsels worden gekenmerkt door hun grondtal of radix, waarbij niet alleen de grootte van het cijfer van belang is, ook de plaats van het cijfer is belangrijk. De plaats van het cijfer bepaalt de gewichtsfactor of gewicht van dat cijfer in het getal.
Zo wordt in het decimale stelsel het getal 1432 opgevat als 1 x 1000 = 1000 4 x 100 = 400 3 x 10 = 30 2 x 1 = 2 opgeteld = 1432 De 1 heeft een veel groter gewicht dan de 2. De 1 geeft het aantal duizendtallen aan en de 2 het aantal eenheden. De gewichtsfactoren in een decimaal getal zijn opeenvolgende machten van 10.
Het decimale talstelsel maakt gebruik van tien cijfers. 0 1 2 3 4 5 6 7 8 9 Als we het getal met machten van 10 schrijven dan krijgen we: 103 = 1000 102 = 100 101 = 10 100 = 1 1 4 3 2 1000 400 30 1000 + 400 + 30 + 2 = 1432
Een ander talstelsel is het binaire of 2-tallig talstelsel dat gebruikt wordt in de computertechniek. Het grondtal of radix van het binaire talstelsel is 2. Het binaire talstelsel kent maar twee cijfers 0 en 1. De plaats van het cijfer bepaalt weer de gewichtsfactor. De gewichtsfactoren zijn hier natuurlijk machten van 2.
De exponenten zijn opvolgende gehele getallen die gemakshalve samen met het grondtal, boven de cijfers worden geplaatst. 23 = 8 22 = 4 21 = 2 20 = 1 1 8 4 1101(2) = 8+ 4 + 0 + 1 = 13(10) In het binaire talstelsel noemen we elk cijfer een bit. Dat is de afkorting van binary digit. Een groepje van 4 bits noemen we een nibble. Bij een groepje van 8 bits spreken we van een byte. Een groep van 16 bits heet een ‘word’.
Binair Decimaal 0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 Binair Decimaal 1010 10 1011 11 1100 12 1101 13 1110 14 1111 15
Een derde talstelsel is het hexadecimale of 16-tallig talstelsel. Het is “bedacht” om het beschikbare geheugen efficiënter te benutten. Het grote nadeel van het binaire stelsel is namelijk dat grote getallen heel omvangrijk worden. Zo is 12345678(10) = 101111000110000101001110(2) Het hexadecimale stelsel heeft 16 als grondtal en 16 symbolen. De 16 symbolen zijn de cijfers 0 t/m 9 en de letters A t/m F. De letters A t/m F stellen de getalswaarde 10 t/m 15 voor.
De plaats van het cijfer bepaalt de gewichtsfactor. De gewichtsfactoren zijn hier machten van 16. 165 = 1048576 164 = 65536 163 = 4096 162 = 256 161 = 16 160 = 1 B C 6 4 E 11534336 786432 24576 64 14 BC614E(16) = de som van … = 12345678(10) Het decimale getal 1234567 kan voorgesteld worden door BC614E . Dat is aanzienlijk compacter dan 101111000110000101001110. Een hexadecimaal getal moet worden omgezet in een binair getal voordat de computer ermee kan werken.
Een vierde talstelsel is het octale of 8-tallig stelsel. Wordt gebruikt in de computertechniek en bij het programmeren van PLC’s. Bij het octale stelsel werken we met de cijfers 0 t/m 8. De plaats van het cijfer bepaalt de gewichtsfactor. De gewichtsfactoren zijn hier machten van 8. 83 = 512 82 = 64 81 = 8 80 = 1 1 7 3 4 512 448 24 1734(8) = 512 + 448 + 24 + 4 = 988(10)
Binair Decimaal Hex Octaal 0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 10 1001 9 11 1010 A 12 1011 B 13 1100 C 14 1101 D 15 1110 E 16 1111 F 17
Soms moet een decimaal getal geconverteerd worden in een ander talstelsel. Dat kan met behulp van de zogenaamde staartdelingsmethode. Converteer 4589(10) naar een 16-tallig getal 4589 / 16 = 286 Restwaarde = 4589 – (286 x 16) = 13 286 / 16 = 17 Restwaarde = 8286 - (17 x 16) = 14 17 / 16 = 1 Restwaarde = 17 - (1 x 16) = 1 1 / 16 = 0 Restwaarde = 1 - (0 x 16) = 1 Het hexadecimale getal bestaat uit de achtereenvolgende resten in omgekeerde volgorde opgeschreven dus: 4589(10) = 11ED(16)
Voor het omzetten van een decimaal getal naar het octale stelsel gebruiken we eveneens de staartdelingsmethode. We moeten dan herhaald door 8 delen. Dit geldt evenzo voor het omzetten naar tweetallig stelsel.
Omzetten van 2-tallig naar 16-tallig. Converteer: 1001010011010 Binair Dec Hex 0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 10 A 1011 11 B 1100 12 C 1101 13 D 1110 14 E 1111 15 F Omzetten van 2-tallig naar 16-tallig. Converteer: 1001010011010 Verdeel het 2-tallig getal, achteraan te beginnen, in groepjes van 4 bits. Het voorste groepje eventueel aanvullen met nullen 0001 0010 1001 1010 Met behulp van nevenstaande tabel zetten we elk groepje afzonderlijk om naar Hex. 0001 0010 1001 1010 1 2 9 A
Omzetten van hexadecimaal naar binair 0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 10 A 1011 11 B 1100 12 C 1101 13 D 1110 14 E 1111 15 F Omzetten van hexadecimaal naar binair Zet elk hexadecimaal teken om in een groepje van vier bits. Bijvoorbeeld: 4A8D 4 A 8 D 0100 1010 1000 1101 4A8D(16) = 0100101010001101(2)
Omzetten van 8-tallig naar 2-tallig. Converteer: 3602 naar binair. Dec Oct 0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 10 1001 9 11 1010 12 1011 13 1100 14 1101 15 1110 16 1111 17 Omzetten van 8-tallig naar 2-tallig. Converteer: 3602 naar binair. Met behulp van nevenstaande tabel zetten we elk octaal cijfer om in een groepje van 3 bits. 3 6 2 011 110 000 010 3602(8) = 1110000010(2)
Voor het converteren van 2-tallig naar octaal verdelen we het binaire getal, achteraan te beginnen, in groepjes van 3 bits. Bijvoorbeeld: 10010111011 010 111 011 2 7 3 10010111011(2) = 2273(8)
Het omzetten van 16-tallig naar 8-tallig gaat het snelst via het binaire talstelsel. Bijvoorbeeld: 4A8D 4 A 8 D 0100 1010 1000 1101 100101010001101 100 101 010 001 100 101 010 001 4 5 2 1 Dus 4A8D(16) = 45215(8)
Waarom eigenlijk hexcode? Werken met de computer zonder kleuren is tegenwoordig ondenkbaar. Alle kleuren worden toegepast middels een getal. Als je kleuren toepast in webpagina's of andere beeldtoepassingen moet je de kleuren benoemen. "Donkergroenviolet" beschrijft een bepaalde kleur, maar wat moet een computer ermee? .
Computers werken 2-tallig. Om het beschikbare geheugen optimaal te benutten worden getallen hexadecimaal genoteerd. In de computer zit geen kleur. Kleuren worden genoteerd volgens het RGB-kleurenmodel. In het RGB-model komen alleen getalswaarden van 0 tot 255 voor. We spreken af dat alle getallen systematisch in groepen van 2 hex-cijfers worden weergegeven.
Achter de HTML-hexnotatie zit een prachtig kleuren systeem: Als de 0(10) = 00(16), en het getal 255(10) = FF(16). Dan kun je basiskleuren zo uit het hoofd mengen. De RGB-basiskleuren worden berekend aan de hand van het in- en uitschakelen van drie lichtbronnen. De secundaire kleuren zijn het resultaat van een vermenging van twee basiskleuren. Wij spreken af dat voor zwart alle kleurbronnen uit worden gezet. En voor wit alle kleurbronnen aan worden gezet. Alle overige mengkleuren kun je nu genereren door de afzonderlijke RGB-waarden te variëren.
Rood Groen Blauw HTML Kleur 00 000000 Zwart FF FF0000 00FF00 0000FF Geel FF00FF Magenta 00FFFF Cyaan FFFFFF Wit FFFFFF(16) = 16.777.215(10)
Bedankt voor uw aandacht Zijn er nog vragen? Bedankt voor uw aandacht