Angielskifrancuskihiszpański

Ad


Ulubiona usługa OnWorks

bin_dec_hex — online w chmurze

Uruchom bin_dec_hex w darmowym dostawcy hostingu OnWorks przez Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

Jest to polecenie bin_dec_hex, które można uruchomić w darmowym dostawcy usług hostingowych OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


bin_dec_hex — Jak używać notacji binarnej, dziesiętnej i szesnastkowej.

OPIS


Większość ludzi używa dziesiętnego systemu liczbowego. Ten system używa dziesięciu symboli do reprezentacji
liczby. Kiedy te dziesięć symboli zostanie zużytych, zaczynają wszystko od nowa i zwiększają liczbę
położenie w lewo. Cyfra 0 jest wyświetlana tylko wtedy, gdy jest jedynym symbolem w sekwencji,
lub jeśli nie jest to pierwsze.

Jeśli brzmi to dla ciebie tajemniczo, to właśnie powiedziałem w liczbach:

0
1
2
3
4
5
6
7
8
9
10
11
12
13

i tak dalej.

Za każdym razem, gdy cyfra dziewięć jest zwiększana, jest ona resetowana do 0, a pozycja przed (do
lewej) jest zwiększany (od 0 do 1). Wtedy numer 9 może być postrzegany jako „00009” i kiedy my
powinien zwiększyć się o 9, resetujemy go do zera i zwiększamy cyfrę tuż przed 9, więc
numer staje się „00010”. Wiodących zer nie zapisujemy, chyba że jest to jedyna cyfra
(numer 0). I oczywiście piszemy zera, jeśli występują w dowolnym miejscu wewnątrz lub na końcu a
numer:

„00010” -> „0010” -> „010” -> „10”, ale nie „1”.

To było dość podstawowe, już to wiedziałeś. Dlaczego to powiedziałem? Cóż, zwykle komputery
nie reprezentują liczb z 10 różnymi cyframi. Używają tylko dwóch różnych symboli,
mianowicie „0” i „1”. Zastosuj te same zasady do tego zestawu cyfr, a otrzymasz binarny
system numeracji:

0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101

i tak dalej.

Jeśli policzysz liczbę rzędów, zobaczysz, że to znowu 14 różnych liczb. The
liczby są takie same i oznaczają to samo, co na pierwszej liście, po prostu użyliśmy innego
reprezentacja. Oznacza to, że musisz znać reprezentację używaną lub taką, jaka jest
zwany systemem liczbowym lub bazą. Zwykle, jeśli nie określimy wprost
używany system liczbowy, pośrednio używamy systemu dziesiętnego. Jeśli chcemy użyć innego
systemu numeracji, musimy to wyjaśnić. Istnieje kilka powszechnie przyjętych metod
Zrób tak. Jedną z powszechnych form jest pisanie 1010(2) co oznacza, że ​​zapisałeś w nim liczbę
reprezentacja binarna. To liczba dziesięć. Gdybyś napisał 1010 bez określania
podstawie, liczba jest interpretowana jako tysiąc dziesięć przy podstawie 10.

W książkach powszechna jest inna forma. Używa indeksów dolnych (małych znaków, mniej więcej w
między dwoma rzędami). W takim przypadku możesz pominąć nawiasy i zapisać
numer zwykłymi znakami, po którym następuje mała dwójka tuż za nim.

Ponieważ używany system numeracji jest również nazywany podstawą, mówimy o liczbie 1100 o podstawie 2,
liczba 12 o podstawie 10.

W systemie binarnym często zapisuje się wiodące zera. Liczby są zapisane
w seriach po cztery, osiem lub szesnaście, w zależności od kontekstu.

