Przypisanie usługi. Usługa ma na celu konwersję liczb z jednego systemu liczbowego na inny w tryb online. W tym celu wybierz bazę systemu, z którego chcesz przetłumaczyć numer. Możesz wprowadzić zarówno liczby całkowite, jak i liczby z przecinkiem.

Możesz wprowadzić liczby całkowite, na przykład 34 , lub ułamki, na przykład 637,333 . W przypadku liczb ułamkowych wskazana jest dokładność tłumaczenia po przecinku.

W tym kalkulatorze używane są również następujące elementy:

Sposoby przedstawiania liczb

Dwójkowy Liczby (binarne) - każda cyfra oznacza wartość jednego bitu (0 lub 1), najbardziej znaczący bit jest zawsze zapisywany z lewej strony, po liczbie umieszczana jest litera „b”. Dla ułatwienia percepcji zeszyty można oddzielić spacjami. Na przykład 1010 0101b.
Szesnastkowy Liczby (szesnastkowe) - każda tetrada jest reprezentowana przez jeden znak 0...9, A, B, ..., F. Taką reprezentację można oznaczyć na różne sposoby, tutaj tylko znak "h" jest używany po ostatnim cyfra szesnastkowa. Na przykład A5h. W tekstach programu ta sama liczba może być oznaczona jako 0xA5 i 0A5h, w zależności od składni języka programowania. Nieznaczące zero (0) jest dodawane po lewej stronie najbardziej znaczącej cyfry szesnastkowej reprezentowanej przez literę, aby odróżnić liczby od nazw symbolicznych.
Ułamki dziesiętne (dziesiętne) liczby - każdy bajt (słowo, podwójne słowo) jest reprezentowany przez zwykłą liczbę, a znak reprezentacji dziesiętnej (litera „d”) jest zwykle pomijany. Bajt z poprzednich przykładów ma wartość dziesiętną 165. W przeciwieństwie do notacji binarnej i szesnastkowej, dziesiętna jest trudna do określenia wartości każdego bitu, co czasami trzeba zrobić.
ósemkowy Liczby (ósemkowe) - każda trójka bitów (oddzielanie zaczyna się od najmniej znaczącej) zapisujemy jako cyfrę 0-7, na końcu umieszczamy znak "o". Ta sama liczba zostałaby zapisana jako 245o. System ósemkowy jest niewygodny, ponieważ bajt nie może być równo podzielony.

Algorytm konwersji liczb z jednego systemu liczbowego na inny

Konwersja liczb całkowitych dziesiętnych na dowolny inny system liczbowy odbywa się poprzez podzielenie liczby przez podstawę nowy system numerowanie, aż reszta pozostanie liczbą mniejszą niż podstawa nowego systemu liczbowego. Nowa liczba jest zapisywana jako pozostała część dzielenia, zaczynając od ostatniej.
Konwersja poprawnego ułamka dziesiętnego na inny PSS odbywa się poprzez pomnożenie tylko części ułamkowej liczby przez podstawę nowego systemu liczbowego, aż wszystkie zera pozostaną w części ułamkowej lub do momentu osiągnięcia określonej dokładności translacji. W wyniku każdej operacji mnożenia powstaje jedna cyfra nowej liczby, zaczynając od najwyższej.
Tłumaczenie ułamka niewłaściwego odbywa się zgodnie z pierwszą i drugą zasadą. Części całkowite i ułamkowe są napisane razem, oddzielone przecinkiem.

Przykład 1.



Tłumaczenie od 2 do 8 do 16 systemu liczbowego.
Systemy te są wielokrotnościami dwóch, dlatego tłumaczenie odbywa się za pomocą tabeli korespondencji (patrz poniżej).

Aby przekonwertować liczbę z systemu liczb binarnych na liczbę ósemkową (szesnastkową), konieczne jest podzielenie liczby dwójkowej na grupy po trzy (cztery dla szesnastkowych) cyfr od przecinka z prawej i lewej strony, uzupełniając skrajne grupy zerami Jeśli to konieczne. Każda grupa jest zastępowana odpowiednią cyfrą ósemkową lub szesnastkową.

Przykład #2. 1010111010.1011 = 1.010.111.010.101.1 = 1272,51 8
tutaj 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

Podczas konwersji na liczbę szesnastkową należy podzielić liczbę na części, każda po cztery cyfry, zgodnie z tymi samymi zasadami.
Przykład #3. 1010111010.1011 = 10.1011.1010.1011 = 2B12.13 HEX
tutaj 0010=2; 1011=B; 1010=12; 1011=13

