plu re

Enkonduko en la aŭtomatan daten-prilaboradon

Kodado de datenaj tipoj: nombroj

Entjeraj nombroj


Entjeraj nombroj ("sen komo") estas ofte kodataj en la duuma sistemo kaj memorataj plej ofte en 1, 2, 4 aŭ 8 bajtoj. La unua bito kodas la signumon (0 por pozitivaj, 1 por negativaj nombroj), tiel ke restas 15, 31 aŭ 63 duumaj ciferoj.
Ekzemplo: 69 = 1*64 + 0*32 + 0*16 + 0*8 + 1*4 + 0*2 + 1*1 ->
00000000 01000101

Depende de la uzataj bajtoj, entjera nombro povas atingi jenajn maksimumajn valorojn:

bajtojmaksimuma valoro
128-1 =255
2216-1 =65.535
4232-1 = 4.294.967.295
8264-1 = 18.446.744.073.709.551.615

Se oni volas kodi ankaŭ negativajn nombrojn, la maksimuma valoro estas nur la duono, ĉar la alia duono estas uzata por la negativaj nombroj. Por interesitoj: jen pli detala prezento pri kodado de negativaj nombroj.

Frakciaj nombroj

Frakciaj nombroj povas esti kodataj en fiksa-koma aŭ glit-koma reprezento.

Fiksa-komajn nombrojn uzas la komercista (financa) kalkulado, glit-komajn la fiziko. Fiksa-komaj nombroj ne esence diferencas de entjeraj nombroj, sed en komerco oni foje kodas ilin ne en la du-uma, sed en la dek-uma sistemo. (La dek-uma sistemo estas pli agrabla por homoj, sed komputiloj malpli rapide kalkulas en ĝi.) La esprimo "fiksa-koma" signifas, ke la pozicio de la komo (la nombro de la frakciaj pozicioj) estas fiksita kaj ne povas ŝanĝiĝi, ankaŭ se la valoro de la nombro ŝanĝiĝas. Ekzemplo: la nombro 130,17 havas du frakciajn poziciojn; se oni dividas ĝin per 2, la preciza rezulto estus 65,085; sed ĉar estas nur du frakciaj ciferoj, necesas rondigi al 65,09.

En glit-koma nombro la pozicio de la komo povas ŝanĝiĝi. Tiun pozicion indikas parto de la nombro. Glitkoma reprezento do kodas nombrojn per du vicoj de ciferoj:

  1. La signifikaĵo (aŭ mantiso) -- tio estas la vico de la signifikaj ciferoj
  2. La eksponento (aŭ karakteristiko), kiu indikas la lokon de la dekuma komo.

Tiuj du cifervicoj senambigue karakterizas la kodatan nombron. Ili estas memorataj kiel duumaj nombroj. En la supra ekzemplo oni povus kodi la nombron 130,17 per (13017;2); post divido per 2 la rezulto estus (65085;3).

Ekzemploj (dekumaj):

signifikaĵoeksponento
123.4567 -> 12345670 +3
0.001234567 -> 12345670 -2
456 * 10 28 -> 45600000 30
0.23 * 10 -7 -> 23000000 -7

Por interesitoj: jen pli detala priskribo.

Inter la aplikoj de fiksa-komaj kaj glit-komaj nombroj estas grava diferenco:


Specimenaj demandoj