Co mamy na myśli, gdy mówimy, że komputery używają zer i jedynek?

Najlepsza odpowiedź

Bardzo dobre odpowiedzi już tutaj. Aby dodać trochę więcej do tego, co już zostało powiedziane:

Komputer wykorzystuje ten sam pomysł (tj. Wiele sygnałów włączania / wyłączania) do przechowywania / generowania wyników. W ten sposób komputer „myśli” w trybie ON lub WYŁĄCZONY, po prostu używamy reprezentacji 1 dla jej WŁĄCZENIA i 0 dla WYŁĄCZENIA …

Przeważnie robi te wszystkie „fajne” rzeczy poprzez bardzo uproszczoną matematykę – używając tylko liczb. Jednak używa liczb w inny sposób niż ty lub ja. Zwykle myślimy o liczbach jako o 0, 1, 2, 3, … 9, 10 itd. Komputer nie ma tego przywileju, może tylko „myśleć” o 0 i 1. Ale to nadal oznacza, że ​​może wykonywać te same obliczenia, co z naszymi 10 (lub innymi) cyframi. Powodem jest to, że w ten sam sposób, w jaki decydujemy się na użycie innej cyfry, komputer „decyduje” o użyciu więcej. To znaczy. co jest po 9? 10 oczywiście, po prostu powtarzamy wzorzec, czyż nie?

Jest to określane jako podstawa używanego przez nas systemu liczbowego. Na przykład. normalnym, używanym przez ludzi, jest podstawa 10 (lub dziesiętna), a komputer używa binarnego (lub podstawy 2). Więc kiedy komputer liczy, liczy w ten sposób: 0 => 0 1 => 1 2 => 10 3 => 11 4 => 100 5 => 101 … 9 => 1001 10 => 1010 11 => 1011 itd. .

Są też inne sposoby, czasami używamy ich do dokładniejszego dopasowania metody komputera. Np. możemy policzyć szesnastkowo – podstawa 16 zamiast zwykłej podstawy 10. W tym przypadku mamy 6 dodatkowych glifów do dodania do możliwych cyfr. Zwykle używamy ich (możemy również użyć podstawy ósemkowej o podstawie 8 lub cokolwiek wybierzemy), ponieważ pasują one do potęg 2, których używa system binarny – tj. podstawa 16 wypada dokładnie na potęgach dwójki (pomijam niektóre, ale nigdy nie spada na coś, co nie jest potęgą 2, tak jak robi to system o podstawie 10). Największym dobrodziejstwem jest to, że liczba cyfr wymaganych w szesnastce jest proporcjonalna do liczby cyfr w bin (w tym przypadku każda cyfra w szesnastkowym mapowaniu na 4 cyfry w bin – dużo łatwiejsze do przeliczenia na / z). Jeśli używamy szesnastkowego (podstawa 16), liczymy w ten sposób: Dec => Hex => Bin .. 9 => 9 => 1001 10 => A => 1010 11 => B => 1011 … 15 => F => 1111 16 => 10 => 10000 17 => 11 => 10001 … 31 => 1F => 11111 32 => 20 => 100000 33 => 21 => 100001 …

Na tej podstawie wszystkie formy matematyki są wykonywane prawie w ten sam sposób, w jaki nauczyłeś się matematyki. Na przykład. dodanie 2 liczb:

\_\_dec => hex => bin

25 19 11001

+ 16 10 10000

----------------------

31 29 01001

+ 10 100000 (carry)

----------------------

41 29 101001

Ten sam rodzaj rzeczy ma zastosowanie do wszystkich matematyki, mnożenia, dzielenia, odejmowania itp. I od tego rozciąga się również na dalsze rzeczy, takie jak pierwiastki, wykładniki, trygonometria itp. .

Wszystko inne wyświetlane przez komputer to po prostu różne sposoby przedstawiania tych liczb. Na przykład. tekst na tej stronie to po prostu zbiór liczb, z których każda ma określone „zrozumienie” tego, że określona liczba reprezentuje określony znak. Jedną z głównych metod kodowania liter jest sekwencja ASCII ( kody znaków ASCII oraz konwersja wykresów html, ósemkowych, szesnastkowych i dziesiętnych ). W tym, że litera A otrzymuje liczbę 65 (dziesiętnie), a więc 41 (szesnastkowo) i 1000001 (bin).

Ale zazwyczaj takie liczby muszą być podzielone, w przeciwnym razie nie wiemy, gdzie uruchamia się i zatrzymuje – komputery nie mają nawet przywileju używania spacji. Aby obejść ten problem, komputer używa zestawu grup cyfr binarnych. Zwykle w grupach po 8 (zwanych bajtami), ponieważ sama w sobie jest to potęga 2 i zapewnia dość przyzwoitą liczbę możliwych znaków (256 możliwości). Jeśli liczba jest niska, górna część jest wypełniona po prostu zerami. A więc w rzeczywistości litera A byłaby zapisana w komputerze jako 01000001, uzupełniając pierwszą niepotrzebną cyfrę 0. Są też inne sposoby, np. UTF8 w zasadzie mówi: „Jeśli pierwszy bit to 1, to po tej jest kolejnych 8 cyfr, które następnie rozszerzają kod o jeszcze więcej możliwości”.

