Konwersja liczb z jednego systemu liczbowego na inny online. Tłumaczenie tekstu na kod cyfrowy

Wszyscy wiedzą, że komputery mogą wykonywać obliczenia za pomocą duże grupy dane z dużą prędkością. Ale nie wszyscy wiedzą, że te działania zależą tylko od dwóch warunków: czy jest prąd i jakie napięcie.

Jak komputer radzi sobie z przetwarzaniem tak różnorodnych informacji?
Sekret tkwi w systemie binarnym. Wszystkie dane wchodzą do komputera, przedstawione w postaci jednostek i zer, z których każdy odpowiada jednemu stanowi przewodu elektrycznego: jednostki - wysokie napięcie, zera - niskie lub jedynki - obecność napięcia, zera - jego brak. Konwersja danych na zera i jedynek nazywana jest konwersją binarną, a ich ostateczne oznaczenie to kod binarny.
W notacji dziesiętnej w oparciu o system dziesiętny używany w Życie codzienne, wartość numeryczna reprezentowane przez dziesięć cyfr od 0 do 9, a każde miejsce w liczbie ma wartość dziesięciokrotnie wyższą niż miejsce po jego prawej stronie. Aby przedstawić liczbę większą niż dziewięć w systemie dziesiętnym, na jej miejscu umieszcza się zero, a jednostkę umieszcza się na następnym, bardziej wartościowym miejscu po lewej stronie. Podobnie w binarnym, gdzie używane są tylko dwie cyfry, 0 i 1, każde miejsce jest dwa razy bardziej wartościowe niż miejsce po jego prawej stronie. Tak więc w kodzie binarnym tylko zero i jeden mogą być reprezentowane jako pojedyncze liczby, a każda liczba większa niż jeden wymaga dwóch miejsc. Po zera i jedynce kolejne trzy liczby binarne to 10 (odczytaj jeden-zero) i 11 (odczytaj jeden-jeden) i 100 (odczytaj jeden-zero-zero). 100 binarnych odpowiada 4 po przecinku. Górna tabela po prawej pokazuje inne odpowiedniki BCD.
Dowolna liczba może być wyrażona binarnie, to po prostu trwa więcej przestrzeni niż w notacji dziesiętnej. W systemie binarnym możesz również napisać alfabet, jeśli przypiszesz określoną liczbę do każdej litery. Liczba binarna.

Dwie cyfry za cztery miejsca
Z kulek ciemnych i jasnych można zrobić 16 kombinacji, łącząc je w zestawy po 4. Jeśli ciemne kule przyjmiemy jako zera, a jasne jedynki, to 16 zestawów okaże się 16-jednostkowym kodem binarnym, czyli wartością liczbową w tym od zera do pięciu (patrz górna tabela na stronie 27). Nawet z dwoma rodzajami kulek w systemie binarnym, możesz zbudować nieskończoną liczbę kombinacji, po prostu zwiększając liczbę kulek w każdej grupie - lub liczbę miejsc w liczbach.

Bity i bajty

Najmniejsza jednostka w przetwarzaniu komputerowym, bit to jednostka danych, która może mieć jedną z dwóch możliwe warunki. Na przykład każda z jedynek i zer (po prawej) oznacza 1 bit. Bit może być reprezentowany na inne sposoby: przez obecność lub brak prąd elektryczny, dziura i jej brak, kierunek namagnesowania w prawo lub w lewo. Osiem bitów tworzy bajt. 256 możliwych bajtów może reprezentować 256 znaków i symboli. Wiele komputerów przetwarza bajty danych w tym samym czasie.

konwersja binarna. Czterocyfrowy kod binarny może przedstawiać liczby dziesiętne od 0 do 15.

Tabele kodów

Gdy kod binarny jest używany do oznaczania liter alfabetu lub znaków interpunkcyjnych, wymagane są tabele kodów, które wskazują, który kod odpowiada danemu znakowi. Opracowano kilka takich kodów. Większość komputerów jest skonfigurowana za pomocą siedmiocyfrowego kodu o nazwie ASCII lub American Standard Code for Information Interchange. Tabela po prawej pokazuje kody ASCII dla angielski alfabet. Inne kody dotyczą tysięcy znaków i alfabetów z innych języków świata.

