De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

1 Hoofdstuk 6 Gegevensvoorstelling en berekeningen.

Verwante presentaties


Presentatie over: "1 Hoofdstuk 6 Gegevensvoorstelling en berekeningen."— Transcript van de presentatie:

1 1 Hoofdstuk 6 Gegevensvoorstelling en berekeningen

2 2 Inhoud Talstelsels Getallen in een Computer Natuurlijke getallen Gehele getallen Gebroken getallen  Vaste komma getallen  Bewegende komma getallen Andere gegevens (letters, …)

3 3 r-tallig talstelsel r = grondtal (= vast) Elk cijfer: gewicht in functie van de positie Zij c i  { 0, 1, …, r-1 } c n-1 r n-1 + c n-2 r n-2 + … + c 1 r 1 + c 0 r 0 Voorstelling = c n-1 c n-2 … c 1 c 0 gewicht

4 4 Voorbeelden Decimaal r = 10, c  {0, 1, …, 9} 1235 Binair r = 2, c  {0, 1} Octaalr = 8, c  {0, 1, …, 7} 2323 Hexadecimaal r = 16, c  {0,..., 9, A, …, F} 4D3 MO:  voorstellingen, zelfde getal!

5 5 Getallen in een Computer Eindig aantal cijfers:  Ligt vast  Soms # verschillende formaten (bijv. 16-bit en 32-bit getallen) Gevolgen:  Niet alle getallen kunnen voorgesteld worden  Eigenschappen uit getallenleer gelden soms niet  Gesloten t.o.v. +, -, ×  Associativiteit, distributiviteit gelden soms niet

6 6 Getallen in de Computer Bijv. stel 3 decimale cijfers (alleen pos.)  Alleen getallen uit {0, 1, …, 999 }  Niet gesloten t.o.v. som / vermenigvuldiging  1120 (= 4 cijfers! OVERLOOP)  Associativiteit? (800  300)  ( )  300  Distributiviteit? 005 × (300  200)  (005 × 300)  (005 × 200)

7 7 Natuurlijke getallen

8 8 Omzetting Binair  Decimaal Omzetting Binair  Octaal/Hexadecimaal BCD voorstelling Binair rekenen  optelling  aftrekking (zie ook gehele getallen)  vermenigvuldiging  deling

9 9 Omzetting Decimaal  Binair

10 10 Omzetting Binair  Decimaal ×

11 11 Omzetting van/naar Octaal/Hexadecimaal (oct.) E A (hex.)

12 12 Binary Coded Decimal (BCD) = decimale voorstelling, cijfers binair 4 bits per cijfer vb  Complexe rekenregels...

13 13 Aantal Cijfers n decimale cijfers b bits 10 n-1  x < 10 n en 2 b-1  x < 2 b dus 10 n  2 b bijgevolg b  log 2 10 n = n log 2 10 = 3,3 n n dec. cijfers  3,3 n bits  1,11 n oct.  0,83 n hex. bijv. 300 dec. cijfers  1000 bits

14 14 Optellen van binaire getallen OPT HOPT

15 15 Optelschakeling (parallel) OPTHOPTOPT X n -1 X n -2 X 2 X 1 X 0 Y n -1 Y n -2 Y 2 Y 1 Y 0 S n-1 S n -2 S 2 S 1 S 0 Overloop!

16 16 Verschilschakeling (parallel) AFTHAFTAFT X n -1 X n -2 X 2 X 1 X 0 Y n -1 Y n -2 Y 2 Y 1 Y 0 V n-1 V n -2 V 2 V 1 V 0 Fout!

17 17 Vermenigvuldigen 0 × 0 = 0 0 × 1 = 0 1 × 0 = 0 1 × 1 = (X) 27 × (Y)  (X  Y) X of 0!

18 18 Algoritme A n-1 A0A0...Q n-1 Q0Q0...X n-1 X0X0... T N bit opteller Q 0 = 1 = verschuif naar rechts T  0, A  00…0, Q  Y N keer: (a) Q 0 = 1: (T,A)  A + X (b) verschuif T, A, Q X  Y

19 19 Gehele Getallen

20 20 Gehele Binaire Getallen n bit-getallen 0000…000 t.e.m. 1111…111 n bits n bits Natuurlijke getallen: [0, 2 n  1] Gehele getallen: positieve  ½ stellen positieve getallen voor negatieve  ½ stellen negatieve getallen voor

21 21 Gehele Binaire Getallen Verschillende wijzen van opdelen:  Voorteken  1-complement  2-complement  Plus 2 n-1 notatie (verhoogde notatie)

22 22 Voorteken Bijv. n = (= +13) (=  13) (= +127) (=  127) (= +0) (=  0)

23 23 Voorteken Getallenbereik: [  2 n-1  1)...  1,  0, +0, +1, … +(2 n-1  1)] Symmetrisch bereik  0 =?= +0 Rekenregels Complex (+,  ) X = X n-1 X n-2 … X 1 X met X n-1 = tekenbit Gevraagd: Z := X + Y

24 24 Voorteken: Optelling { Z = X + Y } if ( X n-1 == Y n-1 ) /* X n-1, Y n-1 = tekenbit */ { Z n-1 = X n-1 ; Z n-2..0 = X n Y n-2..0 } else { if (X n-2..0 > Y n-2..0 ) { Z n-1 = X n-1 ; Z n-2..0 = X n-2..0  Y n-2..0 } else { Z n-1 = Y n-1 ; Z n-2..0 = Y n-2..0  X n-2..0 } }

25 25 2-Complement Positief: 1 e bit = 0, overige zie natuurlijke getallen Negatief: 2 n  | X |  1  2 n  1 = 111…111  2  2 n  2 = 111…110  2 n-1  2 n  2 n-1 = 2 n-1 = 100…000

26 26 2-Complement Bijv. n = (= +0) (= +1) … (= +13) … (= +127) (=  128) (=  127) … (=  115) … (=  1)

27 27 2-Complement Getallenbereik [  2 n-1,  (2 n-1  1)...  1, +0, +1, … +(2 n-1  1)] Asymmetrisch bereik! 0 heeft slechts 1 voorstelling Rekenregels eenvoudig! Omrekenformule: X = X n-1 (  2 n-1 ) + X n-2 2 n-2 + … + X 0

28 28 Bewerkingen met 2-complement Inverteren Som Verschil X  Y = X + (  Y) Product Aanpassing van woordlengte

29 29 Optelling OPTHOPTOPT X n X n -1 X 2 X 1 X 0 Y n Y n -1 Y 2 Y 1 Y 0 S n S n -1 S 2 S 1 S 0 OPT Overloop (indien 1) EOF

30 30 1-Complement Positief: 1 e bit = 0, overige zie natuurlijke getallen Negatief: 2 n  1  | X | Getallenbereik [  2 n-1  1)...  1,  0, +0, +1, … +(2 n-1  1)] Verouderd (niet meer gebruikt)

31 31 Plus 2 n-1 Notatie 000… … … …011 … 011… … … … … …011 … 111… …111  0  1  2  3  2 n  2 n  - 2 n-1  - 2 n  - 2 n  - 2 n  - 2  - 1

32 32 Plus 2 n-1 Getallenbereik [  2 n-1,  (2 n-1  1)...  1, +0, +1, … +(2 n-1  1)] Asymmetrisch bereik! 0 heeft slechts 1 voorstelling = 2-complement met omgekeerde tekenbit Voordeel: positief getal > negatief getal

33 33 Gebroken Getallen

34 34 Gebroken getallen Gewichten met negatieve exponent c -1 r -1 + c -2 r -2 + … + c -m r -m Voorstelling = c k … c 1 c 0. c -1 c -2 … c -m c k r k + … + c 1 r 1 + c 0 r 0 +

35 35 Gebroken Getallen Omzetting Decimaal  Binair Omzetting Binair  Decimaal Gebroken getallen in de computer  Vaste Komma Voorstelling  Bewegende Komma Voorstelling

