Positionssystem

Den här artikeln behöver fler eller bättre källhänvisningar för att kunna verifieras. (2013-05)
Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan.

Ett positionssystem är en typ av talsystem där talvärdet av en sifferföljd som inte bara bestäms av siffrornas tilldelade värden, utan även av deras positioner i följden. Detta skiljer sig från till exempel det romerska talsystemet, där ett tals värde fastställs genom addition och subtraktion av de olika ”siffrorna”. Det decimala talsystemet med arabiska siffror som är det vanligaste sättet att skriva tal på i västvärlden, är ett positionssystem med basen tio.

I ett positionssystem anger varje siffra ett antal av en potens av systemets talbas, och varje position har en bestämd potens. Talets värde erhålls genom att multiplicera talets siffror med sina potenser, vars storlek är beroende av siffrornas inbördes position, och därefter summeras produkterna.[1] När talet 12 skrivs i decimalsystemet så ligger ettan på tiotalets plats (10¹) och tvåan på entalets plats (10⁰). Dessa summeras för att få talets värde: 1×10 + 2×1 = 12.

Introduktion

Talet 3526 kan även skrivas som 3 1000 + 5 100 + 2 10 + 6 {\displaystyle 3\cdot 1000+5\cdot 100+2\cdot 10+6} , eller uttryckt med tiopotenser, som 3 10 3 + 5 10 2 + 2 10 1 + 6 10 0 {\displaystyle 3\cdot 10^{3}+5\cdot 10^{2}+2\cdot 10^{1}+6\cdot 10^{0}} .

Ett heltal i 10-systemet kan alltså skrivas som s n 10 n + s n 1 10 n 1 + + s 1 10 1 + s 0 10 0 {\displaystyle s_{n}10^{n}+s_{n-1}10^{n-1}+\dots +s_{1}10^{1}+s_{0}10^{0}} , där 0 s i 9 {\displaystyle 0\leq s_{i}\leq 9} .

Talet 23 kan beskrivas som 23 10 0 {\displaystyle 23\cdot 10^{0}} , men för att varje position skall utgöras av en enda siffra, skrivs det som 2 10 1 + 3 10 0 {\displaystyle 2\cdot 10^{1}+3\cdot 10^{0}} . Motsvarande gäller även andra baser.

Allmänt om olika talbassystem

Hur ett tal beskrivs i bas b {\displaystyle b}
Notation i bas b {\displaystyle b} : s 4 {\displaystyle s_{4}} s 3 {\displaystyle s_{3}} s 2 {\displaystyle s_{2}} s 1 {\displaystyle s_{1}} s 0 {\displaystyle s_{0}}
Positionsvärde: b 4 {\displaystyle b^{4}} b 3 {\displaystyle b^{3}} b 2 {\displaystyle b^{2}} b 1 {\displaystyle b^{1}} b 0 {\displaystyle b^{0}}
Talets värde: s 4 b 4 + s 3 b 3 + s 2 b 2 + s 1 b 1 + s 0 b 0 {\displaystyle s_{4}b^{4}+s_{3}b^{3}+s_{2}b^{2}+s_{1}b^{1}+s_{0}b^{0}}

Det som utmärker det vanliga 10-bassystem är att det är baserat på potenser av 10. På samma sätt kan andra tal användas som bas. För att generalisera konceptet, kan basen betecknas b {\displaystyle b} . Tabellen till höger visar hur tal uttrycks i bas b {\displaystyle b} .

För att ange vilken bas ett tal är skrivet i, skrivs basen med nedsänkt tal efter representationen. Till exempel så kan talet 513 {\displaystyle 513} förtydligas genom att skriva det som 513 10 {\displaystyle 513_{10}} . Allmänt antas ett tal vara uttryckt enligt 10-systemet om det saknar basangivelse.

Siffrorna som används i en bas b {\displaystyle b} är alltid 0 till b 1 {\displaystyle b-1} , eftersom det går att växla till nästa valör på samma sätt som i 10-bassystemet; ( b + s ) b n {\displaystyle (b+s)\cdot b^{n}} kan skrivas om till b n + 1 + s b n {\displaystyle b^{n+1}+s\cdot b^{n}} där s < b {\displaystyle s<b} .

Om ett tal skrivs i bas b {\displaystyle b} , så är varje siffra i det talets representation mindre än b {\displaystyle b} .

Heltal i andra baser

