Du kan söka hjälp efter innehåll eller efter namn

Relevanta dokument
Du kan söka hjälp efter innehåll eller efter namn

Du kan söka hjälp efter innehåll eller efter namn

Introduktion till MATLAB

Beräkningsverktyg HT07

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

Introduktion till Matlab

Matematisk Modellering

At=A' % ' transponerar en matris, dvs. kastar om rader och kolonner U' % Radvektorn U ger en kolonnvektor

Matlabövning 1 Funktioner och grafer i Matlab

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 2 november 2015 Sida 1 / 23

Datorövning 1: Introduktion till MATLAB

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

Beräkningsvetenskap och Matlab. Vad är MATLAB? Vad är MATLAB? Användningsområden. Vad är MATLAB? Grunderna i Matlab. Beräkningsvetenskap == Matlab?

Laboration: Grunderna i Matlab

Matlabövning 1 Funktioner och grafer i Matlab

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

Introduktion till Matlab

MATLAB övningar, del1 Inledande Matematik

Introduktion till Matlab

15 februari 2016 Sida 1 / 32

Introduktion till Matlab

TSBB14 Laboration: Intro till Matlab 1D

TANA17 Matematiska beräkningar med Matlab

MATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.

Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

TAIU07 Matematiska beräkningar med Matlab

Variabler och konstanter

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28

Introduktion till Matlab

Beräkningsvetenskap föreläsning 2

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

Matriser. Vektorer. Forts. Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Introduktion till Matlab

Grunderna i MATLAB. Beräkningsvetenskap och Matlab

Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Introduktion till Matlab

MATLAB. Vad är MATLAB? En kalkylator för linlär algebra. Ett programspråk liknande t.ex Java. Ett grafiskt verktyg.

Innehåll. Vad är MATLAB? Vad är MATLAB? Informationsteknologi. Grunderna i MATLAB. Informationsteknologi. Informationsteknologi. Vad är MATLAB?

Laboration: Grunderna i MATLAB

Laborationstillfälle 1 Lite mer om Matlab och matematik

Kort om programmering i Matlab

Introduktion till MATLAB

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

Introduktion & MATLABrepetition. (Kap. 1 2 i MATLAB Programming for Engineers, S. Chapman)

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 26 november 2015 Sida 1 / 28

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Introduktion till Matlab

(a) Skriv en matlabsekvens som genererar en liknande figur som den ovan.

Matriser. Vektorer. Grunderna i MATLAB 2. Informationsteknologi. Informationsteknologi.

Funktioner och grafritning i Matlab

Grafik och Egna funktioner i Matlab

% Föreläsning 3 10/2. clear hold off. % Vi börjar med att titta på kommandot A\Y som löser AX=Y

Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration

M0043M Integralkalkyl och Linjär Algebra, H14, Matlab, Föreläsning 1

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

Introduktion till Matlab

Grafritning och Matriser

4 Numerisk integration och av differentialekvationer

Matlabföreläsningen. Lite mer och lite mindre!

Introduktion till Matlab

4.3. Programmering i MATLAB

MMA132: Laboration 1 Introduktion till MATLAB

TAIU07 Matematiska beräkningar med Matlab

Linjär algebra med tillämpningar, lab 1

Grundläggande kommandon

MATLAB - en kompakt introduktion av Tore Gustafsson

MMA132: Laboration 1 & 2 Introduktion till MATLAB

MMA132: Laboration 2 Matriser i MATLAB

Mer om funktioner och grafik i Matlab

Introduktion till Matlab Föreläsning 2

Vad är MATLAB? Användningsområden. Var kan man köra MATLAB? MATLAB-miljön: avsluta. MATLAB-miljön: Start. Informationsteknologi. Grunderna i MATLAB

Funktioner och grafritning i Matlab

Mer om funktioner och grafik i Matlab

Laboration: Vektorer och matriser

2 Matrisfaktorisering och lösning till ekvationssystem

Introduktion till Matlab

TANA17 Matematiska beräkningar med Matlab

TEKNISKA HÖGSKOLAN Matematik Fredrik Abrahamsson. Introduktion till MATLAB

Lab 1, Funktioner, funktionsfiler och grafer.

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

MATLAB. Introduktion. Syfte. Tips. Oktober 2009

Mathematica. Utdata är Mathematicas svar på dina kommandon. Här ser vi svaret på kommandot från. , x

TANA17 Matematiska beräkningar med Matlab

% Föreläsning 4 22/2. clear hold off. % Vi repeterar en liten del av förra föreläsningen:

Textsträngar från/till skärm eller fil

Sanningar om programmering

Kort om programmering i Matlab

Introduktion till MATLAB, med utgångspunkt från Ada

Datatyper i MATLAB Tal

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter

NUMPROG, 2D1212, vt Föreläsning 1, Numme-delen. Linjära ekvationssystem Interpolation, Minstakvadratmetoden

1.1 MATLABs kommandon för matriser

En introduktion till MatLab

Numeriska Metoder och Grundläggande Programmering för P1, VT2014

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan

MATLAB Matrix laboratory

Matriser och linjära ekvationssystem

Välj Links i startmenyn och dubbelklicka på Matematik-mappen. Dubbelklicka därefter på MATLAB 5 - ikonen.

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 18:e augusti klockan

Transkript:

Du kan söka hjälp efter innehåll eller efter namn

Skalärer x = y = 1.34 pi, inf (observera decimalpunkt.) Vektorer v = [1,, 3, 4] radvektor u = v' = [1 ; ; 3 ; 4] kolonnvektor Matriser A = [ 1,, 3 ; 4, 5, 6 ; 7, 8, 9] 1 3 blir matrisen : 4 5 6 7 8 9 B(:, :, 1) = A; B(:, :, ) = A; B(:, :, 3) = A; blir tillsammans det tredimensionella fältet : 1 4 7 5 8 3 1 6 94 7 5 8 3 1 6 94 7 5 8 3 6 9 A(1 : 3, : 3) blir matrisen : 5 8 3 6 9 Funktioner för generering av fält: t e x: ones, eye, diag, zeros diag(ones(1, 7)) blir enhetsmatrisen av ordning 7 eye(7) blir enhetsmatrisen av ordning 7 Strängar: text = 'Jan' mer_text = ' Södersten' namn = [text, mer_text] namn(1:6) (observera blanktecken före S.) blir 'Jan Södersten' blir 'Jan Sö'

Operatorer och operander skall skrivas i överensstämmelse med reglerna för matris/vektoroperationer. Aritmetiska operatorer: +, -, *, /, \, ^ Elementvisa operatorer:.* och./ och.^ Om t ex A är en kvadratisk matris betyder A\B 1 A B Med X = [ 1,, 3 ] och Y = [, 3, 4 ] blir X.*Y = [, 6, 1 ] Relationsoperatorer: < <= > >= = = ~= Logiska operatorer: & ~ ( and, or, not ) Konstanter: Standardfunktioner: Uttryck: Tilldelning: 1 pi inf ans eps i sin(a), exp(a), log(x), plot(x,y) A + B\C - sin( A*B) svar = uttryck där högerledet först beräknas och sedan tilldelas variabeln i vänsterledet. who clear load save för.mat filer I Desktop finns en ruta Workspace: där Du ser Dina variabler. Via huvudmenyn: "File" kan Du lagra och hämta variabler. Via Workspacemenyn: "Delete" kan Du radera variabler.

Spara data på fil / Ladda data från fil Några kommandon Binära.mat-filer: MATLAB-boken kapitel.4 save( minfil ) Lagrar alla variabler i binära filen minfil.mat. save( minfil, x, y ) Lagrar variablerna x och y i minfil.mat. load( minfil ) load( minfil, z ) Laddar in alla variabler från binära filen minfil.mat. Laddar in variabeln z från minfil.mat. whos -file minfil.mat Vilka variabler finns på filen minfil.mat ASCII-filer, textfiler: save('resultat.dat','a','x','-ascii') Lagrar variablerna A:s och x:s värden i textfilen resultat.dat i ascii- format. load( resultat.dat ) Laddar i talen i textfilen resultat.dat till en variabel, som får namnet resultat. Om Ditt program skall läsa in data från en textfil, som innehåller text blandat med numeriska data måste Du skriva kommandon som specificerar formatet på varje sak Du läser in från filen. Före inläsning på detta sätt måste filen öppnas. Läs i Help om save och load fopen och fclose fprintf och textread Du kan använda Import Wizard för interaktiv inmatning av blandade data från fil. Import Wizard låter Dig välja fil, och tolkar sedan innehållet i filen. Du får sedan välja vad som skall importeras från filen. Studera Help, där Du kan se hur Import Wizard skall användas.

Kommentarer: % Text Spara på fil vad Du gjort i kommandofönstret: Diary Diary filnamn Diary on, Diary off Du skriver ut innehållet i kommandofönstret genom att klicka på kommandofönstret och välj File/Print i huvudmenyn. In- och utmatning: Läs i Help x = input( 'Text' ) Disp( x ) format long format short format compact

.m FILER Finns i två varianter: och: Script-filer (Kommandofiler) Funktions - filer Se i Help: Contents / MATLAB / Getting Started / Programming / Scripts and Functions Hittar MATLAB Dina.m filer? path addpath( ) t ex addpath(a:) Set Path via huvudmenyn: File / Set Path

Funktionsfiler Är.m -filer och inleds med function till skillnad från script-filer. ex. : Funktionsfilen: C:\funk.m function y = funk(x) global a y = x.^ - 5*x +3*a; funktionens argument: x global a gör det möjligt att ta med ett värde på a till funktionen om a inte skall vara argument. Där filen anropas skall a också vara globaldeklarerad. Anropa funktionen med filens namn, utan ".m". Ex.: y = funk(3.65) x = fzero( @funk, x0 ) för beräkning av nollställe.

I funktionsanropet fzero( @funk, x0 ) är @ ett "funktionshandtag", Function Handle. Fler ex.: Man kan även skriva: 'funk' istället för @funk (Så skriver man i MATLAB 5 och tidigare versioner.) function [a, b] = jan( x, y, z ) är en funktion med tre argument, och som ger a och b som svar. Om function y = emil( funk, x0 ) har en funktion funk som argument: function y = emil( funk, x0 )... y = funk( x0 ) emil.m Och så här anropar man emil för g(z) : emil( @g, z ) (Anm.: Om man skriver emil('g', z) måste y = funk( x0 ) bytas ut mot y = feval( funk, x0 ) i emil.m: feval beräknar funk för argumentet x0.) Läs om feval i Help.

Anonymous Function Om Du vill skapa en funktion funk utan att lägga den i en egen fil: funk = @( x ) x.^ - 5*x + 3 Argumentet Funktionsuttrycket I filen används då funk utan @. g=@(x,a,b,c) a*x.^+b*x+c En funktion i fyra variabler h=@(x) g(x,,3,4) En funktion, i en variabel, som är ett anrop av g med a=, b=3, c=4. I funktionsfiler får Du skriva "underfunktioner", men inte i scriptfiler. En underfunktion skrivs som den skulle skrivas i en egen fil och läggs sist i funktionsfilen. En underfunktion och en anonym funktion kan endast anropas i den fil där den står.

Några exempel på repetitioner: for i = [1,, 3] satsgrupp end for variabel = repetitionslista satsgrupp end for i = 1 : -0.5 : -4.4 satsgrupp end for i = 1 : 10 satsgrupp for j = 1 : 10 satsgrupp end end i = 1; while i <= 10 satsgrupp i = i+1 end Arbeta helst med vektorer om det går: Följande är ekvivalent: while villkor satsgrupp end Indentera för läsbarhetens skull!! Observera att villkoret måste kunna beräknas när repetitionen börjar. Satsgruppen utförs så länge villkoret är sant. Risk för "idiotloop". v = [ ]; for i = 1 : 10 v = [v, i]; end; v = [1 : 10];

Exempel på selektion: if villkor satsgrupp end if villkor satsgrupp else satsgrupp end if villkor satsgrupp elseif villkor satsgrupp else satsgrupp end Om elseif skrivs som ett ord, räcker det med ett end. Annars ett end per if. p = menu('titel', 'val1', 'val','val3') ger en "inmatningsruta" Klickar Du på: översta knappen (första) blir p = 1 mellanknappen (andra) blir p = nedre knappen (tredje) blir p = 3

switch Ett alternativ till if - satsen när man har ett uppräkneligt antal fall är switch - satsen: I ex. får x värdet 10, om val = 1 värdet 100, om val = 3, 5 eller 7 värdet 1000, om val =10 tom 15 värdet 0 annars. switch val Testa värdet på val case 1 x=10 case {3,5,7} x=100 case numcell(10:15) x=1000 otherwise x=0 Flera fall skrivs i en "cellvektor" vektorn [ 10 : 15] omvandlad till cellvektorn {10,11,1,13,14,15} end

Några kommandon för att bryta exekverings ordningen: Man bör skriva kommandon och satser i en rak följd och undvika att bryta exekveringsordningen. Skriv gärna m-filer (script- eller funktionsfiler), som sedan anropas i en naturlig följd. Lägg gärna in kommentarer för läsbarhetens skull. % break pause return avbryter en repetition. gör ett uppehåll. lämnar en.m-fil, och exekvering fortsätter där filen anropades. <ctrl><c> exekveringsavbrott om Du trycker på dessa tangenter samtidigt.

- dimensionell GRAFIK Rita linjer och punkter: plot( ) För fler grafer i samma bild: För grafen i ny bild: Rutnät i bilden: Rubrik på grafen: Markering av axlar: hold, hold on hold off grid on/off title( 'Rubriken') xlabel('x-axel') ylabel('y-axel') Text till bilden: text(x, y, 'Text') gtext('text') Hämta koordinater ur bilden: p = ginput( ) Zoomning: zoom on/out Dela upp grafikfönstret i småbilder: subplot(,, ) Se även menyn ovanför bilden.

Vill Du redigera Din bild? >> fplot(@(x)sin(x),[0,1]) >> plottools >> shg

Manipulera Dina delar i grafikfönstret

Om raderna 10, 3 och 8 kommenteras bort i filen, som Du ser delar av, blir bilden så här: ( vanlig ) Klickar Du på: View / Property Editor / More Properties ser Du ett redskap att manipulera delarna i bilden manuellt. Då ser Du också förklaring till kommandona i raderna 10, 3 och 8. Här är den tjocka kurvan markerad med musen, och då visas kurvans egenskaper i Inspector. Egenskaperna kan ändras i Inspector.

plot3(x, y, z) linjer i 3-dim [X, Y] = meshgrid(x, y) gitter för konstr. av nivåkurvor och ytor. contour(x, Y, Z) mesh(x, Y, Z) meshc(x, Y, Z) surf(x, Y, Z) Waterfall(X, Y, Z) hidden on/off rotate3d on/off nivåkurvor nätyta nätyta med nivåkurvor yta yta med punkter bundna i en riktning döljer/visar skymda linjer möjlighet att rotera bilden med musen Se bildens meny: View / Camera Toolbar för att variera sättet att betrakta bilden. print -filformat filnamn lagra bilden

Linjära ekvationssystem Betrakta problemet att lösa det linjära ekvationssystemet: Ax = y Ett kvadratiskt system, y: vektor eller matris. det(a) inv(a) eye(5) rank(a) A(:4,5:8) plockar en submatris ur A. Gausseliminering: Ax = y Rx = z i MATLAB: x = A\y se även lu(a) och rref(a) Ett överbestämt system: A rektangulär matris. x =A\y i MATLAB ger det x som minimerar Ax y, "minstakvadratmetoden" norm(x) norm(a) norm(x, ) tic toc Tidtagning för uppskattning av beräkningsvolymen