Część tabeli kodów ASCII

Dowiedzmy się, jak przetłumacz teksty na kod cyfrowy? Przy okazji, na naszej stronie możesz przekonwertować dowolny tekst na kod dziesiętny, szesnastkowy, binarny za pomocą internetowego kalkulatora kodu.

Kodowanie tekstu.

Zgodnie z teorią komputerową każdy tekst składa się z pojedynczych znaków. Te znaki to: litery, cyfry, małe znaki interpunkcyjne, znaki specjalne ("", №, () itp.), zawierają również spacje między wyrazami.

Niezbędna baza wiedzy. Zestaw symboli, którymi zapisuję tekst, nazywa się ALFABET.

Liczba symboli wziętych w alfabecie reprezentuje jego moc.

Ilość informacji można określić wzorem: N = 2b

  • N - ta sama moc (zestaw znaków),
  • b - Bit (waga odebranego symbolu).

Alfabet, w którym będzie 256, pomieści prawie wszystkie potrzebne znaki. Takie alfabety nazywane są WYSTARCZAJĄCYMI.

Jeśli weźmiemy alfabet o mocy 256 i pamiętaj, że 256 \u003d 28

  • 8 bitów jest zawsze nazywane 1 bajtem:
  • 1 bajt = 8 bitów.

Jeśli przetłumaczymy każdy znak na kod binarny, ten komputerowy kod tekstowy zajmie 1 bajt.

Jak informacje tekstowe mogą wyglądać w pamięci komputera?

Dowolny tekst jest wpisywany na klawiaturze, na klawiszach klawiatury widzimy znane nam znaki (cyfry, litery itp.). Wchodzą do pamięci RAM komputera tylko w postaci kodu binarnego. Kod binarny każdego znaku wygląda jak ośmiocyfrowa liczba, na przykład 00111111.

Ponieważ bajt jest najmniejszą adresowalną jednostką pamięci, a pamięć adresowana jest do każdego znaku z osobna, wygoda takiego kodowania jest oczywista. Jednak 256 znaków to bardzo wygodna ilość dla dowolnych informacji znakowych.

Naturalnie pojawiło się pytanie: które? ośmiocyfrowy kod należy do każdej postaci? A jak przetłumaczyć tekst na kod cyfrowy?

Ten proces jest warunkowy i mamy prawo wymyślać różne sposoby kodowania znaków. Każdy znak alfabetu ma swój własny numer od 0 do 255. A każdemu numerowi przypisany jest kod od 00000000 do 11111111.

Tabela kodowania to „ściągawka”, w której znaki alfabetu są wskazane zgodnie z numerem seryjnym. Do różne rodzaje Komputery używają różnych tabel do kodowania.

ASCII (lub Asci), stał się Międzynarodowy standard dla komputerów osobistych. Stół składa się z dwóch części.

Pierwsza połowa dotyczy tabeli ASCII. (To była pierwsza połowa, która stała się standardem).

Zgodność z porządkiem leksykograficznym, czyli w tabeli litery (małe i wielkie) są wskazane w ścisłym kolejność alfabetyczna, a liczby w porządku rosnącym nazywa się zasadą sekwencyjnego kodowania alfabetu.

W przypadku alfabetu rosyjskiego również przestrzegają zasada kodowania sekwencyjnego.

Teraz, w naszych czasach, całość pięć systemów kodowania Alfabet rosyjski (KOI8-R, Windows. MS-DOS, Macintosh i ISO). Ze względu na liczbę systemów kodowania i brak jednego standardu, często pojawiają się nieporozumienia przy przenoszeniu tekstu rosyjskiego do postaci komputerowej.

Jeden z pierwszych standardy kodowania alfabetu rosyjskiego a na komputerach osobistych uważają KOI8 („Kod wymiany informacji, 8-bitowy”). To kodowanie było używane w połowie lat siedemdziesiątych na serii komputerów ES, a od połowy lat osiemdziesiątych jest używane w pierwszych systemach operacyjnych UNIX przetłumaczonych na język rosyjski.

