Konvertera binärt och hexadecimaltal - Så här gör du
När du programmerar eller gör matte har du antagligen stött på binära och hexadecimala nummer. Detta praktiska tips visar hur du konverterar dem korrekt.
Konvertera binärt nummer till tiotalssystemet - hur det fungerar
Datorer beräknar vanligtvis med binära tal eller ett dubbelt system. Så det finns bara två siffror: 0 och 1. Dessa representerar datorer för "på" och "av".
- Låt oss ta siffran "101010" som ett första exempel som du vill konvertera till det normala decimalsystemet ("decimalsystem").
- För att göra detta, börja från höger: Det finns en 0 längst till höger, så notera "0 ⋅ 2⁰".
- Därefter tar du siffran en till vänster och lägger hela saken till ditt resultat: "0 ⋅ 2⁰ + 1 ⋅ 2¹". Ju längre ett nummer är från det högsta talet, desto större är styrka.
- Upprepa nu dessa steg för alla siffror. Som ett resultat bör du nu få "0 ⋅ 2⁰ + 1 ⋅ 2¹ + 0 ⋅ 2² + 1 ⋅ 2³ + 0 ⋅ 2⁴ + 1 ⋅ 2⁵".
- Du kan sedan konvertera krafterna till normala heltal: "0 ⋅ 1 + 1 ⋅ 2 + 0 ⋅ 4 + 1 ⋅ 8 + 0 ⋅ 16 + 1 ⋅ 32".
- Siffran "101010" i det dubbla systemet i tiotalssystemet är numret "42".
- Tips: Om den här beräkningsmetoden är för svår för dig kan du också memorera tabellen du ser på bilden ovan.
Konvertera decimalnummer till binärt tal
Att konvertera tiotals till ett binärt tal är ännu enklare än att konvertera ett binärt tal till ett decimaltal.
- I det här exemplet använder vi siffran "42" igen.
- Dela upp detta nummer med 2: "42: 2 = 21 återstående 0".
- Dela sedan resultatet från föregående beräkning med 2: "21: 2 = 10 återstående 1".
- Upprepa dessa steg flera gånger tills du får beräkningen "0: 2 = 0 vila 0". Samma resultat skulle alltid komma härifrån; Så du kan stoppa räkningen.
- Din beräkning bör nu se ut så här: "42: 2 = 21 resten 0; 21: 2 = 10 rest 1; 10: 2 = 5 rest 0; 5: 2 = 2 rest 1; 2: 2 = 1 rest 0 ; 1: 2 = 0 resten 1; 0: 2 = 0 rest 0; ...
- Skriv alltid ner resten av varje faktura. Starta dock bakifrån. Nu ska du få numret "0101010".
- När allt kommer omkring måste du bara lämna alla nollor fram till den första. Siffran "42" är därför siffran "101010" i det dubbla systemet.
Konvertera decimalnummer till hexadecimalt system - hur det fungerar
Att konvertera ett nummer till det hexadecimala systemet är lite mer komplicerat.
- Som exempel använder vi numret "2017" den här gången.
- Dela upp detta nummer med 16 och notera resten: "2017: 16 = 126 vila 1".
- Nu måste du dela resultatet från föregående beräkning med 16 igen: "126: 16 = 7 vila 14".
- Upprepa stegen tills du har nått beräkningen "0: 16 = 0 vila 0".
- Din beräkning bör nu se ut så här: "2017: 16 = 126 resten 1; 126: 16 = 7 rest 14; 7: 16 = 0 rest 7; 0: 16 = 0 rest 0; ...
- Även här, precis som när du konverterar till ett dubbelt system, måste du skriva ner resten av varje faktura efter varandra. Det finns dock 16 nummer i det hexadecimala systemet. Siffrorna 0 till 9 förblir desamma. Men om återstoden är större än 9 måste du konvertera den till en bokstav. Följande gäller: "10 = A; 11 = B; 12 = C; 13 = D; 14 = E; 15 = F".
- Om du noterar resten bör du få numret "07E1". Återigen kan du lämna nollorna i början. Siffran "2017" är siffran "7E1" i det hexadecimala systemet.
- Tips: Så att du kan beräkna resten snabbare räcker det att multiplicera siffrorna på en kvot efter decimalpunkten med 16: "126: 7 = 7.875 → 126: 7 = 7 resten (16 ⋅ 0, 875) → 126: 7 = 7 Vila 14 ".
Konvertera hexadecimaltal till normalt decimaltal
Konvertering av ett hexadecimaltal till ett normalt decimaltal fungerar på samma sätt som att konvertera ett binärt tal.
- Som exempel använder vi det hexadecimala numret "MONKEY". Som ni redan vet står "A" för en 10, "F" för en 15 och "E" för en 14.
- Börja beräkna längst upp till höger och skriv ner "14 ⋅ 16⁰".
- Gå nu en plats till vänster och lägg till allt till ditt resultat: "14 ⋅ 16⁰ + 15 ⋅ 16¹". Som du ser fungerar beräkningen på samma sätt som omvandling av ett binärt tal.
- Till slut ska din faktura se ut så här: "14 ⋅ 16⁰ + 15 ⋅ 16¹ + 15 ⋅ 16² + 10 ⋅ 16³". Resultatet är "45054".
Hexadecimal i binär - och vice versa
I nästa stycke vill vi äntligen visa dig hur du kan konvertera ett hexadecimaltal till ett binärt tal - och vice versa.
- Som ni kanske vet, kan 16 olika siffror med exakt fyra siffror representeras i det dubbla systemet, eftersom 2 16 = 16.
- Dela upp det binära numret du väljer i fyra paket: "1010 1111 1111 1110"
- Du kan sedan konvertera varje paket med fyra till ett decimaltal för att göra det lättare att tilldela rätt hexadecimaltal.
- Omvänt kan du också konvertera varje siffra i ett hexadecimalt antal individuellt till ett dubbelt tal.
0x och 0b - för vad hela saken?
Du har antagligen redan lagt märke till att vissa hexadecimala eller binära siffror har "0x" eller "0b" framför dem.
- "0x" förhindras ibland med ett hexadecimaltal så att det också känns igen som ett hexadecimaltal.
- Till exempel skrivs "0b" ofta före binära siffror.
- "X" i "0x" står för "x" i "hexadecimal", "b" i "0b" för "binärt tal".
- För att göra det lättare att dela upp siffrorna placeras parenteser runt dem (särskilt i matematik): "(MONKEY) ₁₆". De 16 i indexet står för det hexadecimala systemet. Siffrorna i det dubbla systemet anges därför med "(101010) ₂".
I nästa praktiska tips lär du dig att skapa och använda matriser med programmeringsspråket "Python".