Jak przekonwertować liczbę dwójkową na dziesiętną

Autor: Monica Porter
Data Utworzenia: 19 Marsz 2021
Data Aktualizacji: 27 Czerwiec 2024
Anonim
Zamiana liczb z systemu dziesiętnego na system binarny (dwójkowy) i z binarnego na dziesiętny
Wideo: Zamiana liczb z systemu dziesiętnego na system binarny (dwójkowy) i z binarnego na dziesiętny

Zawartość

Binarny to wewnętrzny język komputera elektronicznego. Jako programista musisz umieć zmieniać słowa binarny na dziesiętny. W tym artykule wikiHow poprowadzi to.

Kroki

Metoda 1 z 2: Użyj notacji lokalizacji

  1. Napisz liczby binarne i listę potęg dwóch słów od prawej do lewej. Załóżmy, że to samo, co w przypadku liczby binarnej 100110112. Najpierw wpisz tę liczbę. Następnie zapisz potęgę dwóch od prawej do lewej. Począwszy od 2, daje wartość „1”. Zwiększaj wykładniczo przez każdą wartość mocy. Zatrzymaj się, gdy liczba elementów na liście będzie równa liczbie cyfr zawartych w liczbie binarnej. 10011011 ma osiem cyfr, więc nasza lista ma osiem elementów, a mianowicie: 128, 64, 32, 16, 8, 4, 2, 1.

  2. Wpisz cyfry w liczbie binarnej poniżej jej odpowiedniego elementu na liście mocy 2. W przykładowym zadaniu po prostu piszemy 10011011 pod liczbami 128, 64, 32, 16, 8, 4, 2 i 1. Liczba „1” na końcu liczby binarnej odpowiada „1”. prawy z dwóch potęg. Jeśli chcesz, możesz również wpisać cyfry w liczbie binarnej powyżej. Ważne jest, aby odpowiadały one posiadaniu elementów o potęgach 2.

  3. Dopasowuje cyfrę w liczbie binarnej do potęgi 2 odpowiadającej jej. Od prawej strony narysuj linię łączącą każdą cyfrę liczby binarnej z potęgą 2 bezpośrednio nad nią. Pierwsza to pierwsza cyfra liczby binarnej z 2 wykładnikiem 1. Następnie druga cyfra z 2 wykładnikiem 2. Kontynuuj do końca. W ten sposób możesz zobaczyć związek między dwoma zestawami liczb.

  4. Zapisz ostateczną wartość. Dla liczby 1 zapisz potęgę 2, która odpowiada jej bezpośrednio pod kreską poniżej. Jeśli jest to 0, wpisz 0 bezpośrednio pod poziomą linią.
    • Ponieważ „1” odpowiada „1”, naszą ostateczną wartością będzie „1”. „2” odpowiada „1”, więc końcowa wartość to „2”. „4” odpowiada „0”, więc ostateczną wartością będzie „0”. „8” odpowiada „1”, więc końcowa wartość to „8”, a „16” odpowiada „1”, więc mamy „16”. „32” odpowiada „0” i zwraca „0”. „64” odpowiada „0”, więc końcowa wartość to „0”, podczas gdy „128” odpowiada „1”, więc mamy 128.
  5. Dodaj ostateczne wartości. Teraz dodaj liczby zapisane pod myślnikiem. Mamy: 128 + 0 + 0 + 16 + 8 + 0 + 2 + 1 = 155. Jest to ułamek dziesiętny odpowiadający liczbie binarnej 10011011.
  6. Napisz znalezioną sumę wraz z jej podstawą. W tym przykładzie byłoby to 15510wskazuje, że jest to odpowiedź dziesiętna. Im bardziej przyzwyczaisz się do zamiany liczb dwójkowych na dziesiętne, tym łatwiej będzie ci zapamiętać potęgi 2 i tym szybsza będzie konwersja.
  7. Użyj tej metody, aby przekonwertować liczbę binarną z przecinkami na dziesiętną. Możesz użyć tej metody nawet dla liczb binarnych, takich jak 1,12. Pamiętaj tylko, że liczby po lewej stronie przecinka są, jak zwykle, w jednostkach, a liczby po prawej stronie przecinka to „połowa”, czyli 1 x (1/2).
    • „1” po lewej stronie przecinka równa się 2 lub 1. 1 po prawej stronie przecinka równa się 2 lub 5. Dodanie 1 plus 5 daje 1,5, czyli 1,12 gdy jest reprezentowany w notacji dziesiętnej.
    Reklama