Od początku lat dziewięćdziesiątych tzw. czas kiedy system operacyjny MS DOS, pojawia się system kodowania CP866 („CP” oznacza „stronę kodową”, „stronę kodową”).

Gigant komputerowy APPLE ze swoim system innowacji, w ramach którego pracowali (Mac OS), zaczynają używać własnego systemu do kodowania alfabetu MAC.

Międzynarodowa Organizacja Normalizacyjna (ISO) wyznacza kolejny standard dla języka rosyjskiego system kodowania alfabetu o nazwie ISO 8859-5.

A najpopularniejszy obecnie system kodowania alfabetu, wymyślony w Microsoft Windows i nazywa się CP1251.

Od drugiej połowy lat dziewięćdziesiątych problem standardu tłumaczenia tekstu na kod cyfrowy dla języka rosyjskiego i nie tylko został rozwiązany poprzez wprowadzenie do standardu systemu o nazwie Unicode. Jest reprezentowany przez szesnastobitowe kodowanie, co oznacza, że ​​na każdy znak przydzielone są dokładnie dwa bajty pamięci RAM. Oczywiście przy takim kodowaniu koszty pamięci są podwojone. Jednak taki system kodowania pozwala na przekształcenie do 65536 znaków na kod elektroniczny.

Specyfiką standardowego systemu Unicode jest włączenie absolutnie dowolnego alfabetu, czy to istniejącego, wymarłego, wynalezionego. Ostatecznie absolutnie każdy alfabet, oprócz tego, system Unicode, zawiera wiele symboli matematycznych, chemicznych, muzycznych i ogólnych.

Użyjmy tabeli ASCII, aby zobaczyć, jak słowo może wyglądać w pamięci komputera.

Często zdarza się, że Twój tekst pisany literami alfabetu rosyjskiego jest nieczytelny, wynika to z różnicy w systemach kodowania alfabetu na komputerach. Jest to bardzo powszechny problem, który występuje dość często.

kod binarny- jest to reprezentacja informacji w kombinacji 2 znaków 1 lub 0, jak mówią w programowaniu, tak lub nie, prawda lub fałsz, prawda lub fałsz. Zwykłemu człowiekowi trudno jest zrozumieć, w jaki sposób można przedstawić informacje w postaci zer i jedynek. Postaram się nieco wyjaśnić tę sytuację.

W rzeczywistości kod binarny jest prosty! Na przykład dowolna litera alfabetu może być reprezentowana jako zestaw zer i jedynek. Na przykład list H alfabet łaciński będzie wyglądał tak w systemie binarnym - 01001000, litera mi– 01000101, buk L ma następującą reprezentację binarną - 01001100, P – 01010000.

Teraz nietrudno zgadnąć, co napisać angielskie słowo POMOC w języku maszynowym, musisz użyć następującego kodu binarnego:

01001000 01000101 01001100 01010000

To właśnie ten kod wykorzystuje nasz domowy komputer do swojej pracy. Do zwykłej osoby bardzo trudno jest odczytać taki kod, ale dla komputerów jest to najbardziej zrozumiałe.

Kod binarny (kod maszynowy) obecnie jest używany w programowaniu, ponieważ komputer działa właśnie dzięki kodowi binarnemu. Ale nie myśl, że proces programowania sprowadza się do zbioru jedynek i zer. W szczególności, aby uprościć zrozumienie między osobą a komputerem, wynaleziono języki programowania (C++, BASIC itp.). Programista pisze program w zrozumiałym dla siebie języku, a następnie za pomocą specjalnego kompilatora tłumaczy swoje dzieło na kod maszynowy, który uruchamia komputer.

Tłumaczymy liczbę naturalną systemu liczb dziesiętnych na binarny

Bierzemy właściwy numer, dla mnie będzie to 5, podziel liczbę przez 2:
5: 2 = 2,5 jest reszta, więc pierwsza cyfra kodu binarnego będzie 1 (Jeśli nie - 0 ). Wyrzuć resztę i ponownie podziel liczbę przez 2 :
2: 2 = 1 odpowiedź jest bez reszty, co oznacza, że ​​drugą cyfrą kodu binarnego będzie - 0. Ponownie podziel wynik przez 2:
1: 2 = 0.5 numer wypadł z resztą, potem piszemy 1 .
Cóż, ponieważ wynik jest 0 nie da się już podzielić, kod binarny jest gotowy i w efekcie otrzymaliśmy numer kodu binarnego 101 . Myślę, że nauczyliśmy się tłumaczyć z dziesiętnego na binarny, teraz nauczymy się robić odwrotnie.

