Grundl ggande datavetenskap 4p
This presentation is the property of its rightful owner.
Sponsored Links
1 / 46

Grundläggande datavetenskap, 4p PowerPoint PPT Presentation


  • 126 Views
  • Uploaded on
  • Presentation posted in: General

Grundläggande datavetenskap, 4p. Kapitel 1-9 Sammanfattning. Utgående från boken Computer Science av: J. Glenn Brookshear. Datalagring Bitar, minnen, talsystem, två-komplement, grindar, lagrings-enheter, datakommunikation Datamanipulation Maskinspråk, datorarkitektur, programexekvering

Download Presentation

Grundläggande datavetenskap, 4p

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Grundl ggande datavetenskap 4p

Grundläggande datavetenskap, 4p

Kapitel 1-9

Sammanfattning

Utgående från boken

Computer Science

av: J. Glenn Brookshear

ITM


Inneh ll

Datalagring

Bitar, minnen, talsystem, två-komplement, grindar, lagrings-enheter, datakommunikation

Datamanipulation

Maskinspråk, datorarkitektur, programexekvering

Operativsystem

Processer, tidsdelning, multitasking, bootning, process-administration

Nätverk och Internet

Topologier, WWW, nätverks-protokoll, HTML, XML

Algoritmer

Iteration, rekursion, effektivitet

Programmeringsspråk

Procedurer, objektorientering, objekt, klasser, C++

Programvaruutveckling

Metoder, testning

Dataabstraktioner

Fält (arrayer), listor, köer, objekt, klasser, egendefinierade

Databaser

Relationsdatabaser, SQL, filstrukturer

Innehåll

ITM


Kap 1 datarepresentation

Kap. 1 - Datarepresentation

  • Talsystem

    • Decimala, Binära, Hexadecimala

  • Binär addition

  • Två-komplement

  • Grindar

ITM


Grundl ggande datavetenskap 4p

Kap1

Hexadecimalt

  • Hexa = 6, deci = 10

  • Multipel av fyra bitar

  • 00002 = 016=010

  • 11112 = F16=1510

  • 1010010011001000 = A4C8

ITM


Grundl ggande datavetenskap 4p

0 0 1 1 1 0 1 1

1 1 0 0 0 1 0 0

+1

1 1 0 0 0 1 0 1

Positiva talet

Ett-komplementet

Addera 1

Negativa svaret

Kap1

Två-komplement

  • Ex: Skriv -5910 med 8 bitar.

    5910 = 001110112

ITM


Grundl ggande datavetenskap 4p

0 1 1 1

+ 1 0 1 1

1 0 0 1 0

0 1 1 1

+ 1 0 0 1

1 0 0 0 0

0 1 0 1

+ 0 1 0 0

1 0 0 1

Ignorera

Overflow !!!

Ignorera

Kap1

Två-komplement forts.

  • Addition med två-komplement

    • Antalet bitar hålls konstant

    • Overflow kan ske

      7 + (-5) 7 + (-7)5 + 4

= 2

= 0

= -7

ITM


Grindar eller och exklusivt eller

Kap1

GrindarELLER, OCH, Exklusivt ELLER

A

>

A

=1

1

C

C

B

B

A

&

C

B

ITM


Kap 2 datalagring

Kap. 2 - Datalagring

  • Maskininstruktioner

    • Op-kod, operand

  • Logiska operationer

    • AND, OR, XOR, SHIFT, ROTATE

  • Datakommunikation

    • Datahastigheter

ITM


Grundl ggande datavetenskap 4p

Kap2

Maskininstruktioner

  • En maskininstruktion består av

    • Op-kod – generell del

    • Operand – specifik del

    • Ex: 0010 0111 0100 1111

      27 4 F (Hex)

      Op-kodOperand(SimpSim)

ITM


Grundl ggande datavetenskap 4p

Kap2

Maskininstruktioner forts.

  • Exempel på instruktioner

Översättning

ITM


Grundl ggande datavetenskap 4p

Kap2

Övning logiska operationer

  • Utför följande logiska operationer:

  • Vilken logisk operation har använts?

10101010

OR 11011000

10101010

XOR 10101010

10101010

AND11011000

10001000

11111010

00000000

01111010

? 10010000

11100110

? 10101010

01111010

?10010000

XOR

OR

AND

11101010

11111010

10100010

ITM


Datakommunikation

Kap2

Datakommunikation

  • Anta att en hårdisk rymmer 30 GB. Hur lång tid skulle det ta att fylla den med en överföringshastighet på 0.5 Mbps?

  • 30·109 · 8 / 0.5 ·106 = 480.000 sekunder

    = 5 dagar, 13 timmar och 20 minuter

ITM


Kap 3 operativsystem

Kap. 3 - Operativsystem

  • Tidsdelning – Multitasking

  • Processadministration

  • Deadlock

ITM


Grundl ggande datavetenskap 4p

Kap3

Utveckling av operativsystem

  • Tidsdelning (time-sharing)

    • Flera program och användare kan dela på samma processor.

    • Processerna får en liten tid var att exekvera innan nästa står på tur.

    • För användarna ser det ut som om dom var ensamma och dom kan interagera med sina processer.

  • Multitasking

    • Tidsdelning för enanvändarsystem

    • Flerprocessordatorer

