Repræsentation af tal



Relaterede dokumenter
Repræsentation af tal

Repræsentation af tal

CPUer og maskinkode DM534. Rolf Fagerberg

(Positions) Talsystemer

dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet)

Det endelige tal fremkommer ved at opstille bogstavkombinationer, hvor følgende regler gælder:

Talsystemer I V X L C D M Hvad betyder halvanden??. Kan man også sige Halvtredie???

Det binære talsystem og lidt om, hvordan computeren virker

Boolesk Algebra og det binære talsystem - temahæfte informatik. Oprindelse.

ITS MP 013. Talsystemer V009. Elevens navn. IT Skolen Boulevarden 19A-C 7100 Vejle Tel.:

Bits, bit operationer, integers og floating point

Med TI-89 / TI-92 Plus kan du også sammenligne eller manipulere binære tal bit for bit.

Grundlæggende Matematik

Grundlæggende Matematik

En uægte brøk er en brøk der stadig kan forkortes ned til et blandet tal og som er større end Eksempel: Uægte brøk: 12

Symbolbehandlingskompetencen er central gennem arbejdet med hele kapitlet i elevernes arbejde med tal og regneregler.

Om at udregne enkeltstående hexadecimaler i tallet pi

Negative cifre n. I et positionssystem skriver man et tal på formen xn a + xn 1a

Elementær Matematik. Tal og Algebra

Grundlæggende køretidsanalyse af algoritmer

t a l e n t c a m p d k Matematik Intro Mads Friis, stud.scient 7. november 2015 Slide 1/25

dcomnet-nr. 6 Talrepræsentation Computere og Netværk (dcomnet)

På en digital indgang kan en computer kun se forskel på, om en kontakt er tændt eller slukket. Men til gengæld er den hurtig og god til at regne.

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004

Matematik. 1 Matematiske symboler. Hayati Balo,AAMS. August, 2014


FAGLIG REGNING Pharmakon, farmakonomuddannelsen september 2007

Regning. Mike Vandal Auerbach ( 7) 4x 2 y 2xy 5. 2x + 4 = 3. (x + 3)(2x 1) = 0. (a + b)(a b) a 2 + b 2 2ab.

t a l e n t c a m p d k Matematik Intro Mads Friis, stud.scient 27. oktober 2014 Slide 1/25

De 4 regnearter. (aritmetik) Navn: Klasse: Matematik Opgave Kompendium. Opgaver: 42 Ekstra: 5 Point:

Matematisk modellering og numeriske metoder. Lektion 15

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Specielle tegn. Specielle tegn. Specielle tegn...1 Indhold:...1 Teori og praksis...1 Koder...2 Brug af symboler...5

Omskrivningsregler. Frank Nasser. 10. december 2011

Boolsk algebra For IT studerende

Matematik opgave Projekt afkodning Zehra, Pernille og Remuss

Boolsk algebra For IT studerende

Tal og Regneoperationer

Noter til C# Programmering Selektion

Grundliggende regning og talforståelse

DM507 Algoritmer og datastrukturer

Fagårsplan 12/13 Fag: Matematik Klasse: 3.A Lærer:LBJ Fagområde/ emne At regne i hovedet

Matematisk modellering og numeriske metoder

DATALOGI 1E. Skriftlig eksamen mandag den 23. juni 2003

CITIZEN TM CX-85. Strimmelregner. Instruktionsmanual

Konstruktionen af de reelle tal gennem decimaltalsrepræsentation og Dedekind-snit

De rigtige reelle tal

Tal. Vi mener, vi kender og kan bruge følgende talmængder: N : de positive hele tal, Z : de hele tal, Q: de rationale tal.

Mattip om. Færdighedsregning på mellemtrinnet. Du skal øve: Kan ikke Kan næsten Kan. Addition (plusstykker) Subtraktion (minusstykker)

Figur 0.1: To kredsløb hvor en operationsforstærker bliver brugt som komparator. [1]

Forslag til løsning af Opgaver til afsnittet om de naturlige tal (side 80)

Grundlæggende regneteknik

Nogle grundlæggende begreber

Teoretiske Øvelsesopgaver:

Lektion 1 Grundliggende regning

Eksamen dcomnet 2012Q4. Årskortsnummer Navn

Grundlæggende matematik

Basal Matematik 2. Navn: Klasse: Matematik Opgave Kompendium. Opgaver: 67 Ekstra: 7 Mundtlig: 1 Point:

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer

Oprids over grundforløbet i matematik

Baggrundsnote om logiske operatorer

Det vigtigste ved læring af subtraktion er, at eleverne