Konwersja liczby z binarnej na dziesiętną

Tutaj też jest to dość proste, policzmy naszą liczbę binarną z tobą, musisz zacząć od zera od końca liczby.

101 to 1^2 0^1 1^0.

Co z tego wyszło? Zdradziliśmy stopnie liczbom! teraz według wzoru:

(x * 2^y) + (x * 2^y) + (x * 2^y)

gdzie x- liczba porządkowa kodu binarnego
tak- stopień tej liczby.
Formuła będzie się rozszerzać w zależności od wielkości Twojego numeru.
Otrzymujemy:

(1 * 2^2) + (0 * 2^1) + (1 * 2^0) = 4 + 0 + 1 = 5.

Historia systemu liczb binarnych

Po raz pierwszy system binarny został zaproponowany przez Leibitza, uważał, że ten system pomoc w trudnych obliczenia matematyczne i ogólnie przyniesie korzyści nauce. Jednak według niektórych doniesień, zanim Leibitz zaproponował w Chinach system liczb binarnych, na ścianie pojawił się napis, który można było rozszyfrować za pomocą kodu binarnego. Na tym napisie narysowano długie i krótkie patyki, a jeśli przyjmiemy, że długa to 1, a krótka to 0, całkiem możliwe, że w Chinach pomysł na kod binarny pojawił się wiele lat przed jego wynalezieniem. Chociaż rozszyfrowanie kodu znalezionego na ścianie ujawniło tam prostą liczbę naturalną, fakt pozostaje faktem.

Wynik już otrzymał!

Systemy liczbowe

Istnieją pozycyjne i niepozycyjne systemy liczbowe. system arabski Rachunek, którego używamy w życiu codziennym, jest pozycyjny, podczas gdy rachunek rzymski nie. W systemach liczb pozycyjnych pozycja liczby jednoznacznie określa wielkość liczby. Rozważ to na przykładzie liczby 6372 w systemie liczb dziesiętnych. Ponumerujmy tę liczbę od prawej do lewej, zaczynając od zera:

Wtedy liczbę 6372 można przedstawić w następujący sposób:

6372=6000+300+70+2 =6 10 3 +3 10 2 +7 10 1 +2 10 0 .

Liczba 10 określa system liczbowy (w tym przypadku jest to 10). Wartości pozycji podanej liczby są przyjmowane w stopniach.

Rozważmy rzeczywistą liczbę dziesiętną 1287.923. Numerujemy ją zaczynając od pozycji zerowej liczby od przecinka w lewo i w prawo:

Wtedy liczbę 1287.923 można przedstawić jako:

1287,923 =1000+200+80 +7+0,9+0,02+0,003 = 1 10 3 +2 10 2 +8 10 1 +7 10 0 +9 10 -1 +2 10 -2 +3 10 -3 .

Ogólnie wzór można przedstawić w następujący sposób:

C n s n + C n-1 s n-1 +...+C 1 s 1 + C 0 s 0 + D -1 s -1 + D -2 s -2 + ... + D -k s -k

gdzie C n jest liczbą całkowitą na pozycji n, D -k - liczba ułamkowa na pozycji (-k), s- system liczbowy.

Kilka słów o systemach liczbowych Liczba w systemie dziesiętnym składa się z zestawu cyfr (0,1,2,3,4,5,6,7,8,9), w systemie ósemkowym składa się z zestaw cyfr (0,1, 2,3,4,5,6,7), w systemie dwójkowym - ze zbioru cyfr (0.1), w systemie szesnastkowym - ze zbioru cyfr (0, 1,2,3,4,5,6, 7,8,9,A,B,C,D,E,F), gdzie A,B,C,D,E,F odpowiadają liczbom 10,11, 12,13,14,15 W tabeli 1 liczby są reprezentowane w różnych systemach liczbowych.

