Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Informatika / programování

Podobné prezentace


Prezentace na téma: "Informatika / programování"— Transkript prezentace:

1 Informatika / programování
Od nápadu k programu (*.exe) KIT.PEF.CZU

2 v životě

3 v životě problém

4 v životě problém nápad

5 v životě problém nápad postup

6 v životě problém nápad postup realizace

7 v životě problém nápad postup realizace nezdar ?

8 v životě problém nápad postup realizace nezdar ?

9 v informatice problém nápad algoritmus realizace nezdar ?

10 v informatice problém nápad algoritmus program nezdar ?

11 v informatice problém nápad algoritmus program nezdar ?

12 něco musíte sami problém nápad

13 ( když máte rozmyšleno )
a pak s počítačem problém nápad algoritmus ( když máte rozmyšleno )

14 spustíte editor problém nápad algoritmus EDITOR

15 vytvoříte zdrojovou formu ve zvoleném programovacím jazyku
napíšete program problém nápad algoritmus prg.src EDITOR vytvoříte zdrojovou formu ve zvoleném programovacím jazyku

16 spustíte překladač problém nápad algoritmus prg.src EDITOR COMPILER

17 vznikne meziforma *.obj
problém nápad prg.obj algoritmus prg.src EDITOR COMPILER lidsky čitelná zdrojová forma programu je převedena do binárního tvaru, blízkého strojovému kódu počítače

18 a vedlejší produkty problém nápad prg.obj algoritmus prg.src EDITOR COMPILER prg.err prg.lst prg.xrf kromě protokolu o chybách může překladač poskytnout např. tabulku křížových odkazů (místa použití jednotlivých proměnných)

19 spustíte linker problém nápad prg.obj algoritmus prg.src EDITOR COMPILER LINKER sys.lib prg.err prg.lib prg.lst prg.xrf při linkování dochází mj. k připojení knihovních podprogramů

20 vznikne relokativní (přemístitelná) forma
problém nápad prg.obj prg.rel algoritmus prg.src EDITOR COMPILER LINKER sys.lib prg.err prg.lib prg.lst prg.xrf

21 a různé doplňky problém nápad prg.obj prg.rel algoritmus prg.src EDITOR COMPILER LINKER sys.lib prg.err prg.err prg.lib prg.lst prg.xrf prg.map i při sestavování programu vznikají užitečné vedlejší produkty

22 potom lokátorem problém nápad prg.obj prg.rel algoritmus prg.src
EDITOR COMPILER LINKER LOCATER prg.err prg.err prg.lst prg.xrf prg.map

23 vytvoříte verzi absolutní
problém nápad prg.obj prg.rel prg.abs algoritmus prg.src EDITOR COMPILER LINKER LOCATER prg.err prg.err prg.lst prg.xrf prg.map „absolutní“ verze programu bude správně fungovat jen tehdy, pokud bude umístěna do předpokládaného místa v paměti a tam spuštěna

24 toto je použitelné jen pro specielní případy
problém nápad prg.obj prg.rel prg.abs algoritmus prg.src EDITOR COMPILER LINKER LOCATER Na absolutní adrese musí běžet např. BIOS nebo jádro operačního systému. Ostatní aplikace se spouštějí s relativní adresou (tzn. je jedno kam se do paměti nahraje). prg.err prg.err prg.err prg.lst prg.xrf prg.map prg.map …tak to bylo kdysi, ale je to tak i dnes, např. u BIOSu

25 ale může to být i jinak problém nápad prg.obj prg.rel prg.abs
algoritmus prg.src EDITOR COMPILER LINKER prg.err prg.lst prg.xrf

26 směrem k *.exe problém nápad prg.obj algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib prg.err prg.exe prg.lst prg.xrf při linkování dochází mj. k přípravě vazeb mezi programem a systémem (např. připojení podprogramů pro volání služeb)

27 ( *.EXE je relokativní, umístění v paměti není stanoveno )
vznik *.exe problém nápad prg.obj algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib prg.err prg.err prg.exe prg.lst prg.xrf prg.map ( *.EXE je relokativní, umístění v paměti není stanoveno )

28 Zajímavost *.exe je LTL problém nápad prg.obj algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib prg.err prg.err prg.exe prg.lst prg.xrf prg.map Jednou ze služeb operačního systému je, že umí pracovat s LTL (Load Time Locatable) moduly. SYSTÉM

29 spuštění *.exe problém nápad prg.obj algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib Takto vypadá spuštění aplikace. TASK = úloha. prg.err prg.err prg.exe TASK prg.lst prg.xrf prg.map Při spouštění úlohy (TASKu) proběhne lokátování, tj. přepočty vázané na polohu kódu v paměti. SYSTÉM

30 ladění programu bug … štěnice, veš, skrytá chyba problém nápad prg.obj
algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib prg.err prg.err prg.exe prg.lst prg.xrf prg.map DEBUGGER

31 integrované vývojové prostředí
IDE - Integrated Development Environment problém nápad prg.obj algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib IDE prg.err prg.err prg.exe prg.lst prg.xrf prg.map MAKER DEBUGGER

32 a spouští dílčí procesy
IDE běží jako TASK a spouští dílčí procesy problém nápad prg.obj algoritmus prg.src prg.lib EDITOR COMPILER LINKER sys.lib IDE prg.err prg.err prg.exe prg.lst prg.xrf prg.map MAKER DEBUGGER SYSTÉM

33 celé schema IDE problém nápad prg.obj prg.rel prg.abs algoritmus
prg.src EDITOR COMPILER LINKER LOCATER IDE prg.err prg.err prg.exe TASK prg.lst prg.xrf prg.map MAKER DEBUGGER SYSTÉM

34 velké programy problém nápad prg.obj algoritmus prg.src prg.lib EDITOR
COMPILER LINKER sys.lib prg.err prg.err prg.exe prg.lst prg.xrf prg.map DEBUGGER SYSTÉM

35 formát *.EXE souboru hlavička obsahuje informace o místech, kde je nutno provést po natažení do paměti přepočet a opravu kódu je zde mj. i údaj o tom, kolik paměti má být programu přiděleno a kde leží start programu (tj. adresa první instrukce)

36 ? problém dotazy ….


Stáhnout ppt "Informatika / programování"

Podobné prezentace


Reklamy Google