Jednostki miar w komputerach
Aby wprowadzić w klimat - rozmowa dwóch informatyków:
- Pożyczysz mi 500 zł?
- Masz 512 dla równego rachunku...
Jak pisze się duże liczby
Raczej nie mówi się, że ze Szczecina do Warszawy jest 500000 metrów a procesor zrobiono w technologii 0,00000009 metra.
Aby uniknąć takiej ilości zer z przodu albo z tyłu, inżynierowie i naukowcy stosują tak zwany zapis wykładniczy. Pierwsza nasza liczba do pacyfikacji to a 500000. Rozbijamy to na dwie części - 5 razy 100000. 100000 to 10^5. Całość obliczeń daje nam 500000 = 5*10^5 . Czasami fragment *10^ zamienia się na 'E' lub 'e' co daje krótki zapis 5e5. Druga liczba to 0,00000009. Rozbijamy to na 9*0,00000001 . 0,00000001 to 0.1^7, ale aby wszystko było zależne od 10 zapiszemy to jako 10^-8. Cała liczba to zatem 9*10^-8 albo 9e-8.
Zapis wykładniczy jest dla normalnego człowieka mało czytelny (ograniczenie prędkości na autostradzie to 1.1e5 metrów na godzinę), dlatego dla pierwszych trzech potęg i później co trzeciej wprowadzono specjalne nazwy:
potęgi dodatnie
- 10^1 = 10 - da - deka
- 10^2 = 100 - h - hekto/hekta
- 10^3 = 1000 - k - kilo
- 10^6 = 1000000 - M - mega
- 10^9 = 1000000000 - G - giga
- 10^12 = 1000000000000 - T - tera
- 10^15 = 1000000000000000 - E - eksa
potęgi ujemne
- 10^-1 = 0.1 - d - decy
- 10^-2 = 0.01 - c - centy
- 10^-3 = 0.001 - m - mili
- 10^-6 = 0.000001 - u - mikro
- 10^-9 = 0.000000001 - n - nano
- 10^-12 = 0.000000000001 - p - piko
przykłady
- 500000m = 500*10^3 m = 500km
- 0,00000009m = 90*10-9 m = 90nm
- 1.1e5m/h = 110*10^3 m/h = 110km/h
Informatycy mieszają się w potęgi
Komputery (w każdym razie współczesne) pracują w systemie o podstawie 2 a nie 10. Ktoś kiedyś zauważył ciekawą prawidłowość:
- 2^10 = 1024, czyli około tysiąca
- 2^20 = 1048576, czyli około miliona
- 2^30 = 1073741824, czyli około miliarda
i tak dalej z krokiem wykładnika co 10. Straszliwa ta osoba całkiem niepoprawnie nazwała te potęgi kilo, mega, giga, itd...
Od tego momentu kilo w komputerach mogło znaczyć zarówno 1000 (przy podawaniu masy komputera) jak i 1024 (przy podawaniu pojemności pamięci).
Rynek się cieszy
Komputery generalnie przyjmują i wyświetlają jednostki będące potęgami dwójki. W tym miejscu można spotkać istotny problem przy podawaniu pojemności dysków twardych. Producenci dysków bowiem (i, co dziwne, tylko dysków) podają pojemności dysków w potęgach 10.
I tak - dysk o pojemności 80GB ma około 80 miliardów bajtów = 80'000'000'000 bajtów. Po sformatowaniu go komputer wyświetla nagle dużo mniejszą wartość - dlatego, że dla komputera gigabajt jest większy, niż dla producenta. A większych jednostek mieści się mniej. Z 80GB producenta nagle robi się 74,5GB komputera (bo 74,5 * 1'073'741'824 to w przybliżeniu 80'000'000'000). Producenci dysków śpią spokojnie, bo w każdej książce opisującej układ jednostek SI jest napisane, że giga to 10^9... Pod naciskiem rynku zaczęli jednak pisać na dyskach, że ich GB to 10^9. albo wręcz podają pojemość także w bajtach.
Rozwiązanie
Twórcy norm zauważyli problem i podali następujące rozwiązanie:
Jednostki k, M, G i pozostałe oznaczają zawsze potęgi podstawy 10. Dla odróżnienia potęgi podstawy 2 mają przyrostek i (chyba od informatyczny?), czyli przyjmują postać ki, Mi, Gi.
Według tej normy producenci dysków podają prawidłową pojemność dysku, natomiast informatycy posługują się nieprawidłowymi jednostkami - 80GB "metrycznych" powinno być pokazane jako 74,5GiB "informatycznych" a nie 74,5GB. Dzięki takiemu rozróżnieniu znikłyby wszelkie niejeznocznaczności.
bity - bajty
W informatyce (w każdym razie o terminologi odangielskiej) istnieje jeszcze jeden problem - bit i bajt zaczynają się od tej samej litery, w związku nie zawsze wiadomo w jakich jednostkach podawana jest wartość. Standard jest taki:
- b to bit
- B to bajt
czyli 1b to jeden bit a 1B to jeden bajt. Francuzi nie mają tego problemu, bo u nich bajt nazywa się octet i ma skrót o. Stąd na przykład CD-ki na rynek francuski mają pojemność 700Mo a nie 700MB :)
Pamiętajcie, że różnica duża-mała litera jest w informatyce bardzo istotna. Już parę razy widziałem na listach dyskusyjnych, że ktoś ma w komputerze 512mb RAMu. Ile czego?? 512 milibitów?? Poprawny zapis to 512 Mega Bajtów, czyli 512MB.
- Wersja do wydruku
- Odpowiedz
- 909 odsłon
- Wersja PDF


Ostatnie odpowiedzi
5 dni 15 godzin temu
5 dni 20 godzin temu
1 tydzień 2 dni temu
8 tygodni 5 godzin temu
8 tygodni 1 dzień temu