Kapitel 2 Tal og variable


Matematik. Grundforløbet. Mike Auerbach (2) Q 1. y 2. y 1 (1) x 1 x 2

Noter til Perspektiver i Matematikken

Et udtryk på formena n kaldes en potens med grundtal a og eksponent n. Vi vil kun betragte potenser hvor grundtallet er positivt, altså a>0.

Hvad er matematik? C, i-bog ISBN

Andreas Nielsen Kalbyrisskolen 2009

HP 6S Videnskabelig kalkulator

Computerstøttet beregning

Den ideelle operationsforstærker.

TIN15. Rydning, sletning og nulstilling w. Displayindikatorer. Generelle oplysninger. Grundlæggende operationer. Display og rulning "!

Lidt om Bits & Bytes. Talsystemer

Et alfabet er en ordnet mængde af bogstaver og andre tegn

Forord 3 Strukturen i denne bog 6

1. Montering af papirrullen 2. Udskiftning af blækrullen Bemærk: 2. Udskiftning af batterier

Tip til 1. runde af Georg Mohr-Konkurrencen Kombinatorik

Iteration af et endomorft kryptosystem. Substitutions-permutations-net (SPN) og inversion. Eksklusiv disjunktion og dens egenskaber

Projekt 7.9 Euklids algoritme, primtal og primiske tal

Transkript:

Repræsentation af tal DM526 Rolf Fagerberg, 2009

Bitmønstre 01101011 0001100101011011... Bitmønstre skal fortolkes for at have en betydning: Tal (heltal, kommatal) Bogstaver Computerinstruktion (program) Pixels (billedfil) Amplitude (lydfil).

Bitmønstre 01101011 0001100101011011... Bitmønstre skal fortolkes for at have en betydning: Tal (heltal, kommatal) Bogstaver Computerinstruktion (program) Pixels (billedfil) Amplitude (lydfil). I dag: heltal og kommatal.

Talsystemer Tital-systemet: 4532 = 4 1000 + 5 100 + 3 10 + 2 1 = 4 10 3 + 5 10 2 + 3 10 1 + 2 10 0

Talsystemer Tital-systemet: 4532 = 4 1000 + 5 100 + 3 10 + 2 1 = 4 10 3 + 5 10 2 + 3 10 1 + 2 10 0 Grundtal: 10 Cifre: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (fordi 10 10 i = 10 i+1 )

Talsystemer Tital-systemet: 4532 = 4 1000 + 5 100 + 3 10 + 2 1 = 4 10 3 + 5 10 2 + 3 10 1 + 2 10 0 Grundtal: 10 Cifre: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (fordi 10 10 i = 10 i+1 ) Syvtal-systemet: 4532 7 = 4 7 3 + 5 7 2 + 3 7 1 + 2 7 0 = 4 343 + 5 49 + 3 7 + 2 1 = 1640

Talsystemer Tital-systemet: 4532 = 4 1000 + 5 100 + 3 10 + 2 1 = 4 10 3 + 5 10 2 + 3 10 1 + 2 10 0 Grundtal: 10 Cifre: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (fordi 10 10 i = 10 i+1 ) Syvtal-systemet: 4532 7 = 4 7 3 + 5 7 2 + 3 7 1 + 2 7 0 = 4 343 + 5 49 + 3 7 + 2 1 = 1640 Grundtal: 7 Cifre: 0, 1, 2, 3, 4, 5, 6 (fordi 7 7 i = 7 i+1 )

Total-systemet 1011 2 = 1 2 3 + 0 2 2 + 1 2 1 + 1 2 0 = 1 8 + 0 4 + 1 2 + 1 1 = 11 Grundtal: 2 Cifre: 0, 1 (fordi 2 2 i = 2 i+1 )

Total-systemet 1011 2 = 1 2 3 + 0 2 2 + 1 2 1 + 1 2 0 = 1 8 + 0 4 + 1 2 + 1 1 = 11 Grundtal: 2 Cifre: 0, 1 (fordi 2 2 i = 2 i+1 ) Relevante for computere fordi todelte valg er nemmest at repræsentere rent fysisk. Total-systemet kaldes også det binære talsystem.

Addition Addition fungerer ens i alle talsystemer, blot med grundtal udskiftet. Tital-systemet: 1 1 1 1 5432 +96781 = 102213

Addition Addition fungerer ens i alle talsystemer, blot med grundtal udskiftet. Tital-systemet: Total-systemet: 1 1 1 1 5432 +96781 = 102213 1 1 1 1110 +11100 = 101010

