Getalsrepresentatie voor gehele getallen
Two's complement of 2-complement is een getalsrepresentatie voor gehele getallen (integers) die in computers algemeen wordt gebruikt en waarmee de rekenoperaties relatief makkelijk geïmplementeerd kunnen worden. Een andere, minder gebruikelijke voorstelling is one's complement. Aan de hand van de representatie met 8 bits kan gemakkelijk gezien worden hoe de toewijzing plaatsvindt aan de getallen −128, −127,..., −1, 0, 1, 2,...,127. Van de bitrijen die binair de getallen 0, 1,..., 255 voorstellen, worden de rijen met de meest significante bit 0, dus binair 0,1,...127, toegewezen aan de positieve getallen (en 0) met hun binaire waarde. De bitrijen met de meest significante bit 1, dus binair 128,129,...255, stellen negatieve getallen voor en wel aflopend in deze volgorde −128, −127, ..., −1. Schematisch: Het voorbeeld laat zien dat, in het geval dat 8 bits per getal beschikbaar zijn, een positief getal wordt weergegeven door de bitrij als binair getal en een negatief getal wordt weergegeven door de bitrij die resulteert als de bitrij behorend bij de absolute waarde van het getal, als binair getal wordt afgetrokken van 256=28. Met bits kunnen in two's-complement de getallen voorgesteld worden. Voor een positief getal is de binaire voorstelling van de bitrij gelijk aan en is . Voor het bepalen van de bitrij behorend bij een negatief getal moet de absolute waarde worden afgetrokken van . In formulevorm: Hieruit volgt dat het gehele getal dat wordt voorgesteld door de bitrij , wordt gegeven door waarbij feitelijk wordt gebruikt als tekenbit. Alternatief kan geschreven worden: Daaruit ziet men dat in two's complement elke bit behalve de meest significante de gewone macht van 2 als bijdrage vertegenwoordigt, dus van laag naar hoog 1, 2, 4, 8, ..., maar dat de meest significante een negatieve bijdrage betekent. In deze representatie worden positieve getallen op de gebruikelijke wijze voorgesteld met de meest significante bit als tekenbit, 0 voor positieve en 1 voor negatieve getallen. Voor positieve getallen vormen de overige bits het binaire getal. Voor negatieve getallen worden in de binaire voorstelling van het overeenkomstige positieve getal van alle bits het complement genomen en bij het zo ontstane binaire getal 1 opgeteld. Het tegengestelde van het positieve getal dat wordt voorgesteld door de rij met tekenbit 0 en waarde-bits, bestaat uit de bitrij die verkregen wordt als het verschil, in het binair talstelsel, van de bitrij bestaande uit 0-en en een 1 als extra bit ervoor geplaatst, met de oorspronkelijke bitrij . Met 8 bits wordt bijvoorbeeld het positieve getal 79 voorgesteld door 01001111 en −79 door 10110001. Tellen we beide op volgens de normale optelling in het binaire talstelsel, dan krijgen we als som de rij 100000000=29 (9 bits), die overigens zelf in de 8-bits representatie niet voorkomt. In two's complement is er slechts één representatie voor het getal 0. Uit het bovenstaande kan afgeleid worden dat de representatie van een negatief getal in 2-complement verkregen wordt door bij de representatie in 1-complement 1 op te tellen: −79 in 1-complement (8 bits) 10110000; tel er 1 bij op: 10110000 + 00000001 = 10110001, de voorstelling van −79 in 2-complement. Net als bij 1-complement wordt bij 2-complement de meest significante bit gebruikt om aan te geven of een getal positief is of negatief. Deze meest significante bit heeft echter een andere betekenis dan bij 1-complement: in plaats van de rol van een soort minteken te vervullen, staat de meest significante bit (zeg, bit nummer ) voor . De rest van de bits wordt "normaal" geïnterpreteerd en een negatief getal wordt dan ook gevormd door de positieve waarde van de minder significante bits op te tellen bij . De relatie tussen positieve en negatieve waarden is als volgt: Zij een bitrij die de waarde representeert. Dan is (met dezelfde definitie voor complement van een bit als bij 1-complement) de bitrij die representeert gelijk aan .
Abstract from DBpedia / Wikipedia · CC BY-SA
via Wikidata sitelinks · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).