Możemy używać formy binarnej, rozmawiając z komputerami (... programowanie ...), ale liczby
będzie miał liczną reprezentację. Liczba 65'535 (często w systemie dziesiętnym ' to
używany do oddzielania bloków trzech cyfr dla czytelności) zostanie zapisany jako
1111111111111111(2), która jest 16 razy większa od cyfry 1. Jest to trudne i podatne na błędy.
Dlatego zwykle używalibyśmy innej podstawy, zwanej szesnastkową. Wykorzystuje 16 różnych
symbolika. Najpierw używane są symbole z systemu dziesiętnego, a następnie kontynuujemy
znaki alfabetu. Otrzymujemy 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E i F. To
Wybrano system, ponieważ postać szesnastkową można bardzo łatwo przekształcić w system binarny
łatwo (i z powrotem).

W użyciu jest jeszcze inny system, zwany systemem ósemkowym. To było bardziej powszechne w
stare czasy, ale nie jest już często używany. Ponieważ czasami możesz go znaleźć w użyciu, ty
powinien się do tego przyzwyczaić i pokażemy to poniżej. To ta sama historia, co z drugą
reprezentacji, ale z ośmioma różnymi symbolami.

Binarny (2)
Ósemkowy (8)
Dziesiętny (10)
Szesnastkowy (16)

(2) (8) (10) (16)
00000 0 0 0
00001 1 1 1
00010 2 2 2
00011 3 3 3
00100 4 4 4
00101 5 5 5
00110 6 6 6
00111 7 7 7
01000 10 8 8
01001 11 9 9
01010 12 10
01011 13 11 r
01100 14 12 ° C
01101 15 13 r
01110 16 14
01111 17 15 F
10000 20 16 10
10001 21 17 11
10010 22 18 12
10011 23 19 13
10100 24 20 14
10101 25 21 15

Większość używanych obecnie komputerów wykorzystuje bajty ośmiobitowe. Oznacza to, że przechowują
ośmiu bitów na raz. Możesz zobaczyć, dlaczego system ósemkowy nie jest do tego najbardziej praktyczny:
Potrzebne byłyby trzy cyfry do reprezentowania ośmiu bitów, a to oznacza, że ​​musiałbyś użyć
jedna pełna cyfra reprezentująca tylko dwa bity (2+3+3=8). To jest marnotrawstwo. Dla szesnastkowego
cyfry, potrzebujesz tylko dwóch cyfr, które są całkowicie wykorzystane:

(2) (8) (10) (16)
11111111 377 255 FF

Możesz zobaczyć, dlaczego binarne i szesnastkowe można szybko przekonwertować: Dla każdego szesnastkowego
cyfra są dokładnie cztery cyfry binarne. Weź liczbę binarną: weź cztery cyfry z
prawej i utwórz z niej cyfrę szesnastkową (patrz tabela powyżej). Powtarzaj to aż
nie ma więcej cyfr. I na odwrót: weź liczbę szesnastkową. Dla każdego
cyfrę, zapisz jej binarny odpowiednik.

Komputery (a raczej działające na nich parsery) miałyby trudności z konwersją pliku
liczba jak 1234(16). Dlatego liczby szesnastkowe są określane z przedrostkiem. Ten
przedrostek zależy od języka, w którym piszesz. Niektóre z przedrostków to „0x” dla C, „$”
dla Pascala, „#” dla HTML. Powszechnie przyjmuje się, że jeśli liczba zaczyna się od zera, to
jest ósemkowy. Nie ma znaczenia, co jest używane, o ile wiesz, co to jest. użyję „0x”
dla szesnastkowego, „%” dla binarnego i „0” dla ósemkowego. Poniższe numery to wszystkie
to samo, tylko ich reprezentacja (podstawa) jest inna: 021 0x11 17 %00010001

Aby wykonywać działania arytmetyczne i konwersje, musisz zrozumieć jeszcze jedną rzecz. To jest coś
już wiesz, ale być może jeszcze tego nie „widzisz”:

Jeśli zapiszesz 1234 (bez prefiksu, więc jest to liczba dziesiętna), mówisz o numerze jeden
tysięcy dwieście trzydzieści cztery. W formie formuły:

1 * 1000 = 1000
2 * 100 = 200
3 * 10 = 30
4 * 1 = 4

Można to również zapisać jako:

1 * 10^3
2 * 10^2
3 * 10^1
4 * 10^0

gdzie ^ oznacza „do potęgi”.

Używamy podstawy 10 i pozycji 0,1,2 i 3. Pozycja najbardziej na prawo powinna
NIE mnożyć przez 10. Drugi od prawej należy pomnożyć jeden raz przez
10. Trzecia od prawej jest mnożona przez 10 dwa razy. To trwa bez względu na wszystko
pozycje są używane.

We wszystkich innych przedstawieniach jest tak samo:

0x1234 będzie

1 * 16^3
2 * 16^2
3 * 16^1
4 * 16^0

01234 byłoby

1 * 8^3
2 * 8^2
3 * 8^1
4 * 8^0

Tego przykładu nie można zrobić dla kodu binarnego, ponieważ ten system używa tylko dwóch symboli. Inny
przykład:

%1010 byłoby

1 * 2^3
0 * 2^2
1 * 2^1
0 * 2^0

Łatwiej byłoby przekonwertować go na postać szesnastkową i po prostu przetłumaczyć %1010
do 0xA. Po jakimś czasie można się do tego przyzwyczaić. Nie będziesz musiał wykonywać żadnych obliczeń
już, ale po prostu wiedz, że 0xA oznacza 10.

Aby przekonwertować liczbę dziesiętną na szesnastkową, możesz użyć następnej metody. To zajmie
trochę czasu, aby móc wykonać szacunki, ale będzie to łatwiejsze, gdy użyjesz systemu
częściej. Później spojrzymy na jeszcze inny sposób.

Najpierw musisz wiedzieć, ile stanowisk zostanie wykorzystanych w drugim systemie. Aby to zrobić, ty
musisz znać maksymalne liczby, których będziesz używać. Cóż, to nie jest takie trudne, na jakie wygląda. W
dziesiętny, maksymalna liczba, jaką można utworzyć z dwóch cyfr, to „99”. Maksymalna dla
trzy: „999”. Następna liczba wymagałaby dodatkowej pozycji. Odwróć ten pomysł, a tak się stanie
zobacz, że liczbę można znaleźć, biorąc 10^3 (10*10*10 to 1000) minus 1 lub 10^2 minus
jeden.

Można to zrobić również w systemie szesnastkowym:

16^4 = 0x10000 = 65536
16^3 = 0x1000 = 4096
16^2 = 0x100 = 256
16^1 = 0x10 = 16

Jeśli liczba jest mniejsza niż 65'536, zmieści się na czterech pozycjach. Jeśli liczba jest większa
niż 4'095, musisz użyć pozycji 4. Ile razy możesz odjąć 4'096 od
liczba bez schodzenia poniżej zera to pierwsza zapisywana cyfra. To zawsze będzie A
numer od 1 do 15 (od 0x1 do 0xF). Zrób to samo dla pozostałych pozycji.

Spróbujmy z 41'029. Jest mniejszy niż 16^4, ale większy niż 16^3-1. To oznacza, że ​​my
muszą korzystać z czterech pozycji. Możemy dziesięć razy odjąć 16^3 od 41'029 bez przechodzenia
poniżej zera. Najbardziej wysuniętą na lewo cyfrą będzie zatem „A”, więc mamy 0xA????. Liczba to
zredukowane do 41'029 - 10*4'096 = 41'029-40'960 = 69. 69 jest mniejsze niż 16^3, ale nie większe
niż 16^2-1. Druga cyfra to zatem „0” i mamy teraz 0xA0??. 69 jest mniejszy niż
16^2 i większe niż 16^1-1. Możemy odjąć 16^1 (czyli po prostu 16) cztery razy i
zapisz „4”, aby uzyskać 0xA04?. Odejmij 64 od 69 (69 - 4*16), a ostatnia cyfra to 5 -->
0xA045.

