← Lekcje
Python · lekcja 19

Bit, obraz i zamiana liczb

Systemy liczbowe, część 2 z 3

  1. Bit: najmniejsza porcja informacji, jaką da się zapisać
  2. Jak dźwięk i obraz zamieniają się w ciąg liczb?
  3. Ile bitów kosztuje jeden piksel? Drzewo decyzyjne odcieni
  4. Dwa algorytmy: z dwójkowego na dziesiętny i z powrotem

Podręcznik: s. 105–110. Dziś bez pisania kodu.

Rozgrzewka · 3 minuty

Co zostało z systemów liczbowych?

Wracamy do trzech systemów z poprzedniej lekcji.

  1. Co znaczy, że system dwójkowy jest pozycyjny, i jakie wagi mają w nim kolejne cyfry?
  2. Zamienialiście liczby dzieleniem przez 2. W którą stronę czyta się kolumnę reszt?
  3. Jedna cyfra szesnastkowa zastępuje dokładnie cztery cyfry dwójkowe. Skąd to wiadomo?
podręcznik Informatyka na czasie 2, s. 103–105 (7.1 Liczby dziesiętne i dwójkowe, tabela 7.1) i s. 235 (dodatek 14 Systemy liczbowe)
Część 1 · Bit

Najmniejsza porcja informacji

Liczby, teksty, grafika i dźwięk są w komputerze kodowane jako liczby. Najmniejszą, niepodzielną porcją informacji jest bit (od angielskiego binary digit, cyfra dwójkowa): informacja, którą da się zapisać jedną cyfrą dwójkową, 0 albo 1.

Bit działa jak włącznik światła: albo świeci, albo nie. Trzeciej możliwości nie ma.

Ciekawostka. Nie wszystkie pierwsze komputery liczyły dwójkowo. ENIAC, uruchomiony do pracy w 1945 roku, liczył dziesiętnie: każdą cyfrę pamiętał licznik pierścieniowy o dziesięciu pozycjach, a jedna taka cyfra kosztowała 36 lamp elektronowych.

Podręcznik Informatyka na czasie 2, s. 105 (7.2 Cyfrowy zapis informacji, pojęcie z marginesu: bit) · ciekawostka: en.wikipedia.org/wiki/ENIAC
Część 1 · Dźwięk

Fala dźwiękowa na ciąg liczb

Mikrofon w telefonie zamienia falę dźwiękową na sygnał elektryczny. Potem przetwornik A/C (analogowo-cyfrowy) próbkuje ten sygnał, czyli mierzy jego wysokość tysiące razy na sekundę i każdy pomiar zapisuje jako liczbę dwójkową.

Sygnał wejściowy amplituda czas Przetwornik A/C Próbki: ciąg liczb 0144867 5423 -5-20-24-31

Dla płyt CD standardem jest 44,1 kHz i 16 bitów na próbkę, czyli 2¹⁶ = 65 536 możliwych wartości wysokości fali. Skrót kHz to kiloherc: 44,1 kHz znaczy 44 100 pomiarów w ciągu sekundy.

Podręcznik Informatyka na czasie 2, s. 106 (7.2 Cyfrowy zapis informacji, infografika „Jak dane analogowe są przekształcane na cyfrowe?”)
Część 1 · Obraz

Każdy piksel dostaje swoją liczbę

Zdjęcie z płynnym przejściem odcieni zieleni po zmniejszeniu rozdzielczości rozpada się na widoczne kwadraty, czyli piksele. Ten obraz ma 31 pikseli w poziomie i 31 w pionie. Jego środkowa linia to 31 pól: od ciemnej zieleni na końcach do najjaśniejszej na środku. Najciemniejszemu odcieniowi przypisujemy liczbę 0, najjaśniejszemu 15.

Środkowa linia obrazu w powiększeniu 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Cała linia obrazu to ciąg 31 liczb od 0 do 15
Podręcznik Informatyka na czasie 2, s. 107 (7.2 Cyfrowy zapis informacji, rys. 7.4 Gradient, rys. 7.5 Gradient po zmniejszeniu rozdzielczości, rys. 7.6 i 7.7 Środkowa linia obrazu)
Część 1 · Kod odcienia

Cztery pytania i odcień gotowy

Drzewo czyta się od góry, a każdy poziom to jedno pytanie: odpowiedź „tak” to 1, „nie” to 0. Pierwsza cyfra od lewej, bit najbardziej znaczący, mówi tylko, czy odcień jest z jaśniejszej połowy. Ostatnia, bit najmniej znaczący, wybiera już jeden z dwóch odcieni.

0 1 0 1 0 1 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 W lewo 0, w prawo 1. Jeden piksel tego obrazu kosztuje 4 bity
Podręcznik Informatyka na czasie 2, s. 108 (7.2 Cyfrowy zapis informacji, rys. 7.8 Diagram ilustrujący tworzenie kodów odcieni w obrazie, pojęcia z marginesu: drzewo decyzyjne, bit najbardziej znaczący, bit najmniej znaczący)
Część 2 · Z dwójkowego na dziesiętny

