210 likes | 382 Views
EDA 451 - Digital och Datorteknik 2009/2010 Binär Kodning, lärobokens kap.2 Ur innehållet: Grundläggande binära koder Talomvandlingar. Binär kodning. Begrepp Tal och talsystem ASCII- kod NBCD Excess-kod Flyttal Gray-kod Felupptäckande kod, paritet. Vad betyder
E N D
EDA 451 - Digital och Datorteknik • 2009/2010 • Binär Kodning, lärobokens kap.2 • Ur innehållet: • Grundläggande binära koder • Talomvandlingar Binär kodning
Binär kodning • Begrepp • Tal och talsystem • ASCII-kod • NBCD • Excess-kod • Flyttal • Gray-kod • Felupptäckande kod, paritet Vad betyder ettorna och nollorna? 1001101000111...1000101010111 Binär kodning
Begrepp vid binär kodning Binär kodning
Positionssystem, 10-decimalt Ett N-bitars tal. N = n+m där n är antalet siffror i heltalsdelen och m är antalet siffror i bråkdelen skriver vi allmänt: Minst signifikanta siffra (LSD) Mest signifikanta siffra (MSD) Decimalpunkt Exempelvis, talet: Där N=6, n=m=3, varje siffras vikt avgörs av dess position i talet... Binär kodning
Positionssystem, generellt Talbasen kan dock vara praktiskt taget vad som helst... Exempel: =10 Exempel: =2 Vi använder vanligen det enklare skrivsättet Binär kodning
Talbaser Vi använder huvudsakligen tre olika talbaser: Decimalt, för att vi är vana vid det. Binärt, för att det motsvarar informationselementen i det digitala systemet. Hexadecimalt, därför att det är ett bekvämt sätt att skriva grupper av binära siffror Exempel: (13)10 = (1101)2=(D)16 Binär kodning
Talomvandlingar • För talomvandling till basen 10 använder vi definitionen direkt... • Exempel: • Omvandla till decimal form: • (110.111)2 • (1A.8F)16 • Lösning: • (110.111)2 = {N=6, n=m=3, =2} = • 1×22+ 1×21+ 0×20+ 1×2-1+ 1×2-2+ 1×2-3= • 4 + 2 + 0+ 1/2+ 1/4 + 1/8 = 6 + 7/8 = (6,875)10 • (1A.8F)16 = {N=4, n=m=2, =16} = • 1×161+ 10×160+ 8×16-1+ 15×16-2 = • 16 + 10 + 8/16 + 15/256= 26 + 143/256 = (26,55859375)10 Binär kodning
Omvandling från N10 till N 1. Dela upp N10 i heltalsdel och bråktalsdel. 2. Heltalsdelen omvandlas via succesiva divisioner med . 3. Bråkdelen omvandlas via succesiva multiplikationer med . Exempel: Omvandla (122,18)10 till binär form. Bråkdelen avkortas vid behov till 7 korrekta bråksiffror. Binär kodning
1. Omvandla (122)10 till binär form Terminerings-villkor Heltalsdelen således: (1111010)2 Binär kodning
2. Omvandla (0,18)10 till binär form 0,18 × 2 = 0,36 → d-1= 0 0,36 × 2 = 0,72 → d-2= 0 0,72 × 2 = 1,44 → d-3= 1 Termineringsvillkor enligt uppgiftstexten 7 st. korrekta bråksiffror 0,44 × 2 = 0,88 → d-4= 0 0,88 × 2 = 1,76 → d-5= 1 0,76 × 2 = 1,52 → d-6= 1 0,52 × 2 = 1,04 → d-7= 1 Bråkdelen således: (0.0010111)2 Binär kodning
Omvandla till hexadecimal form Exempel: Omvandla (122,18)10 till hexadecimal form. Bråkdelen avkortas vid behov till 2 korrekta bråksiffror. Heltalsdelen: Bråkdelen: Svar: (122,18)10 7A.2E Binär kodning
Alfanumeriska tecken → ASCII American Standard Code for Information Interchange Typiskt användningsområde: Tangentbord Binär kodning
7-bitars ASCII kodning Binär kodning
ASCII– Exempel Textsträngen ”Hej” representeras som: 1001000 1100101 1101010 ’H’ ’e’ ’j’ Textsträngen ”9756” representeras som: 0111001 0110111 0110101 0110110 ’9’ ’7’ ’5’ ’6’ Binär kodning
NBCD – Natural Binary Coded Decimal • 4 bitars kodord • Kodar decimala siffrorna 0-9 Binär kodning
NBCD – Exempel Decimala talet 9756 representeras som: 9756 = 1001011101010110 9 7 5 6 Decimala talet 563,782 representeras som: 010101100011 , 011110000010 5 6 3 , 7 8 2 Binär kodning
kvantiserad signal 110 3 101 2 100 uppmätt analog signal -2,5 -1,5 -0,5 0,5 1,5 2,5 010 - 011 001 -2 000 -3 Excess–n kod Används för att koda bipolära storheter, exempelvis att representera ett spänningsintervall -10 V < analog signal < 10 Volt Men också som exponent i IEEE-flyttal (beskrivs nedan...) Excess-3 Binär kodning
Gray kod Kodskiva – vanlig komponent i olika typer av vinkelgivare. Detektorer Ljuskällor I ”övergångarna”: Koder ändrar sig endast i en bit. Förhindrar tillfälliga felavläsningar. Binär kodning
Gray kod Gray-kod tillhör gruppen ”reflekterande koder” Binär kodning
Felupptäckande kod - Paritetsbitar • 000 0 • 001 1 • 010 1 • 011 0 • 100 1 • 101 0 • 0 • 1 Extra bit läggs till så att ordet alltid innehåller jämnt antal ettor (jämn paritet) Kontrollbit: 1 om udda antal ettor 0 annars p b b b 3 2 1 paritetsbits- generering paritets- c kontroll b 1 b 2 b 3 Exempel: Jämn paritetsmetod använd i samband med 3-bitars kod. Binär kodning
000 1 • 001 0 • 010 0 • 011 1 • 100 0 • 101 1 • 1 • 0 Extra bit läggs till så att ordet alltid innehåller udda antal ettor (udda paritet) Kontrollbit: 1 om jämnt antal ettor 0 annars p b b b 3 2 1 paritetsbits- generering paritets- c kontroll b 1 Exempel: Udda paritetsmetod använd i samband med 3-bitars kod. b 2 b 3 21 Binär kodning