Tabela 1
Notacja
10 2 8 16
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 mi
15 1111 17 F

Konwersja liczb z jednego systemu liczbowego na inny

Aby przetłumaczyć liczby z jednego systemu liczbowego na inny, najłatwiejszym sposobem jest najpierw przekonwertować liczbę na system dziesiętny, a następnie, z dziesiętnego systemu liczbowego, przetłumaczyć ją na wymagany system liczbowy.

Konwersja liczb z dowolnego systemu liczbowego na system liczb dziesiętnych

Używając wzoru (1), możesz konwertować liczby z dowolnego systemu liczbowego na system liczb dziesiętnych.

Przykład 1. Przekształć liczbę 101101.001 z binarnego systemu liczbowego (SS) na dziesiętny SS. Decyzja:

1 2 6 +0 2 5 + 1 2 4 + 1 2 3 + 1 2 2 + 0 2 1 + 1 2 0 + 0 2 -1 + 0 2 -2 + 1 2 -3 =64+16+8+4+1+1/8=93,125

Przykład2. Przekształć liczbę 1011101.001 z systemu ósemkowego (SS) na dziesiętny SS. Decyzja:

Przykład 3 . Przekształć liczbę AB572.CDF z szesnastkowej na dziesiętną SS. Decyzja:

Tutaj A-zastąpiony przez 10, B- o godzinie 11, C- o godzinie 12, F- o 15.

Konwersja liczb z systemu liczb dziesiętnych na inny system liczbowy

Aby przekonwertować liczby z dziesiętnego systemu liczbowego na inny system liczbowy, należy osobno przetłumaczyć część całkowitą liczby i część ułamkową liczby.

Część całkowita liczby jest tłumaczona z dziesiętnego SS na inny system liczbowy - przez kolejne dzielenie części całkowitej liczby przez podstawę systemu liczbowego (dla SS binarnego - przez 2, dla SS 8-cyfrowego - przez 8 , dla 16-cyfrowej - przez 16 itd. ), aby uzyskać całą resztę, mniejszą niż podstawa SS.

Przykład 4 . Przetłumaczmy liczbę 159 z dziesiętnego SS na binarny SS:

159 2
158 79 2
1 78 39 2
1 38 19 2
1 18 9 2
1 8 4 2
1 4 2 2
0 2 1
0

Jak widać na ryc. 1, liczba 159 po podzieleniu przez 2 daje iloraz 79, a reszta wynosi 1. Ponadto liczba 79 po podzieleniu przez 2 daje iloraz 39, a reszta wynosi 1 i tak dalej. W rezultacie konstruując liczbę z pozostałej części dzielenia (od prawej do lewej), otrzymujemy liczbę w binarnym SS: 10011111 . Dlatego możemy napisać:

159 10 =10011111 2 .

Przykład 5 . Przekształćmy liczbę 615 z SS dziesiętnego na SS ósemkowe.

615 8
608 76 8
7 72 9 8
4 8 1
1

Konwertując liczbę z SS dziesiętnej na SS ósemkowe, musisz sekwencyjnie dzielić liczbę przez 8, aż uzyskasz resztę całkowitą mniejszą niż 8. W rezultacie budując liczbę z pozostałej części dzielenia (od prawej do lewej) uzyskaj liczbę w SS ósemkowym: 1147 (patrz rys. 2). Dlatego możemy napisać:

615 10 =1147 8 .

Przykład 6 . Przetłumaczmy liczbę 19673 z systemu liczb dziesiętnych na szesnastkowy SS.

19673 16
19664 1229 16
9 1216 76 16
13 64 4
12

Jak widać na rysunku 3, dzieląc kolejno liczbę 19673 przez 16 otrzymaliśmy reszty 4, 12, 13, 9. W systemie szesnastkowym liczba 12 odpowiada C, a 13 – D. nasza liczba szesnastkowa to 4CD9.

Aby przekonwertować prawidłowe ułamki dziesiętne (liczba rzeczywista z zerową częścią całkowitą) na system liczbowy o podstawie s, liczbę tę należy sukcesywnie mnożyć przez s, aż część ułamkowa będzie równa zero, lub otrzymamy wymaganą liczbę cyfr. Jeśli mnożenie daje w wyniku liczbę z częścią całkowitą inną niż zero, to ta część całkowita nie jest brana pod uwagę (są one kolejno uwzględniane w wyniku).

