1 / 24

Databehandling

Databehandling. Ett datorprogram består i huvudsak av En beskrivning av de data som skall behandlas i programmet En algoritm där vi med hjälp av programsatser beskriver hur data skall matas in, bearbetas och beräknas samt matas ut. indata. bearbetning. utdata. Uppstart av program.

Download Presentation

Databehandling

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Databehandling Ett datorprogram består i huvudsak av En beskrivning av de data som skall behandlas i programmet En algoritm där vi med hjälp av programsatser beskriver hur data skall matas in, bearbetas och beräknas samt matas ut indata bearbetning utdata

  2. Uppstart av program Primärminne (RAM) Sekundärminne Programinstruktioner Program X (maskinkod) Operativsystemet ”ladda X” ”starta X” Processor (CPU) ”starta X” Styrenhet

  3. Datorns språk • Bits och bytes • Binärkod – Maskinkod • Maskininstruktion • operationskod + operanddel • Instruktionscykel • Hämtning av instruktion • Avkodning • Aritmetisk och logisk bearbetning • Spara resultatet • Assembler

  4. Maskinkod • Varje dator har ett ”maskinspråk” • Maskinspråket är ”binärt” (ettor & nollor) • Maskinspråket har ett begränsat antal möjliga instruktioner (grundläggande aritmetik, repetitioner, mm) • Maskinspråket är hårt knutet till processortypen (därför kan ett program inte flyttas till vilken dator som helst) 01001001101011100100110011001100110101001100011010101001010100101

  5. Datorns språk Utenhet 101010101 101010101 Processor Primärminne 101010101 101010101 Inenhet

  6. En bit om bitar • En bit (binary digit) • Är den minsta dataenheten • Kan ha två värden (noll eller ett) • Kan representera numeriska tal, alfanumeriska tecken eller datorinstruktioner

  7. Fler bitar • Varje bit kan användas för att lagra lite information: • Svaret på en ja/nej-fråga • En signal för att slå på eller av något • Flera bitar tillsammans kan grupperas för att lagra mer information: • 8 bitar (en byte) kan kombineras på 256 olika sätt, dvs kan betyda 256 olika saker!

  8. Binära tal Decimalt Binärt 0010 0010 = 34 1000 0010 = 130 Byte = 8 bitar = 28 Kombinationer dvs 256 st KByte = 210 Byte = 1024 Byte MByte = 220 Byte = 1048576 Byte ASCII

  9. Bitar som tecken • ASCII - American Standard Code for Information Interchange • Mest spridda teckenuppsättningen, representerar varje tecken som en unik 7-bitars kod. (Den “åttonde” biten användes ibland som en slags “kontrollbit”)

  10. Bitar som instruktioner • Datorn lagrar programmen som en samling av bitar. • Exempelvis skulle 01101010 kunna vara instruktionen för att addera ihop två tal • En annan instruktion kan vara att hitta var i primärminnet ett tal är lagrat…

  11. Datorn Hur instruerar man en dator? Förutsättning: Datorns processor begriper bara maskinspråksinstruktioner. Lösning: Källkoden måste översättas till maskinkod, vilket kan ske på olika sätt.

  12. Programexekvering Primärminne (RAM) Programinstruktioner Programdata 2 1 Hämta instruktion Hämta data Lagra data Processor (CPU) Styrenhet Aritmetisk-/logisk enhet 2 3 Exekvera Avkoda Instruktionsregister Dataregister 4

  13. Assembler • För många processorer finns ett särskilt assembler-språk • Assembler innehåller i princip ett ”kommando” för varje instruktion processorn kan utföra. • Översättaren från assembler till maskinkod kallas assemblator mov( start, eax ); breakif( eax > stop ); yield(); inc( start );

  14. Högnivåspråk • Den tredje generationens språk är ”processoroberoende”, dvs att språket inte är direkt styrt utav vilka instruktioner processorn kan hantera • Om ett program skrivet i ett högnivåspråk kan köras på en viss dator är beroende av om det finns en kompilator eller interpretator för språket till den datorns processor. • Högnivåspråken är mer likt det talade språket, eller åtminstone mer lättförståeligt… IF b > c THEN ADD b TO a END IF

  15. laddning exekvering Kompilering Kompilator källkod översättning Andra objekt-moduler Objekt-modul System-bibliotek Länkare länkning Laddmodul (körbart program) indata utdata

  16. Interpretering Interpretator källkod översättning internkod interpretering indata utdata

  17. Klass-bibliotek System-bibliotek laddning översättning Den virtuella maskinen Kompilator källkod översättning Virtuell maskin bytekod indata exekvering utdata

  18. Statisk länkning = + objektkod objektkod systemfunktion programmet systemfunktion

  19. Dynamisk länkning = + objektkod objektkod systemfunktion programmet systemfunktion anropas först vid exekvering

  20. 1.9 Kategorier av högnivåspråk • Imperativa språk • Deklarativa språk • Funktionella språk • Rationella (logiska) språk • Objektorienterade språk

  21. Språkgenerationer Naturliga språk 4GL Objektorienterade språk Högnivåspråk Assembler Maskinkod 1950 1960 1970 1980 1990 2000 2010 FORTRAN RPG PROLOG VB VB ALGOL APL MODULA-2 VB.NET COBOL LOGO MODULA-3 LISP FORTH OBERON PILOT PASCAL EIFFEL BASIC C C++ JAVA C# ADA PL/1 SMALLTALK SIMULA

  22. 1.10 Programflöde och användarinteraktion • Sekventiella program • Batch-system • Multiprogramming  interaktivitet • Grafiska användargränssnitt (GUI – Graphical User Interface) • Kontrollobjekt • Händelsestyrda program - händelsehanterare

  23. 1.12 Att göra ett program i C# // C# using System; class Hello { public static void Main() { Console.WriteLine(“Hello World”); } }

  24. Kompilera och exekvera

More Related