Druga metoda buduje liczbę od prawej strony. Spróbujmy ponownie 41'029. Dzielić przez
16 i nie używaj ułamków (tylko liczby całkowite).

41'029/16 to 2'564 z resztą 5. Zapisz 5.
2'564 / 16 to 160 z resztą 4. Wpisz 4 przed 5.
160/16 to 10 bez reszty. Dodaj 45 z 0.
10/16 jest poniżej jednego. Zakończ tutaj i dodaj 0xA. Skończ z 0xA045.

To, której metody użyjesz, zależy od Ciebie. Użyj tego, co działa dla ciebie. Używam ich obu bez
będąc w stanie powiedzieć, jakiej metody używam w każdym przypadku, myślę, że zależy to tylko od liczby.
Faktem jest, że niektóre liczby będą się często pojawiać podczas programowania. Jeśli liczba jest zbliżona do
jeden, który znam, wtedy użyję pierwszej metody (np. 32'770, która mieści się w 32'768
+ 2 i po prostu wiem, że jest to 0x8000 + 0x2 = 0x8002).

W przypadku binarnego można zastosować to samo podejście. Podstawa to 2, a nie 16, a liczba
pozycje będą szybko rosnąć. Korzystanie z drugiej metody ma tę zaletę, którą widać
bardzo łatwo, jeśli powinieneś zapisać zero lub jedynkę: jeśli podzielisz resztę przez dwa
będzie wynosić zero, jeśli jest to liczba parzysta, i jeden, jeśli jest to liczba nieparzysta:

41029 / 2 = 20514 reszta 1
20514 / 2 = 10257 reszta 0
10257 / 2 = 5128 reszta 1
5128 / 2 = 2564 reszta 0
2564 / 2 = 1282 reszta 0
1282 / 2 = 641 reszta 0
641 / 2 = 320 reszta 1
320 / 2 = 160 reszta 0
160 / 2 = 80 reszta 0
80 / 2 = 40 reszta 0
40 / 2 = 20 reszta 0
20 / 2 = 10 reszta 0
10 / 2 = 5 reszta 0
5 / 2 = 2 reszta 1
2 / 2 = 1 reszta 0
1 / 2 poniżej 0 reszta 1

Zapisz wyniki od prawej do lewej: %1010000001000101

Grupuj po czterech:

% 1010000001000101
%101000000100 0101
%10100000 0100 0101
%1010 0000 0100 0101

Konwertuj na szesnastkowy: 0xA045

Pogrupuj %1010000001000101 przez trzy i zamień na ósemkowe:

% 1010000001000101
%1010000001000 101
%1010000001 000 101
%1010000 001 000 101
%1010 000 001 000 101
%1 010 000 001 000 101
%001 010 000 001 000 101
1 2 0 1 0 5 --> 0120105

Więc: %1010000001000101 = 0120105 = 0xA045 = 41029
Lub: 1010000001000101(2) = 120105(8) = A045(16) = 41029(10)
Lub: 1010000001000101(2) = 120105(8) = A045(16) = 41029

Najpierw podczas dodawania liczb przekonwertujesz je na ich postać dziesiętną, a następnie z powrotem
do pierwotnej postaci po wykonaniu dodawania. Jeśli używasz innego systemu numeracji
często zobaczysz, że będziesz w stanie wykonywać działania arytmetyczne bezpośrednio w bazie
używany. W każdej reprezentacji jest tak samo, dodaj liczby po prawej stronie, zapisz
skrajną prawą cyfrę wyniku, zapamiętaj pozostałe cyfry i użyj ich w następnej
okrągły. Kontynuuj z drugą cyfrą od prawej i tak dalej:

%1010 + %0111 --> 10 + 7 --> 17 --> %00010001

stanie się

