Plik ma rozmiar 2 KiB. Jest to
W tym zadaniu kluczowe jest rozróżnienie jednostek binarnych i dziesiętnych. Zapis KiB oznacza kibibajt, czyli jednostkę zgodną z normami IEC, gdzie 1 KiB = 1024 bajty, a nie 1000 bajtów. Ponieważ 1 bajt ma 8 bitów, obliczenie wygląda tak: $2 \text{ KiB} = 2 \cdot 1024 \text{ B} = 2048 \text{ B}$, a potem $2048 \cdot 8 = 16384$ bitów. Dlatego poprawny wynik to 16384 bity. W praktyce ta różnica ma znaczenie przy analizie rozmiarów plików, pamięci RAM, bloków danych na dysku czy transmisji danych. Moim zdaniem warto zapamiętać prostą zasadę: KiB, MiB, GiB są oparte o potęgi dwójki, natomiast kB, MB, GB według układu SI odnoszą się do potęg dziesięciu. W informatyce technicznej takie szczegóły są ważne, bo mały błąd w jednostkach potrafi później popsuć obliczenia przepustowości, pojemności nośnika albo rozmiaru kopii zapasowej.
Najczęstszy problem w tym pytaniu wynika z mieszania bajtów, bitów oraz przedrostków dziesiętnych i binarnych. Plik o rozmiarze 2 KiB nie ma 2000 bitów, bo taki wynik pomija zarówno fakt, że KiB jest jednostką binarną, jak i to, że bajt składa się z 8 bitów. To trochę tak, jakby porównać długość w metrach z milimetrami bez przeliczenia skali. Wynik 2048 bitów też nie jest poprawny, chociaż pojawia się tu dobra liczba 2048. Tyle wynosi liczba bajtów w 2 KiB, ponieważ $2 \cdot 1024 = 2048$. Dopiero po przemnożeniu przez 8 otrzymujemy liczbę bitów. Z kolei 16000 bitów bierze się zwykle z założenia, że 1 KiB to 1000 bajtów, czyli z użycia logiki jednostki kB zamiast KiB. W standardach IEC zapis KiB oznacza dokładnie 1024 bajty, więc w zadaniach technicznych trzeba traktować go precyzyjnie. Z mojego doświadczenia właśnie takie drobne różnice są bardzo często źródłem pomyłek przy obliczaniu rozmiaru plików, transferów sieciowych czy pojemności pamięci. Dobra praktyka jest prosta: najpierw ustalić, czy chodzi o bity czy bajty, potem sprawdzić, czy przedrostek jest dziesiętny, czy binarny, i dopiero wtedy liczyć.