Konwersja liczb z 2, 8 i 16 na system dziesiętny odbywa się poprzez rozbicie liczby na oddzielne i pomnożenie jej przez podstawę systemu (z którego tłumaczy się liczbę) podniesioną do potęgi odpowiadającej jej liczbie porządkowej w przetłumaczonym numerze. W tym przypadku liczby są numerowane po lewej stronie przecinka (pierwsza liczba ma numer 0) ze wzrostem, a w prawa strona malejąca (tj. ze znakiem ujemnym). Otrzymane wyniki są sumowane.

Przykład #4.
Przykład konwersji z systemu liczb binarnych na dziesiętny.

101010.101 2 = 1 2 6 +0 2 5 +1 2 4 +0 2 3 +0 2 2 +1 2 1 +0 2 0 + 1 2 -1 +0 2 - 2 +1 2 -3 =
= 64+0+16+0+0+2+0+0,5+0+0,125 = 82,625 10 Przykład konwersji z systemu liczb ósemkowych na dziesiętne. 108,5 8 = 1* 8 2 +0 8 1 +8 8 0 + 5 8 -1 = 64+0+8+0,625 = 72,625 10 Przykład konwersji z systemu liczb szesnastkowych na dziesiętne. 108,5 16 = 1 16 2 +0 16 1 +8 16 0 + 5 16 -1 = 256+0+8+0,3125 = 264,3125 10

Po raz kolejny powtarzamy algorytm tłumaczenia liczb z jednego systemu liczbowego na inny PSS

  1. Z systemu liczb dziesiętnych:
    • podziel liczbę przez podstawę tłumaczonego systemu liczbowego;
    • znajdź resztę po podzieleniu części całkowitej liczby;
    • zapisz wszystkie reszty z dzielenia w odwrotnej kolejności;
  2. Z systemu binarnego
    • Aby przekonwertować na system liczb dziesiętnych, musisz znaleźć sumę iloczynów o podstawie 2 przez odpowiedni stopień rozładowania;
    • Aby przekonwertować liczbę na ósemkową, musisz podzielić liczbę na triady.
      Na przykład 1000110 = 1000 110 = 106 8
    • Aby przekonwertować liczbę z binarnej na szesnastkową, musisz podzielić ją na grupy składające się z 4 cyfr.
      Na przykład 1000110 = 100 0110 = 46 16
System nazywa się pozycyjnym., dla których znaczenie lub waga cyfry zależy od jej położenia w liczbie. Relacja między systemami jest wyrażona w tabeli.
Tabela korespondencji systemów liczbowych:
Binarne SSSzesnastkowy SS
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 mi
1111 F

Tabela do konwersji na system ósemkowy

Przykład #2. Konwertuj liczbę 100,12 z dziesiętnej na ósemkową i odwrotnie. Wyjaśnij przyczyny rozbieżności.
Decyzja.
Scena 1. .

Pozostała część dzielenia jest zapisana w odwrotnej kolejności. Otrzymujemy liczbę w ósmym systemie liczbowym: 144
100 = 144 8

Aby przetłumaczyć część ułamkową liczby, kolejno mnożymy część ułamkową przez podstawę 8. W rezultacie za każdym razem zapisujemy część całkowitą iloczynu.
0,12*8 = 0,96 (cała część 0 )
0,96*8 = 7,68 (cała część 7 )
0,68*8 = 5,44 (cała część 5 )
0,44*8 = 3,52 (cała część 3 )
Otrzymujemy numer w ósmym systemie liczbowym: 0753.
0.12 = 0.753 8

100,12 10 = 144,0753 8

Etap 2. Zamiana liczby z dziesiętnej na ósemkową.
Odwrotna konwersja z ósemkowej na dziesiętną.

Aby przetłumaczyć część całkowitą, należy pomnożyć cyfrę liczby przez odpowiedni stopień cyfry.
144 = 8 2 *1 + 8 1 *4 + 8 0 *4 = 64 + 32 + 4 = 100

Aby przetłumaczyć część ułamkową, należy podzielić cyfrę liczby przez odpowiedni stopień cyfry
0753 = 8 -1 *0 + 8 -2 *7 + 8 -3 *5 + 8 -4 *3 = 0.119873046875 = 0.1199

144,0753 8 = 100,96 10
Różnica 0,0001 (100,12 - 100,1199) wynika z błędu zaokrąglenia podczas konwersji na liczbę ósemkową. Ten błąd można zmniejszyć, jeśli weźmiemy większą liczbę cyfr (na przykład nie 4, ale 8).

