Nummer systemen
Een getallenstelsel is een set regels voor het weergeven van getallen met behulp van verschillende numerieke tekens. Nummerstelsels worden ingedeeld in twee typen: niet-positioneel en positioneel.
In positionele nummersystemen hangt de waarde van elk cijfer niet af van de positie die het inneemt, dat wil zeggen van de plaats die het inneemt in de reeks cijfers. In het Romeinse cijfersysteem zijn er slechts zeven cijfers: één (I), vijf (V), tien (X), vijftig (L), honderd (C), vijfhonderd (D), duizend (M). Met behulp van deze nummers (symbolen) worden de resterende nummers geschreven door optellen en aftrekken. IV is bijvoorbeeld de notatie van het getal 4 (V — I), VI is het getal 6 (V + I), enzovoort. Het getal 666 wordt in het Romeinse systeem als volgt geschreven: DCLXVI.
Deze notatie is minder handig dan de notatie die we momenteel gebruiken. Hier wordt zes geschreven met één symbool (VI), zes tienen met een ander (LX), zeshonderdderde (DC). Het is erg moeilijk om rekenkundige bewerkingen uit te voeren met getallen geschreven in het Romeinse cijfersysteem. Een algemeen nadeel van niet-positionele systemen is ook de complexiteit van het weergeven van voldoende grote getallen om te resulteren in een buitengewoon omslachtige notatie.
Beschouw nu hetzelfde nummer 666 in het positienummersysteem. Daarin betekent een enkel teken 6 het aantal enen als het op de laatste plaats staat, het aantal tientallen als het op de voorlaatste plaats staat en het aantal honderden als het op de derde plaats vanaf het einde staat. Dit principe van het schrijven van getallen wordt positioneel (lokaal) genoemd. In zo'n opname krijgt elk cijfer een numerieke waarde, niet alleen afhankelijk van de stijl, maar ook van waar het staat wanneer het nummer wordt geschreven.
In het positiegetallenstelsel kan elk getal dat wordt weergegeven als A = +a1a2a3 … ann-1an worden weergegeven als een som
waarbij n - eindig aantal cijfers in de afbeelding van een getal, ii getal i-go cijfer, d - basis van het getallenstelsel, i - rangtelwoord van de categorie, dm-i - "gewicht" van de i-ro categorie . Cijfers ai moeten voldoen aan de ongelijkheid 0 <= a <= (d — 1).
Voor decimale notatie, d = 10 en ai = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Aangezien getallen die uit enen en nullen bestaan, kunnen worden opgevat als decimale of binaire getallen wanneer ze samen worden gebruikt, wordt meestal het grondtal van het getallenstelsel aangegeven, bijvoorbeeld (1100)2-binair, (1100)10-decimaal.
In digitale computers worden andere systemen dan decimaal veel gebruikt: binair, octaal en hexadecimaal.
Binair systeem
Voor dit systeem d = 2 en hier zijn slechts twee cijfers toegestaan, d.w.z. ai = 0 of 1.
Elk getal uitgedrukt in het binaire systeem wordt weergegeven als de som van het product van de macht van base tweemaal het binaire cijfer van de gegeven bit. Het getal 101.01 kan bijvoorbeeld als volgt worden geschreven: 101.01 = 1×22 + 0x21 + 1×20 + 0x2-1 + 1×2-2, wat overeenkomt met het getal in het decimale stelsel: 4 + 1 + 0,25 = 5.25 .
In de meeste moderne digitale computers wordt het binaire getallenstelsel gebruikt om getallen in een machine weer te geven en rekenkundige bewerkingen op uit te voeren.
Het binaire getalsysteem, vergeleken met het decimale systeem, maakt het mogelijk om de circuits en circuits van het rekenapparaat en het geheugenapparaat te vereenvoudigen en de betrouwbaarheid van de computer te vergroten. Het cijfer van elk bit van een binair getal wordt weergegeven door de "aan / uit" -toestanden van elementen zoals transistors, diodes, die betrouwbaar werken in de "aan / uit" -toestanden. De nadelen van het binaire systeem zijn onder meer de noodzaak om volgens een speciaal programma de originele digitale gegevens te vertalen naar het binaire getalsysteem en de resultaten van de beslissing in decimalen.
Octaal getallenstelsel
Dit systeem heeft basis d == 8. Getallen worden gebruikt om getallen weer te geven: 0, 1, 2, 3, 4, 5, 6, 7.
Het achttallig stelsel wordt in de computer gebruikt als hulpmiddel bij het voorbereiden van problemen om op te lossen (in het programmeerproces), bij het controleren van de werking van een machine en bij het debuggen van een programma. Dit systeem geeft een kortere weergave van het getal dan het binaire systeem. Met het achttallig stelsel kunt u eenvoudig overschakelen naar het binaire stelsel.
Hexadecimaal getallenstelsel
Dit systeem heeft basis d = 16. 16 karakters worden gebruikt om getallen weer te geven: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, en de tekens A … F vertegenwoordigen de decimale getallen 10, 11, 12, 13, 14 en 15. Het hexadecimale getal (1D4F) 18 komt overeen met het decimaal getal 7503 omdat (1D4F)18 = 1 x163 + 13 x 162 + 14 x 161+ 15 x 16O = (7503)10
Met hexadecimale notatie kunnen binaire getallen compacter worden geschreven dan octaal. Het vindt toepassing in invoer- en uitvoerapparaten en weergaveapparaten voor nummervolgorde van sommige computers.
Binair-decimaal getallenstelsel
De weergave van getallen in een binair-decimaal systeem is als volgt. De decimale notatie van het getal wordt als basis genomen en vervolgens wordt elk van de cijfers (van 0 tot 9) geschreven in de vorm van een viercijferig binair getal dat een tetrad wordt genoemd, dat wil zeggen dat er niet één teken wordt gebruikt om weer te geven elk cijfer van het decimale stelsel, maar vier.
Het decimaal getal 647,59 komt bijvoorbeeld overeen met BCD 0110 0100 0111, 0101 1001.
Het binair-decimale getalsysteem wordt gebruikt als een tussenliggend getalsysteem en voor het coderen van invoer- en uitvoernummers.
Regels voor het overzetten van het ene nummerstelsel naar het andere
De uitwisseling van informatie tussen computerapparaten vindt voornamelijk plaats via getallen die worden weergegeven in het binaire getallenstelsel. Informatie wordt echter aan de gebruiker gepresenteerd in getallen in het decimale stelsel en de adressering van commando's wordt gepresenteerd in het octale stelsel. Vandaar de noodzaak om nummers van het ene systeem naar het andere over te dragen tijdens het werken met een computer. Gebruik hiervoor de volgende algemene regel.
Om een geheel getal om te zetten van een willekeurig getalstelsel naar een ander, is het noodzakelijk om dit getal achtereenvolgens te delen door het grondtal van het nieuwe stelsel totdat het quotiënt niet kleiner is dan de deler. Het getal in het nieuwe systeem moet worden geschreven in de vorm van restanten van deling, beginnend met de laatste, dat wil zeggen van rechts naar links.
Laten we bijvoorbeeld het decimale getal 1987 omzetten in binair:
Het decimale getal 1987 in binair formaat is 11111000011, d.w.z. (1987)10 = (11111000011)2
Bij het overschakelen van een willekeurig systeem naar een decimaal getal, wordt het getal weergegeven als de som van de machten van de basis met de bijbehorende coëfficiënten, waarna de waarde van de som wordt berekend.
Laten we bijvoorbeeld het octale getal 123 omzetten in decimaal: (123)8 = 1 x 82 + 2 x 81 + 3 x 80 = 64 + 16 + 3 = 83, d.w.z. (123)8 = (83)10
Om het gebroken deel van een getal van een willekeurig systeem naar een ander over te dragen, is het noodzakelijk om deze breuk en de resulterende gebroken delen van het product achtereenvolgens te vermenigvuldigen op basis van het nieuwe getallenstelsel. Het fractionele deel van een getal in het nieuwe systeem wordt gevormd in de vorm van hele delen van de resulterende producten, beginnend bij de eerste. Het vermenigvuldigingsproces gaat door totdat een getal met een bepaalde precisie is berekend.
Laten we bijvoorbeeld de decimale breuk 0,65625 converteren naar het binaire talstelsel:
Aangezien het gebroken deel van het vijfde product alleen uit nullen bestaat, is verdere vermenigvuldiging niet nodig. Dit betekent dat het gegeven decimaal foutloos wordt geconverteerd naar binair, d.w.z. (0,65625)10 = (0,10101)2.
Het omzetten van octaal en hexadecimaal naar binair en vice versa is niet moeilijk. Dit komt omdat hun bases (d - 8 en d - 16) overeenkomen met gehele getallen van twee (23 = 8 en 24 = 16).
Om octale of hexadecimale getallen naar binair te converteren, volstaat het om elk van hun getallen te vervangen door respectievelijk een drie- of viercijferig binair getal.
Laten we bijvoorbeeld het octale getal (571)8 en het hexadecimale getal (179)16 vertalen naar het binaire getallenstelsel.
In beide gevallen krijgen we hetzelfde resultaat, d.w.z. (571)8 = (179)16 = (101111001)2
Om een getal om te zetten van binair-decimaal naar decimaal, moet u elke tetrad van het getal dat wordt weergegeven in binair-decimaal getal, vervangen door een cijfer dat wordt weergegeven in decimaal getal.
Laten we bijvoorbeeld het getal (0010 0001 1000, 0110 0001 0110) 2-10 in decimale notatie schrijven, d.w.z. (0010 0001 1000, 0110 0001 0110)2-10 = (218.625)