Temat 1 - Arytmetyka cyfrowa. Zapisywanie liczb w różnych systemach liczbowych.
Dwójkowy system liczbowy (inaczej binarny) to pozycyjny system liczbowy, w którym podstawą jest liczba 2. Do zapisu liczb potrzebne są więc tylko dwie cyfry: 0 i 1.
Źródło: https://pl.wikipedia.org/wiki/Dw%C3%B3jkowy_system_liczbowy
Ósemkowy system liczbowy to pozycyjny system liczbowy o podstawie 8. System ósemkowy jest czasem nazywany oktalnym od słowa octal. Do zapisu liczb używa się w nim ośmiu cyfr, od 0 do 7.
Jak w każdym pozycyjnym systemie liczbowym, liczby zapisuje się tu jako ciągi cyfr, z których każda jest mnożnikiem kolejnej potęgi liczby będącej podstawą systemu, np. liczba zapisana w dziesiętnym systemie liczbowym jako 100, w ósemkowym przybiera postać 144, gdyż:
- 1×82 + 4×81 + 4×80 = 64 + 32 + 4 = 100.
W matematyce liczby w systemach niedziesiętnych oznacza się czasami indeksem dolnym zapisanym w systemie dziesiętnym, a oznaczającym podstawę systemu, np. 1448 = 10010.
Przykład zamiany liczby z systemu dziesiętnego na system ósemkowy:
- 100/8 = 12 i 4 reszty = 4
- 12/8 = 1 i 4 reszty = 4
- 1/8 = 0 i 1 reszty = 1
Teraz czytamy od dołu: 144 w systemie oktalnym to 100 w systemie dziesiętnym.
Zastosowanie w informatyce [edytuj]
System ósemkowy jest stosowany w informatyce. Przykładowo, w systemie Linux polecenie "chmod" ustawiające prawa dostępu do pliku może przyjąć jako argument oktalną reprezentację żądanych praw dostępu (np: "chmod u=rwx g=rx o=r plik" odpowiada zapisowi "chmod 754 plik"). W językach programowania C/C++/Java/PHP liczby oktalne poprzedza się pojedynczym zerem (np. 0212).
Źródło: https://pl.wikipedia.org/wiki/%C3%93semkowy_system_liczbowy
Szesnastkowy system liczbowy (czasem nazywany heksadecymalnym, skrót hex) – pozycyjny system liczbowy, w którym podstawą jest liczba 16. Skrót hex pochodzi od angielskiej nazwy hexadecimal. Do zapisu liczb w tym systemie potrzebne jest szesnaście cyfr.
W najpowszechniejszym standardzie poza cyframi dziesiętnymi od 0 do 9 używa się pierwszych sześciu liter alfabetu łacińskiego: A, B, C, D, E, F (dużych lub małych). Cyfry 0-9 mają te same wartości co w systemie dzięsiętnym, natomiast litery odpowiadają następującym wartościom: A = 10, B = 11, C = 12, D = 13, E = 14 oraz F = 15.
W kalkulatorach naukowych o siedmiosegmentowych wyświetlaczach LCD stosuje się następujące oznaczenia kolejnych cyfr: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, b, C, d, E, F.
Istnieją również projekty ujednolicenia zapisu i wprowadzenia zupełnie nowych cyfr, przeznaczonych dla tego systemu.[1][2]
Informatyka [edytuj]
Szesnastkowy system liczbowy stosuje się w informatyce, w przypadku programowania niskopoziomowego, sterowania hardwarem, wyboru adresów itp. np:
Internet [edytuj]
Adresy IP np. w wersji 6 są podawane w pozycyjnym systemie szesnastkowym np.:
- 3ffe:0902:0012:0000:0000:0000:0000:0000/48
zobacz: Zapis adresu IP.
Programowanie [edytuj]
Z racji budowy komputerów, w której np. adresy są potęgą liczby 2 oraz dzielą się przez 8 i 16, często stosowany jest system heksadecymalny.
Wartość pojedynczego bajta można opisać używając tylko dwóch cyfr szesnastkowych i odwrotnie - dowolne dwie cyfry szesnastkowe można zapisać jako bajt. W ten sposób kolejne bajty można łatwo przedstawić w postaci ciągu cyfr szesnastkowych. Jednocześnie zapis 4 bitów można prosto przełożyć na jedną cyfrę szesnastkową, podczas gdy np. pozycyjny system dziesiątkowy nie ma własności stałej liczby bitów na cyfrę.
System szesnastkowy sprawdza się szczególnie przy zapisie dużych liczb takich jak adresy pamięci, zakresy parametrów itp.
Konwencja matematyczna nie jest używana w informatyce. W różnych językach programowania zapis liczb szesnastkowych wygląda rozmaicie:
- C, C++, C#, Java - stosuje się prefiks 0x (zero oraz x) np. 0x102f, a w ciągach tekstowych \x, np. "\x2f"
- W Javie można też stosować szesnastkowe liczby zmiennoprzecinkowe, oraz używać litery p jako wykładnika binarnego, analogicznie jak litera e używana jest w roli wykładnika dziesiętnego, np.
- Pascal - stosuje się prefiks $, np. $102f
- głowne wersje asemblera - za liczbą litera h, np 102fh, lub podobnie jak w C prefix 0x
Komputerowy skład tekstu WWW [edytuj]
W języku składu stron internetowych i/lub programach edycji stron WWW:
- HTML - kolory RGB (Red - Czerwony, Green - Zielony, Blue - Niebieski) zapisuje się jako 3 liczby hex od 0 do FF(255) poprzedzone znakiem #, np. różowy - #FF8080, szary - #808080, czarny - #000000. Zapis ten dotyczy koloru 24-bitowego przypisywanego różnym elementom graficznym dokumentu HTML.
Grafika cyfrowa, fotografia [edytuj]
Wiele programów do obróbki zdjęć i grafiki pozwala na wybór/wprowadzanie kodu koloru w formie szesnastkowej np. Photoshop.[3]
Źródło: https://pl.wikipedia.org/wiki/Szesnastkowy_system_liczbowy