Addition Addition fungerer ens i alle talsystemer, blot med grundtal udskiftet. Tital-systemet: Total-systemet: 1 1 1 1 5432 +96781 = 102213 1 1 1 1110 +11100 = 101010 Subtraktion, multiplikation, division fungerer også ens (ikke med i bog).

Konvertering til binært talsystem Find cifrene fra højre til venstre i den binære representation af et positivt heltal N: X N Sålænge X > 0: (X, næste ciffer) (kvotient, rest) ved heltalsdivision X/2

Konvertering til binært talsystem Find cifrene fra højre til venstre i den binære representation af et positivt heltal N: X N Sålænge X > 0: (X, næste ciffer) (kvotient, rest) ved heltalsdivision X/2 Eksempel: N = 25: 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2 25 = 2 12 + 1

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2 25 = 2 12 + 1 = 2(2 6 + 0) + 1

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2 25 = 2 12 + 1 = 2(2 6 + 0) + 1 = 2(2(2 3 + 0) + 0) + 1

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2 25 = 2 12 + 1 = 2(2 6 + 0) + 1 = 2(2(2 3 + 0) + 0) + 1 = 2(2(2(2 1 + 1) + 0) + 0) + 1

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2 25 = 2 12 + 1 = 2(2 6 + 0) + 1 = 2(2(2 3 + 0) + 0) + 1 = 2(2(2(2 1 + 1) + 0) + 0) + 1 = 2(2(2(2(2 0 + 1) + 1) + 0) + 0) + 1

Hvorfor virker det? 25/2 = (12,1) 12/2 = (6,0) 6/2 = (3,0) 3/2 = (1,1) 1/2 = (0,1) 25 = 11001 2 25 = 2 12 + 1 = 2(2 6 + 0) + 1 = 2(2(2 3 + 0) + 0) + 1 = 2(2(2(2 1 + 1) + 0) + 0) + 1 = 2(2(2(2(2 0 + 1) + 1) + 0) + 0) + 1 Bemærk at sidste division altid er 1/2 = (0,1): Kvotienten bliver 1 på et tidspunkt, da man ikke ved en division kan komme fra heltal 2 til heltal 0.

Repræsentationer af heltal Talrepræsentationer bruger (næsten altid) et fast antal bits (så operationer kan implementeres effektivt). k bits = 2 k forskellige bitmønstre

Repræsentationer af heltal Talrepræsentationer bruger (næsten altid) et fast antal bits (så operationer kan implementeres effektivt). k bits = 2 k forskellige bitmønstre Positive heltal: det binære talsystem giver en naturlig repræsentation. k = 4 : 0111 7 0110 6 0101 5 0100 4 0011 3 0010 2 0001 1 0000 0 1111 15 1110 14 1101 13 1100 12 1011 11 1010 10 1001 9 1000 8

Negative heltal Forskellige forslag: A Første bit = fortegn, ellers binært talsystem B Excess C Two s complement

Negative heltal Forskellige forslag: A Første bit = fortegn, ellers binært talsystem B Excess C Two s complement A B C 0111-7 -1 7 0110-6 -2 6 0101-5 -3 5 0100-4 -4 4 0011-3 -5 3 0010-2 -6 2 0001-1 -7 1 0000-0 -8 0 A B C 1111 7 7-1 1110 6 6-2 1101 5 5-3 1100 4 4-4 1011 3 3-5 1010 2 2-6 1001 1 1-7 1000 0 0-8

Twos complement Repræsentationen two s complement har mange gode egenskaber: Fortegn kan ses af første bit. Simpel metode til at skifte fortegn findes. Den almindelige metode til addition virker også for negative tal (evt. ekstra mente til sidst skal blot smides væk). Ingen ekstra logiske kredsløb for disse (sparer transistorer på CPU). Subtraktion kan laves ved at vende fortegn og addere. Ingen logiske kredsløb for subtraktion (sparer transistorer på CPU). Uden bevis i bog. Prøv selv på eksempler.

Twos complement Repræsentationen two s complement har mange gode egenskaber: Fortegn kan ses af første bit. Simpel metode til at skifte fortegn findes. Den almindelige metode til addition virker også for negative tal (evt. ekstra mente til sidst skal blot smides væk). Ingen ekstra logiske kredsløb for disse (sparer transistorer på CPU). Subtraktion kan laves ved at vende fortegn og addere. Ingen logiske kredsløb for subtraktion (sparer transistorer på CPU). Uden bevis i bog. Prøv selv på eksempler. Skifte fortegn: Kopier bits fra højre til venstre til og med første 1-bit. Resten af bits inverteres. Eksempel: 6 = 0110 1010 = -6

