Számítógép-laboratórium III.
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Számítógép-laboratórium III.
Computers Laboratory III.
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIFO2235 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | félévközi érdemjegy | ||||||||||||
| Tantárgy kreditértéke | 3 | ||||||||||||
| Tantárgyfelelős |
DR. Szirmay-Kalos László
beosztás: egyetemi tanár
elérhetőség:
szirmay-kalos.laszlo@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
—
|
||||||||||||
| Kar | |||||||||||||
| Tantárgy weboldala | — | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzés
I. C++ nyelv származtatása a C-ből
- Makró (inline), konstans megvalósitás,
- tipusértékű struct, enum
- Megjegyzések
- Prototipusok, Default argumentumok és overload,
- memória allokáció, new, delete, new_handler
- Referencia tipus, függvény paraméterek és visszatérési érték
- cin, cout, cerr objektumok
- Adat deklaráció és definicó mint utasitás
- Adatok láthatóság és érvényessége
- Forditás, szerkesztés, debug BORLAND C++ IDE alatt
II.Objektumok létrehozása
- Objektum orientált programozás és funkcionális programozás
- Class fogalma, egységbe zárás, védelem és információ takarás
- tagfüggvények tipusai
- Védelem enyhitése, friend mechanizmus
- Construktor, Destruktor
- Adatok (objektumok) inicializálása
- this pointer használata
III. Operátor overload
- Operátor overload fogalma
- Dinamikusan allokált mezővel rendelkező objektumok értékadása és inicializásása, Copy constructor
- Op. Overload megvalósitása member függvénnyel és friend mechanizmussal
- Referencia tipussal visszatérő fv. mint balérték (index operátor)
IV. Öröklés
- Az öröklés szerepe az objektumorientált programozásban
- Öröklés, származtatott osztály, alaposztály
- Védelem öröklés alatt
- virtuális függvények, forditási és késői összerendelés,
- Inicializálás
- Többszörös öröklés
- Virtuális alap osztály
- Objektumok mint más objektumok attributumai
- Objektum tömbök
V. Generikus osztályok
- Generikus adatszerkezetek jelentősége
- Dinamikus adatstruktúrák, generikus osztályok
- Név konkatenáló macro
- Declare és implement macro
- Friend class fogalma és szerepe pl. a listaszerkezet kialakitásánál
- C++ könyvtárak felépitése
VI. MS-WINDOWS futtató környezet
- MS-WINDOWS felhasználói felület (ablak, menü, ikon, cursor)
- A program manager
- Alkalmazói programok felépitése (modul def. és erőforrás file )
- WndProc és WndMain függvények szerepe
- WNDCLASS struktúra, CreatWindow és UpdateWindow függvények
- Üzenetciklus működése
- Forditás, szerkesztés, futtatás
VII. MS-WINDOWS programozás API könyvtár felhasználásával
- Erőforrás file felépitése és használata, Menü séma definiálása
- menü, cursor, icon
- Windows események
- Windows hivások
VIII. Objektumszeméletű programozás MS-WINDOWS környezetben:
- Windows felépités és az OOP szemlélet kapcsolata
- Event hierarchia, Window, AppWindow.. MyWindow class hierarchia
- Virtuális Függvények mint átdefiniálható üzenet handler-ek
- Menu class
- Geometriát definiáló olsztályok, Point, RectAngle
- Appl, applikációs programot definiáló osztály
IX. i8086 assembly nyelv
- i8086 programozási modellje, szegmentált memóriakép
- utasitáskészlet, cimzési módok, regiszterek
- assembler
- konstansok, operandusok
- műveletek: PTR, SHORT, SEG, OFFSET,
- direktivák: SEGMENT, ENDS, PROC, ENDP, MACRO, ENDM, END, ASSUME
- deklarációk: adatok (DB, DW ...), cimek,
- feltételes forditás
- moduláris programozás (INLUDE, PUBLIC, EXTRN)
- forditás és szerkesztés
- makró-assembly nyelvű programok felépitése
- operációs rendszer hivások
- ROM BIOS hivások (klaviatúra-INT16h, képernyő-int10h)
- DOS hivások (program befejezése, klaviatúra, képernyő)
- Forditás és szerkesztés ( masm ), program belövés (afd, codeview)
X. Hardware közeli programozás
- Alfanumerikus képernyőmemória elérése, tipus felismerése (HERC, EGA...)
- Hangszóró kezelése
- Klaviatúra programmal ellenőrzött vizsgálata
- Nyomtató programmal ellenőrzött vizsgálata
XI. Hardware közeli programozás IT rutinokkal
- i8086 IT rendszere, IT tábla
- i8259 vázlatos ismertetése, EOI szerepe
- IT rutinok általános felépitése (mentés, visszaállitás, adatszegmens, it engedélyezés, EOI...)
- IT tábla kitöltés (it átvétel és felfűzés)
- SET_IT, SAVE_IT, RESTORE_IT macrók elkészitése
- óra IT átvétele (felfűzés)
XII. Illesztés magas szintű nyelvekhez
- C stack frame kialakitása (PASCAL-t csak megemliteni), ENTER/LEAVE
- Függvény paraméter és visszatérési érték átadása, lokális adatok
- Függvény név konvenciók
- Moduláris programozás PUBLIC, EXTRN
- Globális adatok szervezése (DGROUP)
- String kezelő 8086 utasitások áttekintése, REP előtag
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
Tanulástámogató anyagok
Online források
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Általános szabályok
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Nincs megadva.
Ajánlott tantárgyak
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.