int

Status
Niet open voor verdere reacties.

daandaanie

Gebruiker
Lid geworden
23 jun 2012
Berichten
146
hallo,
kan iemand mij uitleggen hoe het zit met int
het kan max 2 milljard hebben
het is 4 bytes
32 bits

het kan max 2 milljard hebben maar het is maar 4 bytes?

kan iemand het uitleggen

alvast bedankt
 
Dat is een simpele vraag die heel wat uitlegt vereist. Het gaat namelijk om hoe een computer met data omgaat en dat heeft weer te maken met geheugen adressering. De computer weet namelijk helemaal niet dat het gaat om het getal dat wij mensen lezen als 2000000000. Heel wat uitleg, dus veel leesplezier :)

http://en.wikipedia.org/wiki/Integer_(computer_science)
 
Laatst bewerkt:
Kort door de bocht.

1 byte is 8 bits
dus 4 bytes is 32 bits

dus de maximale decimale waarde die in 32 bits past is 2^32 = 4294967296

Echter als het een signed int is dan heb je 1 bit nodig voor de aanduiding voor + of -. In dat geval is de maximale waarde dus 2^31 = 2147483648
 
Dat staat dus ook uitgelegd op de pagina waar ik naar verwees, maar die is wellicht veel te uitgebreid. Mooie uitleg RogerS. Kort, duidelijk en naar mijn bescheiden mening door iedereen te begrijpen :thumb:
 
Wat RogerS zegt klopt, al is het misschien even duidelijk om erbij te zeggen dan een "signed" integer ook 2147483648 in de min dus kan.


Je houd uiteindelijk dus evenveel over, maar nu verdeeld in 2 halve (de - reeks en de + reeks). Er past dus in een signed als een unsigned int evenveel data.

4294967296 in een unsigned.
in signed past het verschil van - 2miljard tot + 2 miljard = 4294967296

Nu moet alles zowat toch wel bekend zijn :D
 
En als iemand mij kan vertellen waar die 2 van 2^32 vandaan komt begrijp ik t helemaal:)
 
Laatst bewerkt:
Uuuh, standaard wiskunde?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan