Číselné sústavy
description
Transcript of Číselné sústavy
Číselné sústavy
VII
10110010
8EH
9415 10
2
7528
2
Základné pojmy
• Číselná sústava je systém jednoznačných pravidiel pre zobrazenie číselných hodnôt pomocou konečného počtu znakov (číslic, cifier)
• Číslo je reprezentované v danej číselnej sústave postupnosťou číslic
• Číselnú sústavu charakterizuje z vonkajšieho pohľadu použitá množina znakov - číslic
3
Delenie číselných sústav
• Polyadické (pozičné) – význam číslice vždy závisí od jej pozície v zápise
• Pozičné sústavy sú napr. desiatková, osmičková, dvojková, šestnástková
• Nepolyadické (nepozičné) – význam číslice nemusí vždy závisieť od jej pozície v zápise
• Nepozičné sústavy sú napr. rímska alebo „pivná“
• Vo výpočtovej technike sa používajú len pozičné sústavy
4
Prevody medzi číselnými sústavami
• V súvislosti s programovaním a výpočtovou technikou vôbec sa najčastejšie stretneme s číslami v sústave desiatkovej(dekadickej), osmičkovej(oktálovej), šestnástkovej(hexadecimálnej) a dvojkovej(binárnej)
• Preto sa ďalej budeme zaoberať prevodmi čísel: • z desiatkovej sústavy do sústavy s iným základom • zo sústavy s nedesiatkovým základom do desiatkovej
sústavy • medzi sústavami so základom rovným mocnine čísla 2
(praktický význam majú prevody medzi dvojkovou, osmičkovou a šestnástkovou sústavou)
5
Prevod celých čísel z desiatkovej sústavy do sústavy s iným
základom• Nech A je hľadané číslo a jeho jednotlivé cifry sú
ai (i=0, …, n)
• Nech Nc je celé číslo v desiatkovej sústave• Nech z je základ číselnej sústavy, do ktorej ideme
prevádzať
• Potom ai = zvyšok po delení (Nci /z), kde Nci je celočíselný podiel Nci-1/z a Nc0=Nc
6
Príklad
Príklad: Preveďte číslo 39 z desiatkovej do dvojkovej sústavy.
Dané:Nc=Nc0=39z=2A=?
Vzťahy:ai = zvyšok po delení (Nci /z)
Nci je celočíselný podiel Nci-1/z
i Nci Nci+1 ai
0 39 39/2=19 39%2= 1
1 19 19/2=9 19%2= 1
2 9 9/2=4 9%2= 1
3 4 4/2=2 4%2= 0
4 2 2/2=1 2%2= 0
5 1 1/2=0 1%2= 1
VÝZNAM
(39)10 = (100111)2
7
Prevod desatinných čísel z desiatkovej sústavy do sústavy s
iným základom• Nech A je desatinná časť čísla, ktorú hľadáme a
jej jednotlivé cifry sú a-i (i=1, …, m)
• Nech Nd je desatinná časť čísla v desiatkovej sústave
• Nech z je základ číselnej sústavy, do ktorej ideme prevádzať
• Potom – a-i = celá časť súčinu (Ndi*z)
– Ndi+1 = (Ndi*z)- ai
– Nd1=Nd
8
Príklad
Príklad: Preveďte číslo 0,3 z desiatkovej do dvojkovej sústavy s presnosťou na 6 desatinných miest.
Dané:Nd=Nd1=0,3z=2A=?
Vzťahy:ai=celá časť súčinu (Ndi*z)
Ndi+1=(Ndi*z)- ai
i Ndi Ndi*z a-i Ndi+1
1 0,3 0,3*2=0,6 0 0,6-0=0,6
2 0,6 0,6*2=1,2 1 1,2-1= 0,2
3 0,2 0,2*2=0,4 0 0,4-0=0,4
4 0,4 0,4*2=0,8 0 0,8-0=0,8
5 0,8 0,8*2=1,6 1 1,6-1=0,6
6 0,6 0,6*2=1,2 1 1,2-1=0,2
(0,3)10 = (0,010011...)2
VÝZNAM
9
Prevod celých čísel zo sústavy s nedesiatkovým základom do
desiatkovej sústavy
• Nech A je celé číslo v sústave s nedesiatkovým základom a jeho jednotlivé cifry sú ai (i=n,n-1,...0)
• Nech z je základ číselnej sústavy, z ktorej ideme prevádzať• Nech Nc je hľadané číslo• Potom
– Si = Si+1*z+ai
– Nc=S0
– Sn+1=0
• Alebo
n
i
ii zaNc
0
Hornerova schéma
10
Príklad
Príklad: Preveďte číslo 100111 z dvojkovej do desiatkovej sústavy.
Dané:S6=0, z=2
a5=1,a4=0,a3=0,
a2=1,a1=1,a0=1
Nc=S0=?
Vzťahy:Si = Si+1*z+ai
i ai Si+1*z Si
5 1 0*2=0 0+1=1
4 0 1*2=2 2+0=2
3 0 2*2=4 4+0=4
2 1 4*2=8 8+1=9
1 1 9*2=18 18+1=19
0 1 19*2=38 38+1=39
(100111)2 = (39)10
11
Príklad
Príklad: Preveďte číslo 100111 z dvojkovej do desiatkovej sústavy.
Dané:z=2a5=1,a4=0,a3=0,
a2=1,a1=1,a0=1
Nc=?
Vzťahy:
(100111)2 = (39)10
n
i
ii zaNc
0
Riešenie:
Nc = a5*25 + a4*24 + a3*23 + a2*22 + a1*21 + a0*20
Nc = 1*32 + 0*16 + 0*8 + 1*4 + 1*2 + 1*1 Nc = 32 + 0 + 0 + 4 + 2 + 1Nc = 39
12
Prevod desatinných čísel zo sústavy s nedesiatkovým
základom do desiatkovej sústavy
• Nech A je desatinná časť čísla v sústave s nedesiatkovým základom a jej jednotlivé cifry sú ai (i=-1,-2,...-m)
• Nech z je základ číselnej sústavy, z ktorej ideme prevádzať• Nech Nd je desatinná časť hľadaného čísla• Potom
– S-i = S-i-1/z+a-i
– Nd=S-1/z
– S-m-1=0
• Alebo
m
i
ii zaNd
1
13
PríkladPríklad:
Preveďte číslo 0.010011 z dvojkovej do desiatkovej sústavy.
Dané:S-7=0, z=2a-6=1,a-5=1,a-4=0,a-3=0,a-2=1,a-1=0Nd=S-1/z=?
Vzťahy: S-i = S-i-1/z+a-i
i a-i S-i-1/z S-i
6 1 0/2=0 0+1=1
5 1 1/2=0,5 0,5+1=1,5
4 0 1,5/2=0,75 0,75+0=0,75
3 0 0,75/2=0,375 0,375+0=0,375
2 1 0,375/2=0,1875 0,1875+1=1,1875
1 0 1,1857/2=0,59375 0,59375+0=0,59375
S-1/z =0,296875
(0,010011)2 = (0,296875)10
14
Príklad
Príklad:
Preveďte číslo 0.010011 z dvojkovej do desiatkovej sústavy.
Dané:z=2a-6=1,a-5=1,a-4=0,a-3=0,a-2=1,a-1=0Nd=?
Vzťahy:
(0,010011)2 = (0,296875)10
Riešenie:
Nd = a-6*2-6 + a-5*2-5 + a-4*2-4 + + a-3*2-3 + a-2*2-2 + a-1*2-1
Nd = 1*0,015625 + 1*0,03125 + 0*0,0625 + + 0*0,125 + 1*0,25 + 0*0,5
Nd = 0,015625 + 0,03125 + 0 + + 0 + 0,25 + 0
Nd = 0,296875
m
i
ii zaNd
1
15
Prevod medzi sústavami so základom rovným mocnine čísla 2
• Nech A je číslo v sústave, z ktorej ideme prevádzať a jeho cifry sú ai
• Nech P je číslo v sústave, do ktorej ideme prevádzať a jeho cifry sú pi
• Prevod medzi sústavami so základmi 2j a 2k
16
Prevod medzi sústavami so základmi 2j a 2k ak j=2 a k>2
• Číslo A je v tvare anan-1...a1a0.a-1a-2...a-m
• Postup:1. K celej časti pridáme nuly zľava tak, aby počet
číslic bol násobkom k2. K desatinnej časti pridáme nuly sprava tak, aby
počet číslic bol násobkom k3. Z cifier ai vytvoríme k-tice, ktoré potom
prevádzame na cifry pi
17
Príklad
Príklad:Preveďťe číslo 1110011.1101 z dvojkovej do osmičkovej sústavy
Riešenie:Základ dvojkovej sústavy je 2=21, teda j=1. Základ osmičkovej sústavy je8=23, teda k=3.
1. K celej časti pridáme nuly zľava tak, aby počet číslic bol násobkom k.Počet číslic celej časti je 7. Najbližší násobok čísla 3 je 9. Teda celá časťčísla bude mať 9 číslic => 001110011
2. K desatinnej časti pridáme nuly sprava tak, aby počet číslic bol násobkom k.
Počet číslic desatinnej časti je 4. Najbližší násobok čísla 3 je 6. Tedadesatinná časť čísla bude mať 6 číslic => 110100
18
Príklad
3. Z cifier ai vytvoríme k-tice, ktoré potom prevádzame na cifry pi. Teda z cifier čísla 001110011.110100 vytvoríme trojice, ktoré potom prevádzame.
001 | 110 | 011 . 110 | 100
1 6 3 . 6 4
(1110011,1101)2 = (163,64)8
19
Prevod medzi sústavami so základmi 2j a 2k ak j>2 a k=2
• Číslo A je v tvare anan-1...a1a0.a-1a-2...a-m
• Postup:1. Jednotilvé číslice ai prevádzame na j-tice
20
PríkladPríklad:Preveďťe číslo 163.64 z osmičkovej do dvojkovej sústavy
Riešenie:Základ osmičkovej sústavy je 8=23, teda j=3. Základ dvojkovej sústavy je2=21, teda k=1.
1. Jednotilvé číslice ai prevádzame na trojice
1 6 3 . 6 4
001 110 011 . 110 100
(1110011,1101)2 = (163,64)8
21
Prevod medzi sústavami so základmi 2i a 2j ak i>2 a j>2
• Číslo A je v tvare anan-1...a1a0.a-1a-2...a-m
• Postup:1. Číslo A prevedieme do dvojkovej sústavy, podľa
postupu prevodu medzi sústavami so základmi 2i a 2j ak i>2 a j=2
2. Nové A v dvojkovej sústave prevedieme podľa postupu prevodu medzi sústavami so základmi 2i a 2j ak i=2 a j>2