Metoda 2 z 2: Użyj metody podwójnej

  1. Napisz liczby binarne. Przy tej metodzie nie używamy mocy. Ułatwia to wykonywanie arytmetyki mentalnej na dużych liczbach: na razie wystarczy zwrócić uwagę na sumę częściową. Najpierw zapisz liczbę binarną, którą planujesz przekonwertować za pomocą tej metody powielania. Weźmy przykład numer 10110012. Zapiszę ten numer na papierze.
  2. Zaczynając od lewej, skopiuj poprzednią sumę i dodaj bieżącą cyfrę. Z 10110012, cyfra po lewej stronie to 1. Poprzednia suma to 0, ponieważ jeszcze niczego nie rozpoczęliśmy. Będziesz musiał podwoić poprzednią sumę, 0, i dodać 1, liczbę, którą rozważasz. 0 x 2 + 1 = 1, więc nasza nowa suma to 1.
  3. Powiel bieżącą sumę i dodaj następną cyfrę. Bieżąca suma to 1, a bieżąca cyfra to 0. Więc podwoić 1 i dodać 0, otrzymamy: 1 x 2 + 0 = 2. Nowa suma to 2.
  4. Powtórz powyższy krok. Po prostu kontynuuj w ten sposób. Powiel aktualną sumę i dodaj 1, następną cyfrę. 2 x 2 + 1 = 5. Nowa suma to 5.
  5. Powtórz powyższy krok. Powiel aktualną sumę 5 i dodaj 1, kolejną cyfrę. 5 x 2 + 1 = 11. Twoja nowa suma to 11.
  6. Powtórz powyższy krok. Powiel aktualną sumę 11 i dodaj 0, następną cyfrę. 2 x 11 + 0 = 22.
  7. Powtórz następny krok. Powiel aktualną sumę 22 i dodaj 0, następną cyfrę. 22 x 2 + 0 = 44.
  8. Kontynuuj podwajanie aktualnej sumy i dodawaj następną cyfrę do końca. Teraz mamy tylko ostatnią liczbę i prawie skończyliśmy! Wszystko, co musimy zrobić, to wziąć bieżącą sumę 44, powielić ją i dodać 1, ostatnią cyfrę. 2 x 44 + 1 = 89. Gotowe! Przesłaliśmy 100110112 do 89, jego postać dziesiętna.
  9. Napisz swoją odpowiedź w bazie. Wpisz swoją odpowiedź w formularzu 8910 Aby to pokazać, pracujemy z liczbą dziesiętną o podstawie 10.
  10. Użyj tej metody do konwersji słów każdy podstawa do ułamka dziesiętnego. Tutaj podwajamy ją, ponieważ podana liczba ma podstawę 2. W przypadku innej podstawy po prostu zastępujemy 2 tą podstawą. Na przykład w przypadku liczby o podstawie 37 należy zamienić „x 2” na „x 37”. Wynik jest zawsze ułamkiem dziesiętnym (podstawa 10). Reklama

Rada

  • Ćwiczyć. Spróbuj przekonwertować liczby binarne 110100012, 110012i 111100012. Odpowiadają one odpowiednio 20910, 2510i 24110.
  • Komputer osobisty z preinstalowanym systemem Microsoft Windows może dokonać zmiany za Ciebie, ale jako programista powinieneś dobrze wiedzieć, jak to zrobić. Możesz wyświetlić opcje konwersji na swoim komputerze, otwierając menu „Widok” i wybierając „Naukowy” lub „Programator”. W systemie Linux możesz użyć komputera osobistego.
  • Uwaga: ten artykuł obejmuje TYLKO obliczenia i nie mówi o kodowaniu ASCII.

Ostrzeżenie

  • W tym artykule używa się liczb binarnych bez znaku zamiast liczb ze znakiem, liczb rzeczywistych z przecinkiem statycznym lub liczb rzeczywistych zmiennoprzecinkowych.