Notation i bas 2: 1 1 1 0 0
Positionsvärde: 2 4 {\displaystyle 2^{4}} 2 3 {\displaystyle 2^{3}} 2 2 {\displaystyle 2^{2}} 2 1 {\displaystyle 2^{1}} 2 0 {\displaystyle 2^{0}}
Talets värde: 16+8+4+0+0

Ett annat exempel är talet 11100 2 {\displaystyle 11100_{2}} . Om "växlingstabellen" används så ser man att detta representerar talet 1 2 4 + 1 2 3 + 1 2 2 + 0 2 1 + 0 2 0 = 16 + 8 + 4 = 28 {\displaystyle 1\cdot 2^{4}+1\cdot 2^{3}+1\cdot 2^{2}+0\cdot 2^{1}+0\cdot 2^{0}=16+8+4=28} . 11100 2 {\displaystyle 11100_{2}} är alltså talet 28 10 {\displaystyle 28_{10}} .

I högre baser än 10 uppstår ett problem. Uttrycket 122 13 {\displaystyle 122_{13}} kan både tolkas som 12 13 1 + 2 13 0 = 161 {\displaystyle 12\cdot 13^{1}+2\cdot 13^{0}=161} , eller som 1 13 2 + 2 13 1 + 2 13 0 = 197 {\displaystyle 1\cdot 13^{2}+2\cdot 13^{1}+2\cdot 13^{0}=197} . En lösning är att exempelvis gruppera siffrorna tydligare: [ 12 , 2 ] 13 {\displaystyle [12,2]_{13}} är representation för 161 {\displaystyle 161} i bas 13, medan [ 1 , 2 , 2 ] 13 {\displaystyle [1,2,2]_{13}} är representation för talet 197.

Ett annat alternativ är att utöka de första 10 (arabiska) siffrorna (0-9) med bokstäver. Som exempel skulle A = 10 {\displaystyle A=10} , B = 11 {\displaystyle B=11} , C = 12 {\displaystyle C=12} , D = 13 {\displaystyle D=13} , E = 14 {\displaystyle E=14} och F = 15 {\displaystyle F=15} . [ 13 , 15 ] 16 {\displaystyle [13,15]_{16}} då bli C F 16 {\displaystyle CF_{16}} . Detta skrivsätt används ofta inom IT-världen, speciellt inom programmering. Då datorn internt arbetar i bas 2 med enbart nollor och ettor, så kallade binära tal, har talen på detta skrivsätt relativt många positioner: 25510 = 111111112. En manuell omvandling till decimaltal kan förenklas genom att gruppera de binära siffrorna 0 och 1 i grupper om fyra, och därmed reducera antalet positioner från åtta till två. Problemet är att 11112 = 1 8 + 1 4 + 1 2 + 1 1 {\displaystyle 1\cdot 8+1\cdot 4+1\cdot 2+1\cdot 1} = 1510, alltså 2 siffror, medan talet i basen, 16, kan representeras av en enda siffra, F16 (=1510 enligt ovan). 111111112 vore då FF16. På detta sätt kan representationen av ett tal omvandlas relativt lätt mellan dessa två talsystem utan komplicerade beräkningar.

Exempel 1: Konvertering av tal till basen 10

Talet 6342 7 {\displaystyle 6342_{7}} i basen 10

Talet skrivs upp enligt mallen och beräknas ganska enkelt i basen 10.

Notation i bas 7: 6 3 4 2
Positionsvärde: 7 3 {\displaystyle 7^{3}} 7 2 {\displaystyle 7^{2}} 7 1 {\displaystyle 7^{1}} 7 0 {\displaystyle 7^{0}}
Talets värde: 6 7 3 + 3 7 2 + 4 7 1 + 2 7 0 {\displaystyle 6\cdot 7^{3}+3\cdot 7^{2}+4\cdot 7^{1}+2\cdot 7^{0}}

6342 7 {\displaystyle 6342_{7}} är då 6 7 3 + 3 7 2 + 4 7 1 + 2 7 0 = 2235 {\displaystyle 6\cdot 7^{3}+3\cdot 7^{2}+4\cdot 7^{1}+2\cdot 7^{0}=2235} .

Talet [ 14 , 2 , 70 ] 81 {\displaystyle [14,2,70]_{81}} i bas 10

Med användning av växlingstabellen skrivs