ITM


Time sharing

Kap3

Time-sharing

  • Anta att en dator har tidsdelning med tidluckor med längd 40 ms och att det normalt tar 8 ms att positionera läshuvudet över rätt spår samt ytterligare 15 ms att rotera skivat till rätt läge för läsning.

    • A: Hur stor andel av en tidlucka måste datorn vänta på läsinstruktionen?

    • B: Om datorn kan utföra 10 instruktioner per s, hur många instruktioner skulle kunna utföras under denna tid?

    • A: (15+8) ms / 40 ms= 57.5 %

    • B: (15+8) ·10-3 s · 10·106 instruktioner/s = 230.000 instruktioner

ITM


Grundl ggande datavetenskap 4p

Kap3

Processadministration

  • Processtabell

    • Hanteras av schemaläggaren

    • Processens minnesarea

    • Prioritet

    • Redo eller Väntar

  • Tidlucka (time slice)

    • Hanteras av dispatchern

    • Är ca 50 millisekunder

  • Process switch / Context switch

  • Avbrott (Interrupt)

    • Signal till CPU:n att avsluta pågående processaktivitet

  • Avbrottshanterare

    • Program som hanterar vad som händer efter ett avbrott

ITM


Grundl ggande datavetenskap 4p

Kap3

Deadlock forts.

ITM


Kap 4 n tverk och internet

Kap 4 – Nätverk och Internet

  • Topologier

  • Bryggor och routrar

  • Client/Server – Peer-to-peer

  • Internetadressering

  • WWW

  • Internets kommunikationsnivåer

    • TCP/IP

ITM


Grundl ggande datavetenskap 4p

Kap4

Nätverkstopologier

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Bussnät

Ringnät

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Dator

Oregelbundet nät

Dator

Dator

Stjärnnät

ITM


Grundl ggande datavetenskap 4p

Kap4

Sammankoppling av nätverk

ITM


Grundl ggande datavetenskap 4p

Kap4

Client/Server - Peer-to-peer

ITM


Grundl ggande datavetenskap 4p

Kap4

Internetadressering

  • IP-adress

    • 212.112.162.203 (32 bitar)

  • Network identifier

    • Registrerad och unik domänidentifierare

    • 212.112.162

  • Host address

    • Adressen som identifierar en dator inom ett domän

    • 203

  • Domännamn: mh.se

  • Toppdomän: org, com, se, au, nu

  • DNS – Domain Name Server

    • 212.112.162.203 = www.aftonbladet.se

ITM


Grundl ggande datavetenskap 4p

Kap4

WWW

  • World Wide Web

  • Webb-läsare (browser)

  • Hypertext

    • Klickbara länkar

  • HTML - Hypertext Markup Language

  • HTTP – Hypertext Transfer Protocol

  • URL - Uniform Resource Locator

    • http://www.aftonbladet.se/sport/idag/sport.html

    • Protokoll - host - sökväg - dokumentnamn

    • ftp://ftp.cs.wisc.edu/connectivity_table/

    • En url är en fullständig sökväg till ett dokument

ITM


Grundl ggande datavetenskap 4p

Kap4

ITM


Kap 5 algoritmer

Kap 5 - Algoritmer

  • Definition

  • Pseudokod

    • If-satser, loopar

  • Testning

ITM


Grundl ggande datavetenskap 4p

Kap5

Definition av en algoritm

  • En algoritm är en ordnad uppsättning entydiga anvisningar som utförs stegvis och definierar en avslutande process.

    • Beskrivning av hur ett visst problem ska lösas

ITM


Grundl ggande datavetenskap 4p

Kap5

Pseudokod - exempel

if (skottår)// Indentering, indragning

then (dagligt värde  årligt värde delat med 366)

else(dagligt värde  årligt värde delat med 365)

if (inget regn)// Nästlade satser

then

(if (hett ute)

then (bada)

else (spela golf)

)

else (titta på tv)

ITM


Grundl ggande datavetenskap 4p

Kap5

Loop-kontroll

while (condition) do ( body)

check the condition

execute the body

check the condition… osv.

while(någon sover i hörsalen) do

( höj rösten)

repeat(activity) until (condition)

repeat(ät chips)

until(chipspåsen är tom)

ITM


Grundl ggande datavetenskap 4p

Kap5

Testning av programvara

  • Svårt att bevisa att programmet löser problemet på bästa sätt

    • Ex Kedjeproblemet

  • Oftast testkör man programmet.

    • Ej 100%-ig täckning

    • Man vet endast att programmet fungerar för de testfall man har kört

ITM


Kap 6 programmeringsspr k

Kap 6 - Programmeringsspråk

  • Maskinkod

  • Assembler

  • Högnivåspråk

    • C++

  • Programmeringsmönster

    • Imperativt: Traditionellt

      • Procedurer

    • Objektorienterat: Dagens trend

      • Klasser, Objekt

ITM


Grundl ggande datavetenskap 4p

Kap6