W toku informatyki, niezależnie od szkoły czy uczelni, szczególne miejsce zajmuje takie pojęcie jak systemy liczbowe. Z reguły przeznacza się na to kilka lekcji lub ćwiczeń praktycznych. Głównym celem jest nie tylko poznanie podstawowych pojęć tematu, poznanie rodzajów systemów liczbowych, ale także zapoznanie się z arytmetyką binarną, ósemkową i szesnastkową.

Co to znaczy?

Zacznijmy od definicji głównego pojęcia. Jak zauważa podręcznik „Informatyka”, system liczbowy to zapis liczb, który używa specjalnego alfabetu lub określonego zestawu liczb.

W zależności od tego, czy wartość cyfry zmienia się w stosunku do jej pozycji w liczbie, rozróżnia się dwa: pozycyjny i niepozycyjny system liczbowy.

W systemach pozycyjnych wartość cyfry zmienia się wraz z jej pozycją w liczbie. Tak więc, jeśli weźmiemy liczbę 234, to cyfra 4 oznacza jednostki, ale jeśli weźmiemy pod uwagę liczbę 243, to tutaj będzie to już oznaczało dziesiątki, a nie jednostki.

W systemach niepozycyjnych wartość cyfry jest statyczna, niezależnie od jej pozycji w liczbie. Bardzo doskonały przykład- system drążków, w którym każda jednostka jest oznaczona kreską. Bez względu na to, gdzie przypiszesz różdżkę, wartość liczby zmieni się tylko o jeden.

Systemy niepozycyjne

Systemy liczb niepozycyjnych obejmują:

  1. Pojedynczy system, który jest uważany za jeden z pierwszych. Używał patyczków zamiast liczb. Im ich było więcej, tym większa była wartość liczby. Przykład tak napisanych cyfr można spotkać w filmach, w których mówimy o ludziach zagubionych na morzu, więźniach, którzy codziennie zaznaczają za pomocą nacięć na kamieniu lub drzewie.
  2. Roman, w którym zamiast cyfr użyto liter łacińskich. Za ich pomocą możesz wpisać dowolną liczbę. Jednocześnie jego wartość została określona na podstawie sumy i różnicy cyfr składających się na liczbę. Jeśli po lewej stronie cyfry była mniejsza liczba, to lewa cyfra została odjęta od prawej, a jeśli cyfra po prawej była mniejsza lub równa cyfrze po lewej stronie, ich wartości zostały zsumowane w górę. Na przykład liczba 11 została zapisana jako XI, a 9 - IX.
  3. Litery, w których cyfry oznaczono alfabetem danego języka. Jednym z nich jest system słowiański, w którym wiele liter ma nie tylko wartość fonetyczną, ale także liczbową.
  4. w którym do zapisu użyto tylko dwóch oznaczeń - klinów i strzał.
  5. Również w Egipcie do oznaczania liczb używano specjalnych symboli. Podczas pisania liczby każdy znak mógł zostać użyty nie więcej niż dziewięć razy.

Systemy pozycyjne

Wiele uwagi w informatyce poświęca się systemom liczb pozycyjnych. Należą do nich:

  • dwójkowy;
  • ósemkowy;
  • dziesiętny;
  • szesnastkowy;
  • sześćdziesiętny, używany przy liczeniu czasu (na przykład za minutę - 60 sekund, za godzinę - 60 minut).

Każdy z nich ma własny alfabet do pisania, zasady tłumaczenia i działania arytmetyczne.

System dziesiętny

Ten system jest nam najbardziej znany. Używa liczb od 0 do 9 do zapisywania liczb. Nazywane są również arabskimi. W zależności od pozycji cyfry w liczbie może oznaczać różne cyfry - jednostki, dziesiątki, setki, tysiące lub miliony. Używamy go wszędzie, znamy podstawowe zasady według których wykonuje się operacje arytmetyczne na liczbach.

System binarny

Jeden z głównych systemów liczbowych w informatyce jest binarny. Jego prostota pozwala komputerowi na kilkakrotnie szybsze wykonywanie uciążliwych obliczeń niż w systemie dziesiętnym.

Do zapisywania liczb używane są tylko dwie cyfry - 0 i 1. Jednocześnie w zależności od pozycji 0 lub 1 w liczbie zmieni się jej wartość.

Początkowo to za pomocą komputerów otrzymali wszystko niezbędne informacje. Jednocześnie jeden oznaczał obecność sygnału przesyłanego napięciem, a zero oznaczało jego brak.

System ósemkowy