Trzy kroki i po sprawie

  1. Ponumeruj cyfry liczby dwójkowej od prawej do lewej, zaczynając od 0.
  2. Każdą cyfrę potraktuj jako 0 albo 1 i pomnóż przez 2 podniesione do potęgi równej numerowi tej cyfry.
  3. Zsumuj otrzymane iloczyny.
210 100 w systemie dwójkowym 100₂ = 0·2⁰ + 0·2¹ + 1·2² = 0·1 + 0·2 + 1·4 = 4
Podręcznik Informatyka na czasie 2, s. 109 (7.3 Algorytmy zamiany reprezentacji liczb, „Zamiana liczby binarnej na liczbę dziesiętną”, rys. 7.9 Schemat zamiany liczby binarnej na dziesiętną)
Część 2 · Z dziesiętnego na dwójkowy

Dzielimy przez 2, aż zostanie zero

Liczbę dzielimy przez 2 i zapisujemy resztę. Potem dzielimy przez 2 otrzymany iloraz i znów zapisujemy resztę. Powtarzamy to, dopóki iloraz nie wyniesie 0.

Liczba Iloraz z dzielenia przez 2 Reszta z dzielenia przez 2 123611 61301 30150 1571 731 311 101 czytamy od dołu

Kolumnę reszt czytamy od dołu do góry i zapisujemy cyfry od lewej do prawej: 123₁₀ to 1111011₂. Tabela jest tu po to, żeby dało się znaleźć własną pomyłkę.

Podręcznik Informatyka na czasie 2, s. 109–110 (7.3 Algorytmy zamiany reprezentacji liczb, „Zamiana liczby dziesiętnej na liczbę binarną”, tabela 7.2 Przebieg algorytmu zapisu liczby 123 w postaci binarnej, ramka „Dobra rada”)
Ćwiczenie · na kartce · 12 minut

Ćwiczenie: w obie strony i kolor

  1. Podpisz kartkę. Zamień na dziesiętne: 111₂, 10001₂, 1101101₂. Podpisz wagi pod cyframi i dodaj te, nad którymi stoi 1.
  2. Zamień 117 na dwójkową: wypełnij tabelę z prawej, wynik odczytaj od dołu do góry.
  3. Wróć do drzewa odcieni. Którym z kolei odcieniem jest kod 1011 i jaka liczba mu odpowiada? Jaki kod ma odcień numer 6?
Liczba | Iloraz : 2 | Reszta
  117  |            |
       |            |
  ...  |            |
Wynik od dolu do gory: ......

 64 32 16  8  4  2  1
 __ __ __ __ __ __ __

Kto skończy wcześniej: ile bitów na piksel przy 32 odcieniach?

Dla chętnych (dom): wynik punktu 2 potwierdza kalkulator systemu Windows w trybie programisty.

Podręcznik Informatyka na czasie 2, s. 109 (ćwiczenie 2) i s. 111 (ćwiczenie 3, tu w wersji na kartce)
Podsumowanie · Pytania kontrolne

Trzy pytania na koniec

  1. Czym jest bit i dlaczego mówimy o nim „niepodzielna porcja informacji”?
  2. Dlaczego do zapisania jednego z szesnastu odcieni wystarczają dokładnie 4 bity?
  3. Które dwa działania wystarczą, żeby zamienić liczbę dziesiętną na dwójkową, i kiedy przestajemy je powtarzać?
Podręcznik Informatyka na czasie 2, s. 105–110 (7.2 Cyfrowy zapis informacji, 7.3 Algorytmy zamiany reprezentacji liczb)
Podsumowanie · Praktyka

A jak to wygląda w produkcji?

Na lekcjiW produkcjiStatus
Bit jako najmniejsza porcja informacjiTa sama jednostka opisuje dziś prędkość łącza i jakość nagrania, a pojedyncze bity w jednej liczbie służą za zestaw przełączników z ustawieniami.nadal w użyciu
4 bity na piksel, czyli 16 odcieniFormat PNG zapisuje kolor jako 8 albo 16 bitów na każdy z trzech kanałów, czyli 24 albo 48 bitów na piksel.rozszerzane
Próbkowanie 44,1 kHz dla płyty CD44,1 kHz zostało przy muzyce z płyt, ale w wideo i w dźwięku zawodowym standardem jest 48 kHz: tak zapisuje ścieżkę DVD i Blu-ray.zastępowane
Tabela dzieleń na kartceZamianę robi jedna funkcja w języku programowania albo kalkulator w trybie programisty. Ręcznie liczy się wtedy, gdy trzeba znaleźć błąd w cudzym wyniku.narzędzia
Głębia koloru w PNG: w3.org/TR/png-3 (rozdział o dopuszczalnych głębiach bitowych) · częstotliwości próbkowania: en.wikipedia.org/wiki/44,100_Hz