I na koniec rzeczy takie jak grafika / zdjęcia / 3d / sound / itd. Są również kodowane przez nadanie każdemu wariantowi innego numeru do pokazania. Np. Kolory wyświetlane na tym ekranie składają się z małych kropek, z których każdy ma określony kolor (zwykle zakodowany w czymś takim jak RGB – czerwony / Intensywność koloru zielonego / niebieskiego jako liczba od 0 do (powiedzmy) 255 dla każdego).

Staje się to jeszcze ważniejsze, gdy zaczniemy przyglądać się działaniom, które może wykonać komputer. To także są tylko „liczby” zakodowane tak, aby oznaczały różne „rzeczy muszą się wydarzyć”. Np. procesor komputera może mieć zestaw instrukcji (tj. ekodowanie różnych możliwych działań), w którym jedna z nich jest instrukcją dodawania liczb do siebie, inną do odejmowania, a drugą do zamień je z 1 na 0 i odwrotnie itp.Z tego składa się „oprogramowanie” – sygnały włączania / wyłączania, które postrzegamy jako analogiczne do 1 i 0, we wzorcach odpowiadających działaniom, które oprogramowanie potrzebuje do podjęcia przez procesor.

Ale ponieważ wszystko zaczyna się od tego on / off, który jest interpretowany jako 1 lub 0 … komputer używa po prostu 1 i 0. Robi to po prostu patrząc na wzorce jedynek i zer następujących po sobie. Wzorzec jest tym, co nadaje 1 i 0 „znaczenie”, same w sobie mają bardzo ograniczone znaczenie.

Odpowiedź

Zwykle oznacza to, że nie rozumiemy komputerów.

Poważnie.

Jeśli chcesz zobaczyć, dlaczego jest to mylące, nie szukaj dalej niż wyłącznik zasilania w komputerze. Widzisz ten zabawnie wyglądający trójząb? Czy zastanawiałeś się kiedyś, co to znaczy?

To „1 nałożone na 0”.

Dlaczego?

Wracając do najwcześniejszych komputerów IBM PC, pojawił się duży, niezgrabny przełącznik kołyskowy oznaczony czymś w rodzaju:

1 – Włączony 0 – Wyłączony

Z czasem przełączniki stawały się mniejsze i ostatecznie stały się przyciskami, co oznacza, że ​​cała ta słówka była bezsensowna, więc otrzymaliśmy symbol, który wszyscy znają, ale nikt nie rozumie.

To prawie wszystko, co musisz wiedzieć o tym pytaniu: ludzie komputerowi są trochę głupi lub przynajmniej leniwi.

Ale to ” Podejrzewam, że nie jest satysfakcjonujący.

Przełącznik reprezentuje dwa stany, włączony i wyłączony. Przyciski robią to samo, z wyjątkiem tego, że stan jest niewidoczny dla przypadkowego obserwatora, więc potrzebujemy lampek kontrolnych, aby nam o tym powiedzieć wewnętrzny przełącznik.

Ale jest bardziej wszechobecny. Jeśli zmniejszysz się wewnątrz komputera, mikroczipy mają w sobie tranzystory, które (proszę nie mówić żadnym inżynierom elektrykom, że to powiedziałem) są trochę jak małe przełączniki. Przepuszczają zasilanie (włączają się) lub nie (wyłączają ) i „są ustawione tak, aby wykonywać pracę związaną z przetwarzaniem danych. Zanim mieliśmy powszechnie dostępne tranzystory, używaliśmy przekaźników w tym samym celu, przełączników do zapisywania stanu, w ten sam sposób, w jaki włącznik światła„ pamięta ”, że chcesz, aby światła on.

Kiedy mówimy o przetwarzanych danych, chcemy odczytać stany włączenia / wyłączenia tranzystorów (w pewnym sensie, upraszczam tutaj, ale jeśli chcesz sprawdzić jak działa pamięć komputera, poczekam tutaj), chcemy czegoś bardziej kompaktowego niż „włącz, włącz, wyłącz, włącz, włącz, wyłącz, wyłącz, wyłącz”. Pisałem dotykiem i popełniłem około pół tuzina błędów, wpisując to, nawet bez konkretnej wartości, jeśli chcesz zrozumieć, dlaczego to się nie uda. Dlatego tak naprawdę piszemy je jako zera i jedynki, na przykład 11011000.

Ale nawet to jest trochę uciążliwe, więc możemy pogrupować bity (cyfry binarne) na grupy po trzy, które są ósemkowymi (podstawa-8) liczbami, 330 w tym walizka. To jest mylące, więc bardziej prawdopodobne jest, że użyjemy liczb szesnastkowych (podstawa-16), które odpowiadają czterem bitom, D8 tutaj.

Użycie potęgi dwójki jest przydatne, ponieważ oznacza (jeśli pracujemy na prymitywnym komputerze, na którym jest to możliwe), że możemy spojrzeć na sygnały na liniach w grupie. Tak więc powyższe reprezentacje są przydatne, podczas gdy 216 (reprezentacja dziesiętna) nie byłaby zbyt użyteczna dla osoby zajmującej się komputerem.

Ale wracając do sedna sprawy, sam komputer nie używaj niczego poza stanami włącz-wyłącz, które interpretujemy jako zera i jedynki, cyfry szesnastkowe, cyfry, znaki (litery, cyfry, symbole i spacje), instrukcje i wiele innych rzeczy. Komputer nie ma jednak pojęcia o tej interpretacji.

Cóż, możesz argumentować, że instrukcje są rzeczywiście zrozumiałe, ponieważ stany włączenia-wyłączenia faktycznie wymuszają decyzję o tym, co robić dalej. Ale na pewno nie reszta.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *