Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

Relevanta dokument
Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Mattias Wiggberg Collaboration

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar

Struktur: Elektroteknik A. Digitalteknik 3p, vt 01. F1: Introduktion. Motivation och målsättning för kurserna i digital elektronik

Datastrukturer. Erik Forslin. Rum 1445, plan 4 på Nada

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

Objektorienterad Programmering (TDDC77)

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

TDIU01 - Programmering i C++, grundkurs

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

Data och Information. Dr. Johan Hagelbäck.

Moment 2 - Digital elektronik. Föreläsning 1 Binära tal och logiska grindar

Data, typ, selektion, iteration

Programmering A. Johan Eliasson

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander

SMD 134 Objektorienterad programmering

Enkla datatyper minne

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

Klassdeklaration. Metoddeklaration. Parameteröverföring

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

Objektorienterad Programmering (TDDC77)

Övning2. Variabler. Data typer

Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Programmeringsteknik I

Classes och Interfaces, Objects och References, Initialization

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

DIGITALA TAL OCH BOOLESK ALGEBRA

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

F2 Datarepresentation talbaser, dataformat och teckenkodning EDAA05 Datorer i system! Roger Henriksson!

Visual Basic, en snabbgenomgång

Föreläsning i webbdesign. Bilder och färger. Rune Körnefors. Medieteknik Rune Körnefors rune.kornefors@lnu.se

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

F2 Datarepresentation talbaser, dataformat och teckenkodning

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Exempel på ett litet Ada-program

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Arrayer (fält)

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer

GRUNDER I VHDL. Innehåll. Komponentmodell Kodmodell Entity Architecture Identifierare och objekt Operationer för jämförelse

Föreläsning 2 - Intro till Java

F2 Binära tal EDA070 Datorer och datoranvändning

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)

Abstrakt datatyp. -Algoritmer och Datastrukturer- För utveckling av verksamhet, produkter och livskvalitet.

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk

Föreläsning 2 sept 05 (Onsdag v 36). DD Chapter 2.

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??

Föreläsning 1 & 2 INTRODUKTION

Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Strukturdiagram. Styra. Algoritmer. Val

Programmering för språkteknologer II, HT2011. Rum

C++ - En introduktion

Programmering för språkteknologer I, VT2012. Rum

E02 "The Review" Föreläsning 2, HT2013 Grunderna, repetition. Johan Leitet. Kurs: 1dv403 Webbteknik I

Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014

Introduktion till formella metoder Programmeringsmetodik 1. Inledning

Chapter 3: Using Classes and Objects

Föreläsning 11. Arrayer. Arrayer. Arrayer. Lagrar flera värden av samma typ Kan vara primitiva typer eller objekt. Kan ha en array av t.

Tentamen Grundläggande programmering

Språket Python - Del 1 Grundkurs i programmering med Python

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer

TDIU01 - Programmering i C++, grundkurs

Anteckningar 1: Grundläggande saker

Föreläsning 8: Aritmetik och stora heltal

1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler

Digital Aritmetik Unsigned Integers Signed Integers"

Pascal... Pascal. Pascal... Pascal...

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Dataabstraktion. TDDD73 Funktionell och impterativ programmering i Python Föreläsning 12. Peter Dalenius Institutionen för datavetenskap

Typkonvertering. Java versus C

Föreläsning 3: Booleans, if, switch

Pascal. reserverade ord fördefinierade funktioner och procedurer egendefinierade funktioner, procedurer och objekt

Föreläsning 2 Datastrukturer (DAT037)

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

IE1205 Digital Design: F6 : Digital aritmetik 2

Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?

Föreläsning 3. Iteration while-satsen

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Att skriva till och läsa från terminalfönstret

String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning

Parameteröverföring. Exempel. Exempel. Metodkropp

Dataabstraktion. TDDD73 Funktionell och imperativ programmering i Python Föreläsning 12. Peter Dalenius Institutionen för datavetenskap

F4. programmeringsteknik och Matlab

Styrteknik: Binära tal, talsystem och koder D3:1

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

TDDC77 Objektorienterad Programmering

Objektorienterad programmering Föreläsning 4

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }

Föreläsning 2 Datastrukturer (DAT037)

En kort text om programmering i C.

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Introduktion till programmering och Python Grundkurs i programmering med Python

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Transkript:

Analog Digitalitet Kontinuerlig Direkt proportionerlig mot källan Ex. sprittermometer Elektrisk signal som representerar ljud Diskret Digital Representation som siffror/symboler Ex. CD-skiva Varje siffra motsvarar spänningen i den analoga signalen vid en viss tidpunkt Representation Analog signal => Digital signal Sampling = provtagning Samplingsfrekvens (rate) t.ex. 44kHz som är bassamplingsfrekvensen

Fördelar - Okänslig för störning - Kan förstärkas över stora avstånd - Lätt att lagra information - Lätt att tillverka utrustning Nackdelar - Världen är i stort sett analog Hur hantera nackdelen? Följ tre steg 1) Konvertera den analoga signalen till digital form (ADC) 2) Processa den digitala!informationen 3) Konvertera tillbaka till analog form! (DAC) Digitalisering Ljud: analog => digital Sträng/tecken A => 65, a => 97 Hej! digitaliseras till 72,101,106,33 (enligt ASCII-systemet) Digitalitet Bild består av pixlar (pixel = picture element), en svartvit bild kan representeras som 0 för vit och 1 för svart. Antal pixlar ger upplösning vilket påverkar kvalitet. Färgbild ser lite annorlunda ut, den består av RGB (röd/grön/blå) I värden från 0 till 255. Binära tal Datorn lagrar inte tal i decimal form utan i binär form. Decimala tal har basen 10, binära basen 2. En anledning till att använda binära tal framför decimaltal är att det endast finns två värden vilket gör det generiskt och mindre störkänsligt.

Binära tal Information på lägsta nivå är representerat av 1 eller 0. Detta kallas bit (binary digit). Om man använder två bitar ger detta 4 möjliga kombinationer. Binärat tal Generellt används n bitar så får vi 2 n unika kombinationer. 8 bitar bildar en byte. Om man använder tre bitar ger detta 8 kombinationer. Binära tal För att uttyda ett binärt tal kan följande uppställning användas: 2 3 2 2 2 1 2 0 Placering 1 0 0 1 Binärt tal 1* 2 3 + 0* 2 2 + 0* 2 1 + 1* 2 0 = = 8 + 0 + 0 + 1 = 9 Decimalt tal Hur används binära tal En dators centrala del är CPU (Central Processing Unit) CPU är en Integrated Circuit (integrerad krets eller IC-krets) IC består i sin tur av grindar (gates) De grundläggande grindar som finns är 1) AND 2) OR 3) NOT Dessa avser logiska ställningstaganden

AND OR NOT XOR Exclusive OR Hexadecimala tal Minne beskrivs oftast i hexkod. 0-9, A - F = 0 15 = 0000-1111 En minnescell kan vara t.ex. FFFF,vilket blir 1111 1111 1111 1111 i binär form. Unicode Utökat från 128 tecken (ASCII American Standard Code for Information Interchange) till 65 536 tecken. Syftet var att bli internationellt gångbar standard. Programmets element Datatyper Enkla datatyper (kallas också primitiva) Oftast inbyggda i språket Heltal, Reella tal, Logiska värden, Tecken Enkla då de ej har delar (jmf. sammansatta)

Heltal Benänms ofta int eller integer Överensstämmer inte helt med matematiska definitionen av heltal int i Java är 32 bitar (2 32 = 4 byte) och tar då värden från ~-2*10 9-2*10 9 Reella tal Benämns ofta real eller float Inte heller exakt matematiskt float i Java 32 bitar = 4 byte och tar värden från ~-3.4*10 38-3.4*10 38 med 7 signifikanta siffror Trunkeras 3.141592654 = 3.141592 Om man vill ha fler signifikanta siffror används double Boolska värden (boolean) Tecken Sanningsvärden true eller false Benämns ofta character eller char Tar ett tecken (av 65 536 möjliga) Datatyp En datatyp bestäms också av de operationer som kan utföras på dem. Exempelvis hör till heltal de grundläggande aritmetiska operationerna (+, -, *, /) och relationer (<, >, =,!) Ett uttryck; (7 + (3 * N)) < 19 beskriver inte ett heltal utan ett boolskt värde. Till sanningsvärden hör också relationerna AND, OR och NOT. Tillämpning Tilldelningsoperatorn = används för att tilldela en variabel ett värde En variabel kan t.ex. vara av typen int Man kan inte skriva int = 5 Namnge variabeln ex. age, ange typen int och tilldela ett värde: int age = 5

Sammansatta datatyper Består av objekt som är eller kan delas upp i enkla datatyper. Ex. fält (array) av strängar String[] eller heltal int[ ] Exempel på dessa är; lista, stack, kö, fält, träd, graf Sammansatta datatyper Definierad uppsättning operationer Beskrivs implementerat i ett gränssnitt (interface) En generell beskrivning av en sammansatt datatyp, oberoende av om och hur den är implementerad, brukar benämnas abstrakt datatyp. Vissa finns implementerade i språk, ex. array och vektor (fält) i Java. Sekvens Kontrollmekanismer Två eller fler operationer utförs i bestämd följd efter varandra (normal implicit) Skiljetecken i Java är ; och { (satsparenteser) Ex:!!! { int age = 5; int price = 10; Val eller villkor Vanligast med; if(villkor){ statement; else{ other statement; Även switch Upprepning Styrd av numeriskt värde eller av ett villkor. Ex: for(start; villkor; uppräkning){ Iteration statements; while(condition){ statements;

Procedur I Java benämnt metod, i C funktion Procedurer En väl definierad uppgift, t.ex. en algoritm. Ex: public void printlist(int[ ] alist){ for(i=0; i<alist.size(); i++){ System.out.println(aList[i]); Anropas printlist(lista); Procedur Kan beskrivas som bestående av ett huvud och en kropp. Huvud public void printlist(int[ ] alist) Kropp är det som står mellan satsparenteserna, i detta fall en loop.