% 1010
%0111 +
||||
|||+-- dodaj 0 + 1, wynikiem jest 1, nic do zapamiętania
||+--- dodaj 1 + 1, wynikiem jest %10, zapisz 0 i zapamiętaj 1
|+---- dodaj 0 + 1 + 1 (zapamiętane), wynik = 0, zapamiętaj 1
+----- dodaj 1 + 0 + 1 (zapamiętane), wynik = 0, zapamiętaj 1
nic dodać, 1 zapamiętany, wynik = 1
--------
%10001 to wynik, lubię pisać go jako %00010001

W przypadku niskich wartości spróbuj wykonać obliczenia samodzielnie, a następnie sprawdź je za pomocą kalkulatora.
Im więcej obliczeń wykonasz sam, tym więcej odkryjesz, że nie zrobiłeś
błędy. W końcu będziesz wykonywać obliczenia w innych bazach równie łatwo, jak je robisz
dziesiętny.

Kiedy liczby staną się większe, będziesz musiał zdać sobie sprawę, że komputer nie nazywa się
komputer tylko po to, żeby mieć ładną nazwę. Dostępnych jest wiele różnych kalkulatorów, skorzystaj z nich
ich. W przypadku systemu Unix można użyć „bc”, które jest skrótem od kalkulatora binarnego. Nie kalkuluje
tylko dziesiętnie, ale we wszystkich bazach, których kiedykolwiek będziesz chciał użyć (wśród nich binarnych).

Dla osób w systemie Windows: Uruchom kalkulator (start->programy->akcesoria->kalkulator) i
w razie potrzeby kliknij widok->naukowe. Masz teraz kalkulator naukowy i możesz liczyć
w systemie binarnym lub szesnastkowym.

Korzystaj z bin_dec_hex online, korzystając z usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

  • 1
    głęboko czyste
    głęboko czyste
    Skrypt Kotlin, który niszczy wszystkie kompilacje
    pamięci podręczne z projektów Gradle/Android.
    Przydatne, gdy pozwala na to Gradle lub IDE
    w dół. Skrypt został przetestowany na
    macOS, ale...
    Pobierz głębokie czyszczenie
  • 2
    Wtyczka Eclipse Checkstyle
    Wtyczka Eclipse Checkstyle
    Wtyczka Eclipse Checkstyle
    integruje kod Java Checkstyle
    audytora do Eclipse IDE. The
    wtyczka zapewnia informacje zwrotne w czasie rzeczywistym
    użytkownik o naruszeniu...
    Pobierz wtyczkę Eclipse Checkstyle
  • 3
    Gracz AstrOrz
    Gracz AstrOrz
    AstrOrz Player to darmowy odtwarzacz multimedialny
    oprogramowanie, częściowo oparte na WMP i VLC. The
    odtwarzacz jest w minimalistycznym stylu, z
    więcej niż dziesięć kolorów motywu, a także może
    b ...
    Pobierz AstrOrzPlayer
  • 4
    movistartv
    movistartv
    Kodi Movistar+ TV to dodatek do XBMC/
    Kodi que allowe disponer de un
    dekodowanie usług IPTV de
    Movistar integrado en uno de los
    mediacenter ma...
    Pobierz movistartv
  • 5
    Code :: Blocks
    Code :: Blocks
    Code::Blocks to darmowa, otwarta
    międzyplatformowe C, C++ i Fortran IDE
    zbudowany, aby sprostać najbardziej wymagającym potrzebom
    swoich użytkowników. Jest przeznaczony do bardzo
    rozciąga się...
    Pobierz Code::Blocks
  • 6
    Wśród
    Wśród
    Pośród zaawansowanego interfejsu Minecraft
    a śledzenie danych/struktur to narzędzie
    wyświetl przegląd gry Minecraft
    świat, nie tworząc go. To
    mogą ...
    Pobierz Wśród
  • więcej »

Komendy systemu Linux

Ad