Vårt talsystem är decimalt. Deci är grekiska och ett prefix som betyder tiondel, ex: deciliter och decimeter.
Det betyder också att vi använder tio siffror för att skriva tal. Det tionde talet är 10, men den tionde siffran är 0 som kommer före 1. Därför är våra tio siffror 0-9 och inte 1-10.
Datorer räknar binärt, d.v.s. bara ettor och nollor. För datorn finns bara två siffror, 0 och 1 (bi betyder två):
Decimalt : Binärt
1 : 1 2 : 10 3 : 11 4 : 100 15 : 1111
Problemet för människor är att binära tal blir väldigt långa och otympliga.
Hexadecimalt räknar med 16 siffror: först de vanliga 0-9, sedan A-F, ex: A = 10, B = 11,… F = 15.
Decimalt : Hexadecimalt
11 : #B 16 : #10 31 : #1F 32 : #20 255 : #FF
Observera att man använder # för att visa ett det är ett hexadecimalt tal. Så #10 är inte tio, utan sexton.
Varje dator-siffra (0-1) kallas för en bit.
Fördelen med hexadecimalt är att fyra bits blir en hexadecimal:
Binärt : Hexadecimalt
0000 : #0 0100 : #4 0110 : #A 1111 : #F
Varför skriver man ut nollorna? för att en dator inte har mellanslag och komma. Den har bara ettor och nollor.
Ta talen ett, tjugotre och fyra: 1, 23, 4. För en “dator” blir det: 1234. Vad skiljer det från talen 12, 34?
Man måste skriva 012304, då vet “datorn” att man menar 01, 23, 04.
Men att göra om bits (enstaka ettor och nollor) till hexadecimalt räckte inte, man införde bytes.
En byte är 8 bits (åtta ettor/nollor), ett tal mellan 0-255 decimalt. Det praktiska är att det är 16 * 16 = 256, d.v.s. kan skrivas med två hexadecimala siffror: #00-#FF.
En byte var förr praktiskt för det motsvarade en bokstav, d.v.s. det fanns totalt 256 olika tecken att välja mellan (numera kan man välja mellan betydligt mer än 256 tecken).
Men bytes räckte inte, man införde kilobytes, där kilo betyder tusen (jämför med kilometer).
Att datorer bara räknar med ettor och nollor ställde till det.
Det visar sig att tio bits kan skapa 1024 tal (2 multiplecerat med sig självt tio gånger, 2^10), d.v.s ett tal mellan 0-1023. Och 1024 är väldigt nära 1000.
Därför infördes dessa förkortningar:
b = 1 bit (en etta eller nolla).
B = 1 byte (8 bits)
k = tusen (1000)
K = 2^10 (1024)
Den vanliga enheten är 1 KB, som betyder 1024 bytes.
Observera att man slarvigt brukar skriva 1 kb, men att det betyder något helt annat: 1000 bits, vilket är 125 bytes.
Men det räckte fortfarande inte, så man införde mega som betyder miljon.
Men återigen skiljer man på m och M.
m = k * k = 1000 * 1000 = 1 000 000
M = K * K = 1024 * 1024 = 1 048 576
Så 1 MB är lite mer än en miljon bytes.
Sedan infördes giga (g/G) som betyder miljard och tera (t/T) som betyder biljon; där varje steg är 1000 gånger större för små bokstäver, eller 1024 gånger större för stora bokstäver.