Kommatal Fast komma: Tital-systemet: 45.32 = 4 10 + 5 1 + 3 1/10 + 2 1/100 = 4 10 1 + 5 10 0 + 3 10 1 + 2 10 2

Kommatal Fast komma: Tital-systemet: 45.32 = 4 10 + 5 1 + 3 1/10 + 2 1/100 = 4 10 1 + 5 10 0 + 3 10 1 + 2 10 2 Det binære talsystem: 10110.111 = 1 2 4 + 0 2 3 + 1 2 2 + 1 2 1 + 0 2 0 + 1 2 1 + 1 2 2 + 1 2 3 = 1 16 + 0 8 + 1 4 + 1 2 + 0 1 + 1 1/2 + 1 1/4 + 1 1/8 = 22 7 8 = 22.875

Flydende komma Flydende komma (alias videnskabelig notation): Tital-systemet: 0.00000456 = ( 1) 4.56 10 6 Mantisse: 4.56 Eksponent: 6

Flydende komma Flydende komma (alias videnskabelig notation): Tital-systemet: Binært: 0.00000456 = ( 1) 4.56 10 6 Mantisse: 4.56 Eksponent: 6 0.01101 = ( 1) 1.101 2 2 Sign bit: 1 (sign bit 1 for negativt tal) Mantisse bits: (1)1010 (første bit underforstået) Eksponent: 010 (-2 i excess notation (3 bits)) Der afsættes et fast antal bits til hver af de tre dele.

Begrænsninger Heltal (N, Z) og reelle tal (R) er uendelige talmængder. Hvis der afsættes et fast antal (k) bits fås et endeligt antal (2 k ) forskellige bitmønstre.

Begrænsninger Heltal (N, Z) og reelle tal (R) er uendelige talmængder. Hvis der afsættes et fast antal (k) bits fås et endeligt antal (2 k ) forskellige bitmønstre. Ikke alle tal kan repræsenteres!

Begrænsninger Heltal (N, Z) og reelle tal (R) er uendelige talmængder. Hvis der afsættes et fast antal (k) bits fås et endeligt antal (2 k ) forskellige bitmønstre. Viser sig f.eks. ved Overflow maxint + maxint =? Truncation errors Ikke alle tal kan repræsenteres! Stort tal + epsilon = stort tal. (a + b) + c a + (b + c) hvis a + b ikke kan repræsenteres exakt, mens b + c godt kan.

Begrænsninger Heltal (N, Z) og reelle tal (R) er uendelige talmængder. Hvis der afsættes et fast antal (k) bits fås et endeligt antal (2 k ) forskellige bitmønstre. Viser sig f.eks. ved Overflow maxint + maxint =? Truncation errors Ikke alle tal kan repræsenteres! Stort tal + epsilon = stort tal. (a + b) + c a + (b + c) hvis a + b ikke kan repræsenteres exakt, mens b + c godt kan. I praksis ses det sjældent pga. et stort antal bits i talrepræsentationerne. Alternativt findes programmeringsbiblioteker der implementerer f.eks. vilkårligt store heltal (under brug af variabelt antal bits, samt tab af effektivitet).

Hexadecimal notation Gruppér bits i grupper af 4 (dvs. 16 forskellige muligheder): 0110 1010 1110 01...

Hexadecimal notation Gruppér bits i grupper af 4 (dvs. 16 forskellige muligheder): 0110 1010 1110 01... Vælg 16 tegn: 0111 7 0110 6 0101 5 0100 4 0011 3 0010 2 0001 1 0000 0 1111 F 1110 E 1101 D 1100 C 1011 B 1010 A 1001 9 1000 8

Hexadecimal notation Gruppér bits i grupper af 4 (dvs. 16 forskellige muligheder): 0110 1010 1110 01... Vælg 16 tegn: 0111 7 0110 6 0101 5 0100 4 0011 3 0010 2 0001 1 0000 0 1111 F 1110 E 1101 D 1100 C 1011 B 1010 A 1001 9 1000 8 0110 1010 111001... = 6AE...

Hexadecimal notation Gruppér bits i grupper af 4 (dvs. 16 forskellige muligheder): 0110 1010 1110 01... Vælg 16 tegn: 0111 7 0110 6 0101 5 0100 4 0011 3 0010 2 0001 1 0000 0 1111 F 1110 E 1101 D 1100 C 1011 B 1010 A 1001 9 1000 8 0110 1010 111001... = 6AE... NB: kan også bruges som cifre i et talsystem med grundtal 16.