Notation i bas 81: 14 2 70
Positionsvärde: 81 2 {\displaystyle 81^{2}} 81 1 {\displaystyle 81^{1}} 81 0 {\displaystyle 81^{0}}
Talets värde: 14 81 2 + 2 81 1 + 70 81 0 {\displaystyle 14\cdot 81^{2}+2\cdot 81^{1}+70\cdot 81^{0}}

Vi får då att talet är 14 6561 + 2 81 + 70 1 = 92086 {\displaystyle 14\cdot 6561+2\cdot 81+70\cdot 1=92086} .

Talet [ 2 , 2 , 0 , 10 , 12 , 12 , 4 ] 16 {\displaystyle [2,2,0,10,12,12,4]_{16}} i basen 16

Notation i bas 16: 2 2 0 10 12 12 4
Positionsvärde: 2 6 {\displaystyle 2^{6}} 2 5 {\displaystyle 2^{5}} 0 4 {\displaystyle 0^{4}} 10 3 {\displaystyle 10^{3}} 12 2 {\displaystyle 12^{2}} 12 1 {\displaystyle 12^{1}} 4 0 {\displaystyle 4^{0}}
Talets värde: 2 16 6 + 2 16 5 + 0 16 4 + 10 16 3 + 12 16 2 + 12 16 1 + 4 16 0 {\displaystyle 2\cdot 16^{6}+2\cdot 16^{5}+0\cdot 16^{4}+10\cdot 16^{3}+12\cdot 16^{2}+12\cdot 16^{1}+4\cdot 16^{0}}

Då fås att talet är 2 16777216 + 2 1048576 + 0 65536 + 10 4096 + 12 256 + 12 16 + 4 1 = 35695812 {\displaystyle 2\cdot 16777216+2\cdot 1048576+0\cdot 65536+10\cdot 4096+12\cdot 256+12\cdot 16+4\cdot 1=35695812} .

Exempel 2: Konvertering av tal från basen 10

Talet 154 10 {\displaystyle 154_{10}} i basen 16

Föreställ 154 enkronor på bordet, som ska växlas till mynt med valörerna { 16 0 , 16 1 , 16 2 , } = { 1 , 16 , 256 , } {\displaystyle \{16^{0},16^{1},16^{2},\dots \}=\{1,16,256,\dots \}} . 256-mynten är för stora, så det räcker med 16-mynten och 1-mynten. Hur många 16-mynt kan då behövas?

154 16 = 9 + 10 16 {\displaystyle {\frac {154}{16}}=9+{\frac {10}{16}}} visar att 154 räcker till 9 hela 16-kronorsmynt. De resterande mynten får då vara kvar som enkronor. Alltså kan 154 enkronor växlas till 9 16 1 + 10 16 0 = [ 9 , 10 ] {\displaystyle 9\cdot 16^{1}+10\cdot 16^{0}=[9,10]} .

Talet 1632 10 {\displaystyle 1632_{10}} i bas 3?

1632 enkronor ska växlas till mynt i valörerna 3 0 , 3 1 , 3 2 , = 1 , 3 , 9 , 27 , 81 , 243 , 729 , 2187 {\displaystyle 3^{0},3^{1},3^{2},\dots =1,3,9,27,81,243,729,2187\dots }

Samma princip som ovan ger då att

1632 = 2 729 + 174 {\displaystyle 1632=2\cdot 729+174} (1458 mynt växlas till 2 stycken 729-sedlar).

Fortsätter växlingen till mynt fås

1632 = 2 3 6 + 2 81 + 12 {\displaystyle 1632=2\cdot 3^{6}+2\cdot 81+12}

1632 = 2 3 6 + 2 3 4 + 1 9 + 3 {\displaystyle 1632=2\cdot 3^{6}+2\cdot 3^{4}+1\cdot 9+3}

1632 = 2 3 6 + 2 3 4 + 1 3 2 + 1 3 1 {\displaystyle 1632=2\cdot 3^{6}+2\cdot 3^{4}+1\cdot 3^{2}+1\cdot 3^{1}}

Uttryckt som en summa av alla mynttyper fås 2 3 6 + 0 3 5 + 2 3 4 + 0 3 3 + 1 3 2 + 1 3 1 + 0 3 0 {\displaystyle 2\cdot 3^{6}+0\cdot 3^{5}+2\cdot 3^{4}+0\cdot 3^{3}+1\cdot 3^{2}+1\cdot 3^{1}+0\cdot 3^{0}} .