Imperativt programmeringsmönster

  • Sekvens av kommandon

  • Traditionella programmeringsmönstret

  • Används av CPU (fetch-decode-execute)

  • Man löser problem med algoritmer

ITM


Grundl ggande datavetenskap 4p

Kap6

Objektorienterat programmeringsmönster

  • Aktiva objekt

    • Objektet består av data

    • Objektet kan själva manipulera data

  • Moduler

  • Färdiga komponenter

  • Objekt kan kommunicera med varandra

  • Dagens trend

ITM


Grundl ggande datavetenskap 4p

Kap6

Klass

class Konto

{

private:

int kontoNr;

float saldo;

public:

void uttag(float ut);

void insattning(float in);

void visaSaldo(void);

};

  • Klassdefinition( C++ )

ITM


Grundl ggande datavetenskap 4p

Kap6

Kännetecken för OOP

  • Inkapsling

    • Endast objektet kommer åt en skyddad egenskap.

    • private, public

    • cout << konto1.saldo är INTE tillåtet.

    • konto1.visaSaldo() är tillåtet.

  • Arv

    • En klass kan ärva egenskaper från en annan klass.

    • Klassen Personbil kan ärva från t.ex Fordon.

  • Polymorfism

    • Samma meddelande (metod) ger olika svar från olika klasser.

    • Triangel.rita()

    • Kvadrat.rita()

ITM


Grundl ggande datavetenskap 4p

Kap6

C++

  • Vad skrivs ut i följande program?

int main() {

int i=1;

while (i == 1) {

--i;

}

cout << i;

return 0;

}

int main() {

int i=0;

do {

i++;

} while (i ==1)

cout << i;

return 0;

}

int main() {

int i=0;

while (i != 1) {

--i;

}

cout << i;

return 0;

}

1

0

2

ITM


Grundl ggande datavetenskap 4p

Kap6

C++

int main() {

int a, b, c;

a=1; b=2; c=3;

if (a==b)

if (a==1)

cout << “A”;

else

cout << “B”;

cout << “C”;

return 0;

}

int main() {

int a, b, c;

a=1; b=2; c=3;

if (a==b)

if (a==1)

cout << “A”;

else

cout << “B”;

cout << “C”;

return 0;

}

  • Vad skrivs ut i följande program?

AB

AC

BC

C

eller

ABC ?

C

ITM


Kap 7 programvaruutveckling

Kap 7 - Programvaruutveckling

  • Vattenfallsmetoden

  • De senaste trenderna

  • Modultänkande

ITM


Grundl ggande datavetenskap 4p

Kap7

De senaste trenderna

  • Vattenfallsmodellen

    • Analys ► Design ► Implementering ► Testning

  • Steg-för-steg-modellen

    • Prototypframtagning

    • Förfining av prototypen

  • CASE (computer-aided software engineering)

    • Projektplanering

    • Projekthantering

    • Dokumentation

    • Göra prototyper

    • Gränssnittsprogrammering

    • Kodgenerering

ITM


Grundl ggande datavetenskap 4p

Kap7

Moduler

  • Modultänkande

    • Objekt i OOP

    • Procedurer

  • Moduler kan utvecklas separat med ett överenskommet gränssnitt.

    • NASA tappade en Marssond på grund av missförstånd av gränssnittet

      • NASA använde det metriska systemet: meter

      • Lockheed Martin använde engelska mått: fot

ITM


Kap 8 dataabstraktioner

Kap 8 - Dataabstraktioner

  • Fält

  • Listor

  • Stack

  • Köer

  • Träd

ITM


Grundl ggande datavetenskap 4p

Kap8

Tvådimensionellt fält

  • Läs av temperaturen var tredje timme under en vecka

float avl[8][7]; // avl[Tid,Dag]

avl[2][3] = 13.0;

avl[5][6] = -1.7;

ITM


Grundl ggande datavetenskap 4p

Kap8

Länkad lista

  • Varje element har en pekare till nästa i listan

    • Fördelar:

      • enkelt att lägga till och radera data

      • enkelt att sortera data

    • Nackdel:

      • något krångligare teknik

ITM


Grundl ggande datavetenskap 4p

Kap8

Stack

  • Minne reserveras för en kontinuerlig lista (gulmarkerat)

  • Stacken kan bli full

  • StackPointer (SP) innehåller adressen till den senast inlagda posten

  • StackPointer flyttas när data ”poppas” och ”pushas”

ITM


Grundl ggande datavetenskap 4p

Kap8

  • FIFO = First In First Out

    • Tillägg görs vid svansen (bak)

    • Radering görs vid huvudet (fram)

    • HeadPointer (HP) pekar till början av kön

    • TailPointer (TP) pekar till slutet av kön

    • Om kön är tom pekar både HP och TP på samma element

ITM


Grundl ggande datavetenskap 4p

Kap8

Träd i en länkad lista

  • Ett binärträd implementerad med en länkad lista

ITM


Kap 9 databaser

Kap 9 - Databaser

  • Relationsdatabas

  • SQL

  • Objektorienterade databaser

  • Databasintegritet

  • Traditionella filstrukturer

ITM


  • Login