Kolejny znany komputerowy system numeracji, w którym używane są liczby od 0 do 7. Stosowano go głównie w tych obszarach wiedzy, które są związane z urządzeniami cyfrowymi. Ale ostatnio jest używany znacznie rzadziej, ponieważ został zastąpiony przez system liczb szesnastkowych.

Dziesiętny binarny

Reprezentowanie dużych liczb w systemie binarnym dla osoby jest dość skomplikowanym procesem. Aby to uprościć, został opracowany.Jest zwykle używany w zegarkach elektronicznych, kalkulatorach. W tym systemie nie cała liczba jest konwertowana z systemu dziesiętnego na binarny, ale każda cyfra jest tłumaczona na odpowiedni zestaw zer i jedynek w systemie binarnym. To samo dotyczy konwersji z binarnego na dziesiętny. Każda cyfra, reprezentowana jako czterocyfrowy zestaw zer i jedynek, jest tłumaczona na cyfrę w systemie liczb dziesiętnych. W zasadzie nie ma nic skomplikowanego.

Do pracy z liczbami przydatna jest w tym przypadku tabela systemów liczbowych, która wskaże zgodność między liczbami a ich kodem binarnym.

System szesnastkowy

Ostatnio system liczb szesnastkowych staje się coraz bardziej popularny w programowaniu i informatyce. Wykorzystuje nie tylko cyfry od 0 do 9, ale także szereg liter łacińskich - A, B, C, D, E, F.

Jednocześnie każda z liter ma swoje znaczenie, czyli A=10, B=11, C=12 i tak dalej. Każda liczba jest reprezentowana jako zestaw czterech znaków: 001F.

Konwersja liczb: z dziesiętnej na dwójkową

Tłumaczenie w systemach liczbowych odbywa się według określonych zasad. Najczęstszą konwersją jest konwersja z binarnego na dziesiętny i odwrotnie.

Aby przekonwertować liczbę z dziesiętnej na binarną, konieczne jest konsekwentne dzielenie jej przez podstawę systemu liczbowego, czyli liczbę dwa. W takim przypadku pozostała część każdej dywizji musi zostać naprawiona. Będzie to trwało do momentu, gdy pozostała część podziału będzie mniejsza lub równa jeden. Najlepiej wykonać obliczenia w kolumnie. Następnie wynikowe reszty z dzielenia są zapisywane w łańcuchu w odwrotnej kolejności.

Na przykład zamieńmy liczbę 9 na binarną:

Dzielimy 9, ponieważ liczba nie jest równo podzielna, wtedy bierzemy liczbę 8, reszta będzie wynosić 9 - 1 = 1.

Po podzieleniu 8 przez 2 otrzymujemy 4. Dzielimy to ponownie, ponieważ liczba jest dzielona przez dwa - w pozostałej części otrzymujemy 4 - 4 = 0.

Wykonujemy tę samą operację z 2. Reszta to 0.

W wyniku podziału otrzymujemy 1.

Niezależnie od ostatecznego systemu liczbowego, przeniesienie liczb z dziesiętnych na dowolne inne nastąpi zgodnie z zasadą dzielenia liczby przez podstawę systemu pozycyjnego.

Konwersja liczb: z binarnego na dziesiętny

Konwersja liczb na dziesiętne z binarnego jest dość łatwa. Aby to zrobić, wystarczy znać zasady podnoszenia liczb do potęgi. W tym przypadku do potęgi dwójki.

Algorytm translacji jest następujący: każda cyfra z binarnego kodu liczbowego musi być pomnożona przez dwa, a dwie pierwsze będą potęgowane m-1, druga - m-2 itd., gdzie m jest liczbą cyfr w kodzie. Następnie dodaj wyniki dodawania, otrzymując liczbę całkowitą.

W przypadku dzieci w wieku szkolnym ten algorytm można wyjaśnić prościej:

Na początek bierzemy i zapisujemy każdą cyfrę pomnożoną przez dwa, następnie odkładamy potęgę dwójki od końca, zaczynając od zera. Następnie dodaj uzyskaną liczbę.

Na przykład przeanalizujmy z tobą liczbę 1001 uzyskaną wcześniej, zamieniając ją na system dziesiętny, a jednocześnie sprawdźmy poprawność naszych obliczeń.

Będzie to wyglądać tak:

1*2 3 + 0*2 2 +0*2 1 +1*2 0 = 8+0+0+1 =9.

Podczas studiowania tego tematu wygodnie jest użyć tabeli z potęgami dwóch. To znacznie skróci czas potrzebny na obliczenia.