Spójrzmy na powyższe z przykładami.

Przykład 7 . Przetłumaczmy liczbę 0,214 z systemu liczb dziesiętnych na binarny SS.

0.214
x 2
0 0.428
x 2
0 0.856
x 2
1 0.712
x 2
1 0.424
x 2
0 0.848
x 2
1 0.696
x 2
1 0.392

Jak widać na rys. 4, liczba 0,214 jest sukcesywnie mnożona przez 2. Jeżeli wynikiem mnożenia jest liczba z częścią całkowitą inną niż zero, to część całkowitą zapisujemy osobno (na lewo od liczby), a liczba jest zapisywana z zerową częścią całkowitą. Jeśli po pomnożeniu otrzymamy liczbę z zerową częścią całkowitą, to na lewo od niej zapisywane jest zero. Proces mnożenia trwa do momentu uzyskania czystego zera w części ułamkowej lub uzyskania wymaganej liczby cyfr. Pisząc pogrubione liczby (rys. 4) od góry do dołu, otrzymujemy wymaganą liczbę w systemie binarnym: 0. 0011011 .

Dlatego możemy napisać:

0.214 10 =0.0011011 2 .

Przykład 8 . Przetłumaczmy liczbę 0,125 z systemu dziesiętnego na binarny SS.

0.125
x 2
0 0.25
x 2
0 0.5
x 2
1 0.0

Aby zamienić liczbę 0,125 z dziesiętnej SS na binarną, liczbę tę mnoży się sukcesywnie przez 2. W trzecim etapie uzyskano 0. W związku z tym otrzymano następujący wynik:

0.125 10 =0.001 2 .

Przykład 9 . Przetłumaczmy liczbę 0,214 z systemu liczb dziesiętnych na szesnastkowy SS.

0.214
x 16
3 0.424
x 16
6 0.784
x 16
12 0.544
x 16
8 0.704
x 16
11 0.264
x 16
4 0.224

Postępując zgodnie z przykładami 4 i 5, otrzymujemy liczby 3, 6, 12, 8, 11, 4. Ale w szesnastkowym SS liczby C i B odpowiadają liczbom 12 i 11. Zatem mamy:

0,214 10 = 0,36C8B4 16 .

Przykład 10 . Przetłumaczmy liczbę 0.512 z dziesiętnego systemu liczbowego na ósemkowe SS.

0.512
x 8
4 0.096
x 8
0 0.768
x 8
6 0.144
x 8
1 0.152
x 8
1 0.216
x 8
1 0.728

Dostał:

0.512 10 =0.406111 8 .

Przykład 11 . Przetłumaczmy liczbę 159.125 z systemu dziesiętnego na binarny SS. Aby to zrobić, tłumaczymy osobno część całkowitą liczby (przykład 4) i część ułamkową liczby (przykład 8). Łącząc te wyniki otrzymujemy:

159.125 10 =10011111.001 2 .

Przykład 12 . Przetłumaczmy liczbę 19673.214 z dziesiętnego systemu liczbowego na szesnastkowy SS. Aby to zrobić, tłumaczymy osobno część całkowitą liczby (przykład 6) i część ułamkową liczby (przykład 9). Dalsze połączenie tych wyników otrzymujemy.

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.

Numer

Tłumaczenie z systemu liczbowego 10 2 8 16. Konwertuj na system liczbowy 2 10 8 16.
Dla liczb ułamkowych użyj 2 3 4 5 6 7 8 miejsc po przecinku.

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. Taka reprezentacja może być oznaczona na różne sposoby, tylko znak „h” jest tutaj 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 w umyśle 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.
Popraw tłumaczenie Ułamek dziesiętny do innego 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 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 z lewej strony przecinka (pierwsza liczba ma numer 0) ze wzrostem, a z prawej strony ze spadkiem (czyli ze znakiem minus). 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

Mieć pytania?

Zgłoś literówkę

Tekst do wysłania do naszych redaktorów: