Dlaczego używamy innych baz, które nie są binarne (dla komputerów) ani dziesiętne (dla ludzi)?
Komputery ostatecznie reprezentują je w postaci binarnej, a ludzie zdecydowanie wolą uzyskać ich dziesiętną reprezentację. Dlaczego nie trzymać się tych dwóch baz?
numeral-representations
Quora Feans
źródło
źródło
Odpowiedzi:
Liczby ósemkowe (podstawa-8) i szesnastkowe (podstawa-16) stanowią rozsądny kompromis między użytkowaniem komputerów w systemie binarnym (podstawa-2) a systemem dziesiętnym (podstawa-10), z którego korzysta większość ludzi.
Komputery nie są dobre pod względem wielu symboli, więc baza 2 (gdzie masz tylko 2 symbole) jest dla nich odpowiednia, podczas gdy dłuższe ciągi, liczby z większą liczbą cyfr, są mniejszym problemem. Ludzie są bardzo dobrzy z wieloma symbolami, ale nie są tak dobrzy w zapamiętywaniu dłuższych ciągów.
Ósemkowy i zastosowanie heks ludzki zaletę, że mogą one pracować z wieloma symbolami, gdy jest jeszcze łatwo wymienialne z powrotem i do przodu pomiędzy binarny, ponieważ każda cyfra Hex oznacza 4 cyfr binarnych ( ) i każdy ósemkowy cyfra oznacza 3 ( 8 = 2 3 ). Myślę, że hex wygrywa ponad liczbę ósemkową, ponieważ można go łatwo użyć do reprezentowania bajtów i liczb 16/32/64-bitowych.16 = 24 8 = 23)
źródło
Używamy ich dla wygody i zwięzłości.
Powiedzmy, że potrzebujesz 64-bitowych adresów pamięci. Możesz spojrzeć na wszystkie 64 binarne bity lub skondensować je do 16 cyfr szesnastkowych. Często nie trzeba porównywać kilku adresów, aby sprawdzić, czy są takie same lub ciągłe. Wolisz spojrzeć na 64 bity lub 16 cyfr?
źródło
Liczby binarne w tekście są stratą miejsca.
źródło
Wprowadzenie
Jak już wspomniano w innych odpowiedziach, mogą istnieć różne oznaczenia dla różnych celów i ograniczeń. Notacje to tak naprawdę kodowanie jako sekwencja znaków, a dzięki analizie algorytmów i struktury danych wiemy, że istnieje wiele sposobów kodowania abstrakcyjnych pojęć, na przykład listy lub zestawu, w zależności od tego, co chcemy z tym zrobić. . W tym przypadku jest to głównie wygoda algorytmiczna.
To samo dotyczy rozważania reprezentacji liczb. Wewnątrz komputera wszystko jest binarne na najniższym poziomie, chociaż w niektórych aplikacjach można zastosować reprezentacje obce.
Poza komputerem używamy wszelkiego rodzaju zrozumiałych dla człowieka reprezentacji, w zależności od ludzkiej wygody w zakresie reprezentowanej wartości. Reprezentacja binarna jest często zbyt długa i nieuporządkowana, aby można ją było łatwo odczytać i napisać, dzięki czemu ma miejsce szesnastkowo lub ósemkowo. Wybór może często mieć związek ze sposobem, w jaki informacja jest ustrukturyzowana w binarnym słowie, które niekoniecznie ma oznaczać liczbę.
Ale biorąc pod uwagę tylko cyfry , tj. Reprezentację liczb, warto spojrzeć na inne systemy reprezentacji liczb, aby zrozumieć, że głównymi czynnikami są: fizjologia, nawyk i wygoda. Wygoda jest oczywiście głównym czynnikiem kreującym różnorodność, ponieważ zależy od kontekstu użytkowania.
Szerszy wygląd
Treść pytania nie wydaje się w żaden sposób ograniczona do komputerów, a ludzie używali i nadal używają kilku innych systemów numeracji. Niektóre z nich są nawet używane w komputerach, na przykład w przypadku długich liczb całkowitych (nie wspominając o liczbach niecałkowitych ).
Pierwsza uwaga jest taka, że kiedy ludzie liczą w tysiącach lub milionach jako jednostkę, jest to nadal uważane za dziesiętne, ponieważ są to potęgi 10. Można się zastanawiać, dlaczego ósemkowa lub szesnastkowa nie powinna być uważana za odmianę binarną. Jednym z możliwych powodów może być liczba symboli używanych do reprezentowania liczb (choć jest to kwestia sporna, jak zobaczymy w przypadku innych systemów).
Następnie, w odniesieniu do ludzi, używają kilku systemów w bazie 5, zwanych systemami quinary . W rzeczywistości większość z tych układów ma dwie podstawy, druga to 2 lub 4, naprzemiennie z bazą 5, co czyni je równoważnymi podstawie 10 (dziesiętna) lub podstawie 20 (pionowa). Zgadnij skąd to pochodzi :)
Te systemy o podwójnej bazie nazywane są systemami dwumiesięcznymi lub kwadrynicznymi. Rzadko stosuje się czysty quinary.
Cyfry rzymskie mogą być postrzegane jako system dwucyfrowy (co jest wskazówką, jak z nimi wykonywać arytmetykę). Abakus chiński i japoński używają dwufunkcyjny. Kwadri-quinary był używany przez Majów.
Przyczyny korzystania z systemu są prawdopodobnie liczne. Jednym z dobrych powodów jest to, że był to pierwszy projekt lokalny i ludzie są do niego przyzwyczajeni. Na przykład można się zastanawiać, dlaczego osoby anglojęzyczne nadal używają niezwykle dziwnego systemu numeracji, próbując zmierzyć odległości. Można argumentować, że jest to kwestia wielu jednostek, a nie numeracji, ale to bardzo słaba uwaga. Liczby są używane głównie do mierzenia rzeczy.
Innymi przyczynami utrzymania systemu jest wygoda w danym kontekście. Może istnieć kompromis między liczbą różnych symboli lub pozycji na liczydle, a liczbą pojawiających się symboli wymaganych do utworzenia wystarczająco dużych liczb. Baza 2 działa z 2 odrębnymi symbolami, ale ma wiele wystąpień, które mogą być niewygodne dla przedstawienia materiału. Podstawowa podstawa 20 wymagałaby dwudziestu symboli i bardzo dużych tabliczek mnożenia, których ludzie nie zapamiętaliby. Ale system dwumiesięczny lub czterokwadowy jest o wiele łatwiejszy do zarządzania, szczególnie w celu zbudowania liczydła. Czysty układ quinary prawdopodobnie byłby jeszcze lepszy, ale jest sprzeczny z nawykami i intuicją opartą na fizjologii. I zawsze miło jest móc liczyć palcami, gdy nie wiemy nic lepszego.
Ale to nie wszystko.
Jednym z bardzo starych i bardzo powszechnych systemów jest system płciowy używany do pomiaru czasu i kątów (ale wiemy, że są one powiązane, poprzez rotację Ziemi). Używa bazy 60, ale nie używa 60 symboli, ponieważ jest to zdecydowanie za dużo. Opiera się więc na innym systemie do reprezentowania swoich synbolów (np. Systemie dziesiętnym).
Okrąg można podzielić na 6 części odpowiadających kątom 60 stopni, które najłatwiej jest zbudować z trójkątów równobocznych. Następnie Każdy stopień to 60 minut kątowych, każdy podzielony na 60 sekund.
Według Wikipedii
Biorąc pod uwagę pochodzenie, był to dość wygodny system w czasach, gdy matematyka prawie nie wchodziła w niemowlęctwo. Kąt 60⁰ jest nie tylko łatwy do narysowania, ale 60 ma wiele czynników, dzięki czemu pozwala na dzielenie na wiele liczb całkowitych, bez reszty.
Ale są też inne sposoby na osiągnięcie 60 lat, takie jak witalno-trójskładnikowy system Babilończyków .
Dlaczego nadal korzystamy z systemu płciowego. Myślę, że jesteśmy do tego przyzwyczajeni i możemy mieć zbyt wiele sprzecznych problemów, aby zmiana była w pełni uzasadniona.
Warto zauważyć, że istnieje wiele wzajemnych zależności między systemami numeracji a systemami jednostek. Ale należy się tego spodziewać, ponieważ miarą jest duża rola liczb. Jest to zauważalne w przeciwieństwie do metryki dziesiętnej i binarnej dla wielkości pamięci .
źródło
Komputery rozumieją liczby binarne, a w systemie binarnym wagi liczb mają potęgę 2, dlatego liczba cyfr reprezentujących liczbę może być duża w zależności od liczby.
Powiedzmy, że 64 w systemie dziesiętnym może być reprezentowane przez 7 bitów, podczas gdy do reprezentowania liczby 5000 potrzebujemy 13 bitów.
System liczb ósemkowych i szesnastkowych to zwarty sposób reprezentowania liczby binarnej.
źródło
[What advantage is there to using a base different from ten or (a power of) two?]
- lub jak inaczej interpretujeszWhy not stick to [bases 2 and 10]?
?