Inne opcje tłumaczenia

W niektórych przypadkach translację można przeprowadzić między binarną i ósemkową, binarną i szesnastkową. W takim przypadku możesz skorzystać ze specjalnych tabel lub uruchomić aplikację kalkulatora na swoim komputerze, wybierając opcję „Programista” w zakładce Widok.

Działania arytmetyczne

Bez względu na formę, w jakiej reprezentowana jest liczba, możliwe jest wykonanie zaznajomionych z nią obliczeń. Może to być dzielenie i mnożenie, odejmowanie i dodawanie w wybranym systemie liczbowym. Oczywiście każdy z nich ma swoje własne zasady.

Tak więc dla systemu binarnego opracowano własne tabele dla każdej z operacji. Te same tabele są używane w innych systemach pozycyjnych.

Nie trzeba ich zapamiętywać - wystarczy wydrukować i mieć pod ręką. Możesz także skorzystać z kalkulatora na swoim komputerze.

Jednym z najważniejszych tematów w informatyce jest system liczbowy. Znając ten temat, zrozumienie algorytmów tłumaczenia liczb z jednego systemu na drugi jest gwarancją, że będziesz w stanie zrozumieć bardziej złożone tematy, takie jak algorytmizacja i programowanie, oraz będziesz w stanie samodzielnie napisać swój pierwszy program.

Zanim zaczniemy rozwiązywać problemy, musimy zrozumieć kilka prostych punktów.

Rozważmy liczbę dziesiętną 875. Ostatnia cyfra liczby (5) to reszta z dzielenia liczby 875 przez 10. Ostatnie dwie cyfry tworzą liczbę 75 - jest to reszta z dzielenia liczby 875 przez 100 Podobne stwierdzenia są prawdziwe dla dowolnego systemu liczbowego:

Ostatnia cyfra liczby to pozostała część dzielenia tej liczby przez podstawę systemu liczbowego.

Dwie ostatnie cyfry liczby są pozostałością po dzieleniu liczby przez podstawę kwadratowego systemu liczbowego.

Na przykład, . Dzielimy 23 przez podstawę systemu 3, otrzymujemy 7 i 2 w reszcie (2 to ostatnia cyfra liczby w systemie trójkowym). Podziel 23 przez 9 (podstawa do kwadratu), otrzymamy 18 i 5 w reszcie (5 = ).

Wróćmy do zwykłego systemu dziesiętnego. Liczba = 100000. 10 do potęgi k to jeden i k zer.

Podobne stwierdzenie jest prawdziwe dla dowolnego systemu liczbowego:

Podstawa systemu liczbowego do potęgi k w tym systemie liczbowym jest zapisana jako jednostka i k zer.

Na przykład, .

1. Wyszukaj podstawę systemu liczbowego

Przykład 1

W systemie liczbowym o pewnej podstawie liczba dziesiętna 27 jest zapisywana jako 30. Określ tę podstawę.

Decyzja:

Oznacz wymaganą podstawę x. Wtedy .tj. x=9.

Przykład 2

W systemie liczbowym z pewną podstawą liczba dziesiętna 13 jest zapisywana jako 111. Określ tę podstawę.

Decyzja:

Oznacz wymaganą podstawę x. Następnie

Rozwiązujemy równanie kwadratowe, otrzymujemy pierwiastki 3 i -4. Ponieważ podstawa systemu liczbowego nie może być ujemna, odpowiedź brzmi 3.

Odpowiedź: 3

Przykład 3

Wskaż, oddzielone przecinkami, w porządku rosnącym, wszystkie podstawy systemów liczbowych, w których wpis liczby 29 kończy się na 5.

Decyzja:

Jeśli w jakimś systemie liczba 29 kończy się na 5, to liczba zmniejszona o 5 (29-5 = 24) kończy się na 0. Powiedzieliśmy już, że liczba kończy się na 0, gdy jest podzielna bez reszty przez podstawę systemu . Tych. musimy znaleźć wszystkie takie liczby, które są dzielnikami liczby 24. Te liczby to: 2, 3, 4, 6, 8, 12, 24. Zauważ, że w systemach liczbowych o podstawie 2, 3, 4 nie ma liczby 5 (a w zadaniu formułowania liczba 29 kończy się na 5), ​​więc istnieją systemy o podstawach: 6, 8, 12,

Odpowiedź: 6, 8, 12, 24

Przykład 4

Wskaż, oddzielone przecinkami, w porządku rosnącym, wszystkie podstawy systemów liczbowych, w których wpis liczby 71 kończy się na 13.

Decyzja:

Jeżeli w jakimś systemie liczba kończy się na 13, to podstawą tego systemu jest co najmniej 4 (w przeciwnym razie nie ma liczby 3).

Liczba zmniejszona o 3 (71-3=68) kończy się na 10. To znaczy, 68 jest całkowicie podzielna przez wymaganą podstawę systemu, a iloraz tego, podzielony przez podstawę systemu, daje resztę 0.

Wypiszmy wszystkie dzielniki liczby całkowitej 68: 2, 4, 17, 34, 68.

2 nie jest odpowiednie, ponieważ podstawa jest nie mniejsza niż 4. Sprawdź pozostałe dzielniki:

68:4 = 17; 17:4 \u003d 4 (odpoczynek 1) - odpowiedni

68:17 = 4; 4:17 = 0 (odpoczynek 4) - nieodpowiednie

68:34 = 2; 2:17 = 0 (odpoczynek 2) - nieodpowiednie

68:68 = 1; 1:68 = 0 (odpoczynek 1) - odpowiedni

Odpowiedź: 4, 68

2. Wyszukaj liczby według warunków

Przykład 5

Wskazać, oddzielone przecinkiem, w porządku rosnącym, wszystkie liczby dziesiętne nieprzekraczające 25, których zapis w systemie czterocyfrowym kończy się na 11?

Decyzja:

Najpierw dowiedzmy się, jak wygląda liczba 25 w systemie liczbowym o podstawie 4.

Tych. musimy znaleźć wszystkie liczby, nie większe niż , których notacja kończy się na 11. Zgodnie z zasadą sekwencyjnego liczenia w systemie o podstawie 4,
otrzymujemy liczby i . Tłumaczymy je na system liczb dziesiętnych:

Odpowiedź: 5, 21

3. Rozwiązanie równań

Przykład 6

Rozwiązać równanie:

Zapisz odpowiedź w systemie trójkowym (podstawa systemu liczbowego w odpowiedzi nie jest konieczna).

Decyzja:

Przekształćmy wszystkie liczby na system liczb dziesiętnych:

Równanie kwadratowe ma pierwiastki -8 i 6. (ponieważ podstawa układu nie może być ujemna). .

Odpowiedź: 20

4. Zliczanie jedynek (zer) w zapisie binarnym wartości wyrażenia

Aby rozwiązać tego typu problem, musimy pamiętać, jak działa dodawanie i odejmowanie „w kolumnie”:

Podczas dodawania następuje bitowe sumowanie cyfr wpisanych jedna pod drugą, zaczynając od cyfr najmniej znaczących. Jeżeli otrzymana suma dwóch cyfr jest większa lub równa podstawie systemu liczbowego, reszta z dzielenia tej kwoty przez podstawę systemu jest zapisywana pod zsumowanymi liczbami, a część całkowita z dzielenia tej kwoty przez podstawę systemu dodaje się do sumy kolejnych cyfr.

Podczas odejmowania następuje odejmowanie bit po bicie cyfr zapisanych jedna pod drugą, zaczynając od najmniej znaczących cyfr. Jeśli pierwsza cyfra jest mniejsza od drugiej, „pożyczamy” jedną z sąsiedniej (większej) cyfry. Jednostka zajęta w bieżącej cyfrze jest równa podstawie systemu liczbowego. W systemie dziesiętnym to 10, w systemie binarnym to 2, w potrójnym to 3 i tak dalej.

Przykład 7

Ile jednostek zawiera zapis binarny wartości wyrażenia: ?

Decyzja:

Reprezentujmy wszystkie liczby wyrażenia jako potęgi dwójki:

W notacji binarnej dwa do potęgi n wygląda jak 1, po którym następuje n zer. Następnie sumując i otrzymujemy liczbę zawierającą 2 jednostki:

Teraz od otrzymanej liczby odejmij 10000. Zgodnie z zasadami odejmowania pożyczamy od następnej cyfry.

Teraz dodaj 1 do otrzymanej liczby:

Widzimy, że wynik ma 2013+1+1=2015 jednostek.

Konwertuj na system liczb dziesiętnych

Ćwiczenie 1. Jaka liczba w systemie liczb dziesiętnych odpowiada liczbie 24 16?

Decyzja.

24 16 = 2 * 16 1 + 4 * 16 0 = 32 + 4 = 36

Odpowiedź. 24 16 = 36 10

Zadanie 2. Wiadomo, że X = 12 4 + 4 5 + 101 2 . Jaka jest liczba X w notacji dziesiętnej?

Decyzja.