36 36 Vaste komma voorstelling Komma op vaste plaats “verondersteld” Bijvoorbeeld : “.” na 5de bit  (13.75) “.” na 3de bit  (3.4375)

37 37 Vaste komma voorstelling n-bit voorstelling: 2 n mogelijke getallen per bit extra na “.”:  bereik gehalveerd  nauwkeurigheid verdubbeld... 0 bereik...

38 38 Vaste komma voorstelling Bewerkingen  Som/Verschil  “.” aligneren  Product/Quotiënt

39 39 Vaste komma voorstelling Alleen als bereik van getallen gekend Anders, snel overloop! Vandaar: bewegende komma voorstelling

40 40 Bewegende komma voorstelling

41 41 Bewegende komma voorstelling Het Principe Bewegende komma voorstelling Bewerkingen  Optelling  Vermenigvuldiging

42 42 Bewegende komma voorstelling Zeer kleine getallen  zeer grote getallen Gebaseerd op “wetenschappelijke” notatie X = ± m × 10 e m = mantisse (fractie) e = exponent Voorbeelden: 3.14 = 3.14 × 10 0 = × = 1.0 × = 0.1 × = × 10 3 = × 10 4

43 43 Reële getallen Negatieve overloop Positieve overloop Onderloop  0 Voorstelbare getallen Grote negatieve getallen < × 1099 Negatieve getallen tussen × 1099 en × Negatieve getallen tussen × 1099 en × Kleine negatieve getallen tussen × en 0 Kleine negatieve getallen tussen × en 0 Nul (0) Kleine positieve getallen tussen 0 en × Kleine positieve getallen tussen 0 en × Positieve getallen tussen × en × 1099 Positieve getallen tussen × en × 1099 Grote positieve getallen > × 1099

44 44 Reële getallen Negatieve overloop Positieve overloop Onderloop  0... Niet alle getallen! × × Voorstelbare getallen Relatieve afstand  constant

45 45 Bewegende komma voorstelling Algemeen b X = ± m b e ±m = mantisse b  b = basis (= vast) = 2  (2, 4, 8, 16, …) e = exponent Bewegende komma voorstelling: ( ±, m, e)

46 46 IEEE Voorstel Enkelvoudige nauwkeurigheid Dubbele nauwkeurigheid texp (8 bits)mantisse (23 bits) texp (11 bits) mantisse (52 bits) Basis = 2, notatie Basis = 2, notatie

47 47 Bewerkingen met BKV Niet rechtstreeks met voorstelling rekenen  Vooraf opsplitsen, na bewerking: samenvoegen Bewerkingen:  in SW  door Processor of Co-Processor Voorbeelden in decimaal talstelsel (DRAMA)  Som  Product  Verschil  Quotiënt

48 48 Alfanumerieke Informatie

49 49 Alfanumerieke Informatie Symbolen (letters, tekens, …) Voorstellen d.m.v. een code  n bit code  max. 2 n symbolen Gestandardiseerde codes:  ASCII  EBCDIC  UNICODE

50 50 ASCII American Standard Code for Information Interchange 7-bit code Speciale tekens, hoofdletters, kleine letters, leestekens, enkele wiskundige tekens Hex TekenHex Teken HexTeken A 61a B 62b...

51 51 EBCDIC Extended Binary Coded Decimal Interchange Code Op IBM-mainframes 8-bit code (veel lege plaatsen) Hoofdletters, kleine letters, leestekens, enkele wiskundige tekens Hex TekenHex TekenHexTeken F C0 --- F1181 aC1A F2282 bC2B...

52 52 UNICODE ASCII: ok voor Engels Latin-1: 8-bit uitbreiding voor vreemde letters (á, à, ä, é, …) IS 8859-x (code page: 256 letters voor taal) UNICODE (16 bit code)  consortium van computer firma’s  ondersteund door Java, Windows NT,...  max symbolen, ± helft reeds toegekend

53 53


Download ppt "1 Hoofdstuk 6 Gegevensvoorstelling en berekeningen."

Verwante presentaties


Ads door Google