Ett polynom av grad n : p(x) = a x n 1 Polynomhantering + a x n 1 +... + a n x+ a n+ 1 kan definieras med en vektor: p = a,a,...,a 1 n+1 av dimensionen (n+1). MATLAB's polyval(p, x) beräknar p(x): en skalär om x är en skalär en vektor om x är en vektor. MATLAB's roots(p) beräknar nollställena till polynomet. MATLAB's a = polyfit(x, y, n) beräknar det polynom p(x) av grad n som bäst approximerar punktmängden { } m x,y i i i = 1 i minsta kvadratmetodens mening, där a, x, y är vektorer, med: p(x) = a x n 1 + a x n 1 +... + a n x+ a n+ 1

Numerisk integrering: Sök det numeriska värdet av b f(x)dx a ex.: trapz(x,y) quad(@fkn, a, b) quadl(@fkn, a, b) Numerisk lösning av ordinära differentialekvationer: Beräkna y(b) om y = f(x,y) y(a) = c ex.: ode45(@der, [a b], c) (Blanktecken mellan a och b) Läs om ode, quad och trapz i Help och i kapitel 1 i MATLABboken.

Ett exempel på lösning av ett linjärt ekvationssystem: Lös ekvationssystemet: Ax = B, där 1 3 A = 3 0 och 0 5 1 1 B =. 0 Vi använder MATLAB operatorn \, och undviker att beräkna matrisens invers. Scriptfilen: A:\Foerelaesning1\linalgex.m %linjär algebra %1x+y+3z=1 %3x+ z= % 5y- z=0 clear all A=[1 3;3 0 ;0 5-1] B=[1;;0] lsg=a\b; Fortsättningstecken x=lsg(1) y=lsg() z=lsg(3) disp('med dessa insatta på vänstersidan... får vi högerledet=') disp([1*x+*y+3*z;3*x+*z;5*y-z])

Ett exempel på integralberäkningar Beräkna numeriskt: b cos( x) ( sin( x) ) dx 1+ x a för olika val av integrationsgränserna. Vi använder MATLAB's: quadl och trapz Scriptfilen: A:\Foerelaesning1\intex.m % integralexempel clear all clf disp( 'Integralen av funktionen: sin(x)-cos(x)/(1+x^)' ); a=input( 'Ange undre gräns: ' ); b=input( 'Ange övre gräns: ' ); int=quadl( @fkn, a, b ); disp( [ 'Integralvärdet blir: ', numstr(int) ] ); x=linspace( a, b, 11 ); y=fkn(x); int=trapz( x, y ) disp( [ 'Med trapets får vi: ', numstr(int) ] ); fplot( @fkn, [ a, b ] ); hold on plot( x, y, 'r' ); plot( x, y, 'ko' ); grid; xlabel( 'x-axel' ); ylabel( 'y-axel' ); title( 'Integralexempel' ); quadl har som första argument namnet på funktionsfilen fkn.m. (Förväxla inte filnamn!!!) Funktionsfilen: function y= fkn(x) %Här beräknas funktionsvärdena y=*sin(x)-cos(x)./(1+x.^); A:\Foerelaesning1\fkn.m

>> Integralen av funktionen: sin(x)-cos(x)/(1+x^) Ange undre gräns: 1 Ange övre gräns: 10 Integralvärdet blir:.8674 int =.6319 Med trapets får vi:.6319 >>

Ett exempel på kurvanpassning och tvådimensionell grafik: Anpassa polynom av graderna 1, 3 och 5 till 6 givna punkter. Rita in punkter och polynom i samma grafikfönster. Vi använder MATLAB's: polyfit polyval plot hold on legend title, xlabel, ylabel, grid för att bestämma polynomen för att beräkna polynomens värden för att rita polynom och punkter för att få allt i samma bild för att få en förklarande text Scriptfilen: A:\Foerelaesning1\polyex.m %Exempel på polynomhantering: clear all clf xpunkter=[1,,3,4,5,6]; ypunkter=[0,3,1,5,8,4]; koeff6=polyfit(xpunkter,ypunkter,5); koeff4=polyfit(xpunkter,ypunkter,3); koeff=polyfit(xpunkter,ypunkter,1); xfin=0.5:0.1:7; y6=polyval(koeff6,xfin); y4=polyval(koeff4,xfin); y=polyval(koeff,xfin); Fin indelning för snygga kurvor. plot(xpunkter,ypunkter,'k*'); hold on; plot(xfin,y6,'r'); plot(xfin,y4); plot(xfin,y,'g'); grid xlabel('x-axel'); ylabel('y-axel'); title('polynomexempel'); legend, där rubrikerna skall komma i den ordning kurvorna ritats i filen. legend('punkterna','5-gradaren','3-egradaren','räta',... ' linjen'); roetter_till_5egradaren=roots(koeff6)