12 4 = 1 * 41 + 2 * 40 = 4 + 2 = 6
4 5 = 4 * 5 0 = 4
101 2 = 1 * 2 2 + 0 * 2 1 + 1 * 2 0 = 4 + 0 + 1 = 5
Znajdź liczbę: X = 6 + 4 + 5 = 15

Odpowiedź. X = 15 10

Zadanie 3. Oblicz wartość sumy 10 2 + 45 8 + 10 16 w zapisie dziesiętnym.

Decyzja.

Przetłumaczmy każdy termin na system liczb dziesiętnych:
10 2 = 1 * 2 1 + 0 * 2 0 = 2
45 8 = 4 * 8 1 + 5 * 8 0 = 37
10 16 = 1 * 16 1 + 0 * 16 0 = 16
Suma wynosi: 2 + 37 + 16 = 55

Konwertuj na system liczb binarnych

Ćwiczenie 1. Jaka jest liczba 37 w systemie liczb binarnych?

Decyzja.

Możesz przekonwertować, dzieląc przez 2 i łącząc reszty w odwrotnej kolejności.

Innym sposobem jest rozwinięcie liczby do sumy potęg dwójki, zaczynając od najwyższej, której obliczony wynik jest mniejszy od podanej liczby. Podczas konwersji brakujące potęgi liczby należy zastąpić zerami:

37 10 = 32 + 4 + 1 = 2 5 + 2 2 + 2 0 = 1 * 2 5 + 0 * 2 4 + 0 * 2 3 + 1 * 2 2 + 0 * 2 1 + 1 * 2 0 = 100101

Odpowiedź. 37 10 = 100101 2 .

Zadanie 2. Ile znaczących zer występuje w binarnej reprezentacji liczby dziesiętnej 73?

Decyzja.

Liczbę 73 rozkładamy na sumę potęg dwójki, zaczynając od najwyższej i mnożąc brakujące potęgi przez zera, a istniejące przez jeden:

73 10 = 64 + 8 + 1 = 2 6 + 2 3 + 2 0 = 1 * 2 6 + 0 * 2 5 + 0 * 2 4 + 1 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 1001001

Odpowiedź. W zapisie dwójkowym dla liczby dziesiętnej 73 są cztery znaczące zera.

Zadanie 3. Oblicz sumę x i y dla x = D2 16 , y = 37 8 . Przedstaw wynik w systemie liczb binarnych.

Decyzja.

Przypomnij sobie, że każda cyfra liczby szesnastkowej składa się z czterech cyfr binarnych, a każda cyfra liczby ósemkowej przez trzy:

D2 16 = 1101 0010
37 8 = 011 111

Dodajmy liczby:

11010010 11111 -------- 11110001

Odpowiedź. Suma liczb D2 16 i y = 378 reprezentowanych w systemie binarnym wynosi 11110001.

Zadanie 4. Dany: a= D7 16 , b= 331 8 . Która z liczb? c, zapisany w notacji binarnej, spełnia warunek a< c < b ?

  1. 11011001
  2. 11011100
  3. 11010111
  4. 11011000

Decyzja.

Przetłumaczmy liczby na system liczb binarnych:

D7 16 = 11010111
331 8 = 11011001

Pierwsze cztery cyfry dla wszystkich liczb są takie same (1101). Dlatego porównanie jest uproszczone do porównania najmniej znaczących czterech cyfr.

Pierwsza liczba na liście to liczba b, dlatego nie pasuje.

Druga liczba jest większa niż b. Trzecia liczba to a.

Pasuje tylko czwarta liczba: 0111< 1000 < 1001.

Odpowiedź. Czwarta opcja (11011000) spełnia warunek a< c < b .

Zadania wyznaczania wartości w różnych systemach liczbowych i ich podstawach

Ćwiczenie 1. Znaki @, $, &, % są zakodowane jako dwucyfrowe kolejne liczby binarne. Pierwszy znak odpowiada liczbie 00. Za pomocą tych znaków zakodowano następującą sekwencję: $% [e-mail chroniony]$. Odkoduj tę sekwencję i przekonwertuj wynik na szesnastkowy.

Decyzja.

1. Porównajmy liczby binarne z kodowanymi przez nie znakami:
00 - @, 01 - $, 10 - &, 11 - %

3. Przetłumaczmy liczbę binarną na system liczb szesnastkowych:
0111 1010 0001 = 7A1

Odpowiedź. 7A1 16 .

Zadanie 2. W ogrodzie jest 100 drzewek owocowych, z czego 33x to jabłonie, 22x to gruszki, 16x to śliwki, 17x to wiśnie. Jaka jest podstawa systemu liczbowego (x).