Läses nu antalet mynt av varje sort fås 2020110 3 {\displaystyle 2020110_{3}} . Alltså gäller 1632 10 = 2020110 3 {\displaystyle 1632_{10}=2020110_{3}}

Decimaltal i andra baser

Decimaltal i andra baser fungerar på precis samma sätt som när det fanns 10-öresmynt och 1-öresmynt, (som motsvarar 10 1 {\displaystyle 10^{-1}} -kronorsmynt och 10 2 {\displaystyle 10^{-2}} -kronorsmynt). I dessa fall är det inte ovanligt att resultatet blir en oändlig decimalutveckling, vilket ses i följande exempel:

Exempel 1: Decimaltal till basen 3

Talet 1,510 i basen 3.

Valörerna talet ska växlas till är { 3 0 , 3 1 , 3 2 , } = { 1 , 1 3 , 1 9 , } {\displaystyle \{3^{0},3^{-1},3^{-2},\dots \}=\{1,{\frac {1}{3}},{\frac {1}{9}},\dots \}} .

Det kan sägas att det finns två högar, en med mynt i bas 10, och en med mynt i bas 3. Genom att successivt växla från den ena högen till den andra genom att flytta största möjliga valör fås följande:

Antal i bas 10 Antal i bas 3
1 , 5 = 3 2 {\displaystyle \displaystyle {1,5={\frac {3}{2}}}} 0 {\displaystyle 0}
3 2 1 1 3 0 = 1 2 {\displaystyle \displaystyle {{\frac {3}{2}}-1\cdot {\frac {1}{3^{0}}}={\frac {1}{2}}}} 3 0 {\displaystyle \displaystyle {3^{0}}}
1 2 1 1 3 1 = 1 6 {\displaystyle \displaystyle {{\frac {1}{2}}-1\cdot {\frac {1}{3^{1}}}={\frac {1}{6}}}} 3 0 + 3 1 {\displaystyle \displaystyle {3^{0}+3^{-1}}}
1 6 1 1 3 2 = 1 18 {\displaystyle \displaystyle {{\frac {1}{6}}-1\cdot {\frac {1}{3^{2}}}={\frac {1}{18}}}} 3 0 + 3 1 + 3 2 {\displaystyle \displaystyle {3^{0}+3^{-1}+3^{-2}}}
1 18 1 1 3 3 = 1 54 {\displaystyle \displaystyle {{\frac {1}{18}}-1\cdot {\frac {1}{3^{3}}}={\frac {1}{54}}}} 3 0 + 3 1 + 3 2 + 3 3 {\displaystyle \displaystyle {3^{0}+3^{-1}+3^{-2}+3^{-3}}}
{\displaystyle \dots } {\displaystyle \dots }

Fortsätter utvecklingen oändligt länge framkommer att 1,510 = 1,11111111...3. Talet 1,5 har alltså oändlig decimalutveckling i bas 3.

Exempel 2: Decimaltal till basen 4

Talet 12 , 5 10 {\displaystyle 12,5_{10}} i basen 4.

På samma sätt som i förra exemplet:

Antal i bas 10 Antal i bas 4
12 , 5 {\displaystyle 12,5} 0 {\displaystyle 0}
12 , 5 3 4 = 0 , 5 {\displaystyle 12,5-3\cdot 4=0,5} 3 4 {\displaystyle 3\cdot 4}
0 , 5 2 1 4 = 0 {\displaystyle 0,5-2\cdot {\frac {1}{4}}=0} 3 4 + 2 1 4 {\displaystyle 3\cdot 4+2\cdot {\frac {1}{4}}}

Här tog det slut mycket snabbare: 12 , 5 10 = 3 4 1 + 0 4 0 + 2 4 1 = 30 , 2 4 {\displaystyle 12,5_{10}=\mathbf {3} \cdot 4^{1}+\mathbf {0} \cdot 4^{0}+\mathbf {2} \cdot 4^{-1}=30,2_{4}}

Räkneoperationer i andra baser

De vanliga räknesätten kan utföras i andra positionssystem precis som i basen 10.

Exempel 1: Att addera två tal i en annan bas

Utför additionen 121 , 2 3 + 102 3 {\displaystyle 121,\!2_{3}+102_{3}} .

Addera siffrorna var för sig precis som med vanlig addition, med undantaget att 1 3 + 1 3 + 1 3 = 10 3 {\displaystyle 1_{3}+1_{3}+1_{3}=10_{3}} .