>> roetter_till_5egradaren = 6.5369 + 0.450i 6.5369-0.450i.8315 + 0.4691i.8315-0.4691i 1.0000 >>

Ett exempel på 3-dimensionell grafik: Dra grafer över funktionen: sin(x) + cos(y), 0 x,y π Vi använder 4 MATLAB funktioner: mesh, contour, waterfall, surf väljer en av dem med hjälp av menu delar upp grafikfönstret i fyra delar med subplot Scriptfilen: A:\Foerelaesning1\grafex.m %3D-grafexempel clear all disp('graf över sin(x)+cos(y)på int 0<=x,y<=Pi'); val=menu('välj typ av graf', 'mesh','contour','waterfall','surf'); xled=0:0.5:*pi; yled=xled; [X,Y]=meshgrid(xled,yled); A=sin(X)+cos(Y); if val==1 subplot(,,1); mesh(x,y,a); elseif val== subplot(,,); contour(x,y,a); elseif val==3 subplot(,,3); waterfall(x,y,a); else subplot(,,4); surf(x,y,a); colorbar; shading interp end shg hold on Här sker ett val per anrop av filen. Eftersom filen avslutas med hold on, fylls samma grafikfönster på vid ett nytt anrop. shg visar grafik-fönstret på bild-skärmen.

Ett exempel på lösning av en ordinär differentialekvation: sin(5x) y = 1+ x, y(0) = 1 : y(3) =? Vi använder MATLAB'S: Scriptfilen: ode45 A:\Foerelaesning1\diffex.m %Exempel på ordinära diffekvationer clear all clf [x,y]=ode45(@der,[0,3],1); plot(x,y); hold on; grid; xlabel('x-axel'); ylabel('y-axel'); title('ode-ex'); ode45 har som första argument namnet på funktionsfilen der.m. (Förväxla inte filnamn!!) Funktionsfilen: A:\Foerelaesning1\der.m function yprim = der(x,y) yprim = sin(5*x)./(1+x);

Talrepresentation I basen 10: ( ) 10 ( ) 10 = ( d d.d d ) n 0 1 10 ± betyder n 1 0 1 ± d 10 + d 10 + d 10 + d 10 + n 1 0 1 decimalsystemet. Exempel: 13.7 = 1 10 + 10 1 + 3 10 0 + 10 1 + 7 10 I basen : ( ) ( ± betyder ( ) = d d.d d ) n 0 1 binära systemet. Exempel: ± d 1 0 1 + d + d + d + n n 1 0 1 1011.01 = 1 3 + 0 + 1 1 + 1 0 + 0 1 + 1

Exempel på lagring av tal Lagring av heltal binärt med en ordlängd på 3 bitar: ± Talets binära representation 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 är representationen av talet: 0 1 3 4 5 6 0 + 1 + 1 + 0 + 0 + 1 + 1 = 10 i decimalsystemet Icke-heltal representeras binärt som "flytande tal" på formen: e a där a kallas mantissa, och skall ha 1 som heltalsdel och e kallas exponent. Lagring av talet i "enkel precision" i ett ord med 3 bitar. ± ett skiftat e mantissans bråkdel 0 0 0 1 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 är representation av talet: 80 1.11001100110011001100110*, som i decimalsystemet = (1+ 1/+ 1/4+ 0/8+ 0/16+ 1/3+ 1/64+ 0/18 +...) 80 1.4863 10 4 MATLAB räknar standardmässigt i dubbel precision.