ComputersInformatietechnologie

Vertegenwoordiging van getallen in een computer. Vertegenwoordiging van gehele getallen en reële getallen in het computergeheugen

Iedereen die ooit in mijn leven heeft gedacht dat aan de "voors" of systeembeheerder te worden, of gewoon om de partij met koppelen computer-technologie, kennis over hoe de vertegenwoordiging van de nummers in het geheugen van de computer, is absoluut noodzakelijk. Immers, op basis van deze low-level programmeertalen zoals Assembler. Daarom vandaag beschouwen we de representatie van getallen in de computer en deze te plaatsen in de geheugencellen.

schrijfwijze

Als u dit artikel leest, je waarschijnlijk al weet, maar het is de moeite waard te herhalen. Alle gegevens in een personal computer worden opgeslagen in het binaire stelsel. Dit betekent dat elk nummer dat u het juiste formulier, dat is opgebouwd uit nullen en enen moeten indienen.

Met het oog op de overdracht gewone voor ons decimale getallen naar een vorm die begrijpelijk computer, moet u de hieronder beschreven algoritme te gebruiken. Er zijn ook gespecialiseerde rekenmachines.

Dus, om het nummer in het binaire systeem te zetten, dient u uw gekozen waarde te nemen en delen door 2. Daarna krijgen we het resultaat en de rest (0 of 1). Resultaat 2 opnieuw verdelen en bewaar residu. Deze procedure moet worden herhaald, zolang het resultaat ook zal zijn 0 of 1. Schrijf dan de eindwaarde en de overblijfselen in de omgekeerde volgorde, zoals wij ze hebben ontvangen.

Dat is precies wat er gebeurt in de computer representatie van getallen. Elk nummer dat is opgeslagen in binaire vorm, en neem dan de geheugencel.

geheugen

Zoals je al zou moeten weten de minimale informatie-eenheid is 1 bit. Zoals we hebben gezien, de vertegenwoordiging van de nummers in de computer vindt plaats in binair formaat. Aldus wordt elk bit van het geheugen bezet door een waarde van - 1 of 0.

Voor de opslag van grote aantallen gebruikte cel. Elke eenheid bevat 8 bits informatie. Daarom kunnen we concluderen dat de minimumwaarde in elk geheugensegment kan 1 zijn of een acht-byte binair getal.

geheel

Ten slotte kregen we naar de directe plaatsing van de gegevens in een computer. Zoals gezegd, het eerste dat de processor vertaalt de informatie in een binair formaat en dan pas toegewezen geheugen.

We beginnen met de eenvoudigste optie, die is de vertegenwoordiging van integers in de computer. PC geheugen is toegewezen aan het proces is belachelijk klein aantal cellen - slechts een. Aldus kan maximaal één slot een waarde van 0 tot 11111111. te laten vertalen maximum aantal vermeldingen in de gebruikelijke vorm.
X = 1 x 2 7 + 1 x 2 6 + 1 x 2 5 + 1 x 2 4 + 1 x 2 3 + 1 x 2 2 + 1 x 2 1 + 1 x 2 0 = 1 x 08-1 februari = 255 .

Nu zien we dat in een geheugencel kan worden gepositioneerd tussen 0 en 255. Dit geldt echter alleen voor niet-negatief geheel getal is. Als de computer moet een negatieve waarde op te nemen, gaat alles een beetje anders.

negatieve getallen

Laten we nu eens kijken hoe de vertegenwoordiging van nummers in de computer, als ze negatief. Voor het schrijven van een waarde die kleiner is dan nul, toegewezen twee geheugencellen of 16 informatiebits. Aldus 15 gaan onder het nummer zelf, en de eerste (meest linkse) bit wordt gegeven door de overeenkomstige markering.

Indien het cijfer negatief is, wordt het opgenomen, "1", indien positief, dan "0". Voor het gemak van memoriseren, kunt u de volgende analogie te trekken: als het teken is, zet dan 1 als het niet, dan is er niets (0).

De resterende 15 bits informatie worden een nummer. Net als in het vorige geval, kunt u een maximum van vijftien eenheden die in hen. Opgemerkt dient te worden dat de toetreding van negatieve en positieve getallen is significant verschillend van elkaar.

Om de 2 geheugencellen geschikt groter dan nul of gelijk aan een zogenaamde eigen code. Deze bewerking wordt uitgevoerd op dezelfde wijze als hierboven beschreven, en de maximum A = 32.766, bij gebruik van decimale notatie. Wil alleen maar om op te merken dat in dit geval, "0" verwijst naar de positieve.

voorbeelden

Vertegenwoordiging van gehele getallen in het computergeheugen is niet zo'n moeilijke taak. Hoewel het een beetje ingewikkelder als het gaat om een negatieve waarde. Het aantal van minder dan nul, door een extra code opneemt.