Decyzja.

1. Zwróć uwagę, że wszystkie terminy są liczbami dwucyfrowymi. W dowolnym systemie liczbowym można je przedstawić w następujący sposób:
a * x 1 + b * x 0 = ax + b, gdzie aib to cyfry odpowiednich cyfr liczby.
Dla liczby trzycyfrowej wyglądałoby to tak:
a * x 2 + b * x 1 + c * x 0 = ax 2 + bx + c

2. Stan problemu jest następujący:
33x + 22x + 16x + 17x = 100x
Zastąp liczby we wzorach:
3x + 3 + 2x +2 + 1x + 6 + 1x + 7 = 1x 2 + 0x + 0
7x + 18 = x2

3. Rozwiąż równanie kwadratowe:
-x2 + 7x + 18 = 0
D = 7 2 - 4 * (-1) * 18 = 49 + 72 = 121. Pierwiastek kwadratowy z D wynosi 11.
Korzenie równania kwadratowego:
x = (-7 + 11) / (2 * (-1) = -2 lub x = (-7 - 11) / (2 * (-1)) = 9

4. Liczba ujemna nie może być podstawą systemu liczbowego. Więc x może być równe tylko 9.

Odpowiedź. Pożądana podstawa systemu liczbowego to 9.

Zadanie 3. W systemie liczbowym o pewnej podstawie liczba dziesiętna 12 jest zapisywana jako 110. Znajdź tę podstawę.

Decyzja.

Najpierw zapiszmy liczbę 110 we wzorze na zapisywanie liczb w pozycyjnych systemach liczbowych, aby znaleźć wartość w systemie dziesiętnym, a następnie znajdźmy podstawę za pomocą brutalnej siły.

110 = 1 * x 2 + 1 * x 1 + 0 * x 0 = x 2 + x

Musimy uzyskać 12. Próbujemy 2: 2 2 + 2 = 6. Próbujemy 3: 3 2 + 3 = 12.

Tak więc podstawą systemu liczbowego jest 3.

Odpowiedź. Pożądana podstawa systemu liczbowego to 3.

Zadanie 4. W jakim systemie liczbowym liczba dziesiętna 173 byłaby reprezentowana jako 445?

Decyzja.
Nieznaną podstawę oznaczamy przez X. Piszemy następujące równanie:
173 10 \u003d 4 * X 2 + 4 * X 1 + 5 * X 0
Biorąc pod uwagę fakt, że dowolna liczba dodatnia do potęgi zerowej jest równa 1, przepisujemy równanie (nie wskażemy podstawy 10).
173 = 4*X 2 + 4*X + 5
Oczywiście takie równanie kwadratowe można rozwiązać za pomocą dyskryminatora, ale istnieje prostsze rozwiązanie. Odejmij od prawej i lewej części przez 4. Otrzymujemy
169 \u003d 4 * X 2 + 4 * X + 1 lub 13 2 \u003d (2 * X + 1) 2
Stąd otrzymujemy 2 * X + 1 \u003d 13 (odrzucamy pierwiastek ujemny). Lub X = 6.
Odpowiedź: 173 10 = 445 6

Zadania znajdowania kilku baz systemów liczbowych

Istnieje grupa zadań, w których należy wymienić (w porządku rosnącym lub malejącym) wszystkie podstawy systemów liczbowych, w których reprezentacja danej liczby kończy się na podaną cyfrę. To zadanie jest rozwiązane po prostu. Najpierw musisz odjąć podaną cyfrę od oryginalnej liczby. Wynikowa liczba będzie pierwszą podstawą systemu liczbowego. A wszystkie inne bazy mogą być tylko dzielnikami tej liczby. (To stwierdzenie jest udowodnione na podstawie zasady przenoszenia liczb z jednego systemu liczbowego do drugiego - patrz punkt 4). Pamiętaj tylko, że podstawa systemu liczbowego nie może być mniejsza niż podana cyfra!

Przykład
Wskaż, oddzielone przecinkami, w porządku rosnącym, wszystkie podstawy systemów liczbowych, w których wpis liczby 24 kończy się na 3.

Decyzja
24 - 3 \u003d 21 to pierwsza podstawa (13 21 \u003d 13 * 21 1 + 3 * 21 0 \u003d 24).
21 jest podzielne przez 3 i 7. Liczba 3 nie jest odpowiednia, ponieważ Nie ma 3 w systemie liczbowym o podstawie 3.
Odpowiedź: 7, 21