Heltal (Computer): Forskelle mellem versioner

Content deleted Content added
Ny side: Hvordan '''tal''' bliver repræsenteret internt i computeren afhænger af programmeringssprog, om der er tale om heltal eller Decimal tal og compu...
(Ingen forskel)

Versionen fra 26. apr. 2012, 17:20

Hvordan tal bliver repræsenteret internt i computeren afhænger af programmeringssprog, om der er tale om heltal eller Decimal tal og computerens alder.

heltal repræsentation

I moderne computere bliver heltal næsten altid gemt som 2s-komplement eller en streng af karakterstreng karakterer, afhængig af programmerings sproget. I programmeringssproget C bliver heltalsværdier gemt som 2s-komplement. Afhængig af programmeringssproget vil der være grænser for hvor store og små tal man kan regne med. I programmeringssproget LISP er der ingen begrænsning på størrelsen af heltal.

Når tallet bliver gemt som 2s-komplement er der afsat fast størrelse på forhånd og størrelsen kan da være begrænset til 2^15 (-32768..32767), 2^23, 2^31, 2^63 eller 2^127. I gamle computer er BCD (tal) repræsentation også anvendt.


2s-komplement

Eksempel på 2s-komplement

Heltalsværdi 169:

16 bit computer ord
Bit nummer 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bit værdi 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1


Heltalsværdi -169:

16 bit computer ord
Bit nummer 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bit værdi 1 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1

Karakterstrengs repræsentation

Eksempel på Karakterstrengs repræsentation

Heltalsværdi 169:

byte nummer 1. 2. 3.
ASCII "1" "6" "9"
Bit nummer 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bit værdi 0 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 0 0 0 1 0 0 1


Heltalsværdi -169:

byte nummer 1. 2. 3. 4.
ASCII "-" "1" "6" "9"
Bit nummer 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bit værdi 0 0 1 0 1 1 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 0 0 0 1 0 0 1


BCD repræsentation

BCD er en teknik hvor tallet gemmes i et ti-tals talsystem. Hver ciffer fylder 4 bit svarende til bitværdierne (0000..1001). bitværdierne (1010..1111) udnyttes ikke. Fordelen ved BCD er at det meget let at udlæse værdien, men det er mindre effektivt ved beregninger. Teknikken er en gammel teknik som ikke anvendes ret meget i dag.

Eksempel på BCD repræsentation

Heltalsværdi 169:

nibbel nummer (4 bit) 1. 2. 3.
Ciffer værdi "1" "6" "9"
Bit nummer 3 2 1 0 3 2 1 0 3 2 1 0
Bit værdi 0 0 0 1 0 1 1 0 1 0 0 1

Se også