Om het te krijgen, produceert het apparaat een aantal extra activiteiten.

  1. Eerste geregistreerde modulus van een negatief getal in binaire notatie. Dat wil zeggen, de computer herinnert zich een vergelijkbare, maar positief.
  2. Vervolgens werd een geheugen inverteren elk bit. Voor dit doel worden alle units vervangen door nullen en vice versa.
  3. We een "1" toe te voegen aan het resultaat. Dit zal de aanvullende code.

Hier is een sprekend voorbeeld. Stel dat we een aantal X = - 131. Ten eerste, het verkrijgen van de modulus | X | = 131 wordt vervolgens omgezet in een binair systeem een record van 16 cellen. We krijgen X = 0000000010000011. Na het omkeren van X = 1111111101111100. daarvan "1" toe te voegen en het verkrijgen van de inverse code X = 1111111101111101. Voor het opnemen van een 16-bit geheugencel het minimumaantal X = - (2 15) = - 32767.

longs

Zoals u kunt zien, de vertegenwoordiging van reële getallen in een computer is niet zo moeilijk. Echter, kan de bespreking van het bereik niet voldoende is voor de meeste werkzaamheden. Teneinde grote aantallen computer geschikt toewijst geheugencel 4 of 32 bits.

Het opnameproces niet verschilt van de hierboven gepresenteerd. Dus we geven slechts een bereik van getallen die opgeslagen kunnen worden in dit type.

X max = 2147483647.

X min = - 2147483648.

Gegevenswaarden in de meeste gevallen voldoende om op te nemen en uit te voeren op de gegevens.

Vertegenwoordiging van reële getallen in een computer heeft zijn voor- en nadelen. Enerzijds maakt deze werkwijze gemakkelijk acties tussen de gehele getallen, die sterk versnelt de processor uitvoert. Aan de andere kant, dit bereik is niet genoeg om de meeste problemen in de economie, natuurkunde, rekenen en andere wetenschappen op te lossen. Dus nu kijken we naar een andere methode voor sverhvelichin.

floating point

Dit is het laatste wat je moet weten over de representatie van getallen in een computer. Aangezien er een probleem bepalen van de positie van een komma hen om dergelijke nummers ontvangen in een computer die door de exponentiële vorm bij het schrijven breuken.

Elk aantal kan worden weergegeven in de volgende vorm Xp = m * n. Waarin m - het aantal mantisse, p - radix en n - het volgnummer.

Om de opname drijvende komma getallen gebruikt volgende conditie te standaardiseren, volgens welke de mantisse module moet groter zijn dan of gelijk aan 1 / n en kleiner dan 1 zijn.

Laten we nummer 666.66 wordt gegeven. Laten we het aan de exponentiële vorm. In x = 0,66666 * 10 maart. P = 10 en n = 3.

Bij opslag van drijvende kommagetallen meestal toegewezen 4 of 8 bytes (32 bits of 64). In het eerste geval wordt het aantal enkele precisie genoemd, terwijl de tweede - een dubbele precisie.

Van de 4 bytes voor de opslag van getallen, 1 (8 bits) in gegeven over de procedure databank van teken en 3 bytes (24 bits) voor het opslaan van de mantisse toegewezen verlaten zijn sporen en op dezelfde principes als bij de geheeltallige waarden. Dit wetende, kunnen we een aantal eenvoudige berekeningen te maken.

De maximale waarde van n = 2 1111111 127 = 10. Op basis van het, kunnen we het maximale aantal nummers dat kan worden opgeslagen in het geheugen van de computer te krijgen. X = 2127. Nu kunnen we de maximaal mogelijke mantisse te berekenen. Het zal gelijk zijn aan 23-01 februari ≥ 2 23 = 2 (10 x 2,3) ≥ 1000 2,3 = 10 (3 x 2,3) ≥ 10 7. Als gevolg daarvan krijgen we een geschatte waarde.

Nu, als we beide combineren van de berekening, krijgen we de waarde die zonder verlies van 4 bytes van het geheugen kan worden opgeslagen. Het is gelijk aan X = 1.701411 * 10 38 zijn. De overige cijfers worden weggegooid, omdat het u toestaat om een precisie van de methode van de opname te hebben.

dubbele precisie

Aangezien alle berekeningen zijn geschilderd en toegelicht in de vorige paragraaf, hier vertellen we jullie allemaal zeer binnenkort. Voor dubbele precisie nummers worden meestal toegewezen 11 bits voor de bestelling en de teken en 53 bits voor de mantisse.

1111111111 n = 2 1023 = 10.

M = 2 52 -1 = 2 (10 * 5.2) = 1000 5,2 10 = 15,6 . Afgerond en verkrijgen van het maximum aantal = 2 x 1023 tot "m".

We hopen dat de informatie over de representatie van gehele getallen en reële getallen in de computer, hebben we, is het nuttig om je in training en zal een beetje duidelijker dan wat wordt meestal geschreven in de leerboeken zijn.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 nl.atomiyme.com. Theme powered by WordPress.