Värde 3 3 {\displaystyle 3^{3}} 3 2 {\displaystyle 3^{2}} 3 1 {\displaystyle 3^{1}} 3 0 {\displaystyle 3^{0}} 3 1 {\displaystyle 3^{-1}}
 
Minne 1 1 1    
Tal 1   1 2 1, 2
Tal 2   1 0 2, 0

Summa 1 0 0 0, 2

Svaret blir alltså 1000 , 2 3 {\displaystyle 1000,\!2_{3}} .

Exempel 2: Subtrahera två tal i en annan bas

Beräkna [ 3 , 0 , 12 , 5 ] 14 [ 1 , 9 , 1 , 4 ] 14 {\displaystyle [3,0,12,5]_{14}-[1,9,1,4]_{14}}

Här ställs en tabell upp som med vanlig subtraktion, och som vanligt så "lånas" från nästa siffra om det måste dras ett större tal från ett mindre.

(Att dra 11 enkronor från 1 enkrona och 3 stycken 14-kronor löses ju genom att 14-kronan växlas till enkronor, och på liknande sätt för större valörer.)

Värde 14 3 {\displaystyle 14^{3}} 14 2 {\displaystyle 14^{2}} 14 1 {\displaystyle 14^{1}} 14 0 {\displaystyle 14^{0}}
 
Minne   14    
Tal 1 3 {\displaystyle 3\!\!\!\!\backslash } 0 12 5
Tal 2 1 9 1 4

Differens 1 5 11 1

Svaret blir [ 1 , 5 , 11 , 1 ] 14 {\displaystyle [1,5,11,1]_{14}} .

Exempel 3: Multiplicera två tal i en annan bas

Utför multiplikationen talen 1021 3 122 3 {\displaystyle 1021_{3}\cdot 122_{3}}

Uppställning för multiplikation:

Värde   3 6 {\displaystyle 3^{6}} 3 5 {\displaystyle 3^{5}} 3 4 {\displaystyle 3^{4}} 3 3 {\displaystyle 3^{3}} 3 2 {\displaystyle 3^{2}} 3 1 {\displaystyle 3^{1}} 3 0 {\displaystyle 3^{0}}
 
        1 0 2 1
      {\displaystyle \cdot }   1 2 2

2 3 1021 3 {\displaystyle \mathbf {2_{3}\cdot 1021_{3}} }         2 1 1 2
2 3 1021 3 {\displaystyle \mathbf {2_{3}\cdot 1021_{3}} }       2 1 1 2  
1 3 1021 3 {\displaystyle \mathbf {1_{3}\cdot 1021_{3}} }   + 1 0 2 1    

Nu måste additionen utföras. Det görs extra tydligt här med minnessiffror. Kom ihåg att 1 3 + 2 3 = 10 3 {\displaystyle 1_{3}+2_{3}=10_{3}} .

 
Minne     1 2 1 1    
        2 1 1 2
      2 1 1 2 0
  + 1 0 2 1 0 0

Summa     2 1 0 1 0 2

Alltså gäller det att 1021 3 122 3 = 210102 3 {\displaystyle 1021_{3}\cdot 122_{3}=210102_{3}}

Källor

  1. ^ Kenneth H. Rosen (2011) (på engelska). Elementary Number Theory and Its Applications (6). sid. 45. ISBN 0321717759 
v  r
Talsystem
Enda primtalsfaktor
Binära (2) · Ternära (3) · Kvarternära (4) · Kvinära (5) · Septenära (7) · Oktala (8) · Nonära (9) · Undecimala (11) · Tridecimala (13) · Hexadecimala (16) · Pentavigesimala (25) · Septemvigesimala (27) · Duotrigesimala (32) · Tetrasexagesimala (64)
Flera primtalsfaktor
Senära (6) · Decimala (10) · Duodecimala (12) · Tetradecimala (14) · Pentadecimala (15) · Oktodecimala (18) · Vigesimala (20) · Unvigesimala (21) · Tetravigesimala (24) · Hexavigesimala (26) · Oktovigesimala (28) · Trigesimal (30) · Pentatrigesimala (35) · Hexatrigesimala (36) · Sexagesimala (60) · Pentaoktagesimala (85)
Övriga
Unära (1) · Negabinära (-2) · Pentadiska
Talbasen inom parentes