Upload
lamquynh
View
292
Download
9
Embed Size (px)
Citation preview
1
Hyrje në shkencën kompjuterike 1
Hyrje në shkencën kompjuterike
Kapitulli IIMenaxhimi i të dhënave (gjenerata 2014/2015)
FSHMN, Departamenti i Matematikës
Hyrje në shkencën kompjuterike 2
2.1. Arkitektura e kompjuterit
� Në kap. I mësuam si ruhen shënimet, këtu do të mësojmë si manipulohet me to.
� CPU (Central Processing Unit) – njësia kryesore për kontrollim dhe manipulim me të dhëna.
� I vendosur në pllakën amë (motherboard).
� Minimizimi drastik i madhësisë, procesorët e sotëm të madhësisë 5x5 cm.
� Mikroprocesorët – CPU në pajisje mobile të madhësisë sa gjysma e pullës postare
2
Hyrje në shkencën kompjuterike 3
Arkitektura e kompjuterit, CPU
CPU përbëhet nga tre pjesë (njësi) :� Njësia aritmetike logjike (arithmetic/logic unit) – që kryen operacionet në shënime (mbledhja dhe zbritja)
� Njesia e kontrollit (control unit) – që kujdeset për koordinimin e aktiviteteve në kompjuter
� Njësia e regjistrave (register unit) – që përbëhet prej qelizave memorike (regjistra) dhe shfrytëzohet si memorie e përkohshme përbrenda CPU-së
Hyrje në shkencën kompjuterike 4
Arkitektura e kompjuterit, CPU
3
Hyrje në shkencën kompjuterike 5
Arkitektura e kompjuterit, CPU
Dallojmë dy lloj të regjistrave
� Për qëllim të përgjithshëm – kryesisht këtu ruhet rezultate që i kryen ALU
� Për qëllime speciale
� Magjistralja (Bus) – Urë lidhëse ndërmjet CPU-së dhe memories kryesore
Hyrje në shkencën kompjuterike 6
Arkitektura e kompjuterit, CPU – Mbledhja e dy vlerave
Hapi 1 Merr njërën nga vlerat që do të mblidhet nga memoria dhe vendose ne regjistër
Hapi 2 Merr vlerën tjetër nga memoria dhe vendose në një regjistër tjetër
Hapi 3 Aktivizo mbledhjen me regjistrat nga hapi 1 dhe 2 si hyrje dhe vendos në regjistrin e ri si rezultat
Hapi 4 Vendos rezultatet në memorie
Hapi 5 Ndalo
4
Hyrje në shkencën kompjuterike 7
Arkitektura e kompjuterit, koncepti i programeve
� Programet të lidhura drejtpërdrejt nga procesori
� Ideja e vendosjes së programit në memorien kryesore të kompjuterit është e njohur si koncepti programeve -memorike (stored program)
Hyrje në shkencën kompjuterike 8
2.2 Gjuha e makinës
� Për të zbatuar konceptin e programeve të memorizuara, CPU është dizajnuar për ti njohur instruksionet si shabllonë të bitëve.
� Kjo veti e procesorëve quhet gjuhë e makinës, kurse hapat e veçant njihen si instruksione të makinës
5
Hyrje në shkencën kompjuterike 9
Gjuha e makinës
Ekzistojnë dy filozofi për arkitekturën e CPU-ve
� RISC (reduced instruction set computer) – CPU të ketë nr. minimal të instruksioneve të makinës
� CISC (complex ISC) – me nr. të madh të instruksioneve komplekse të makinës
Hyrje në shkencën kompjuterike 10
Gjuha e makinës
� Shembulli CISC procesorëve – Intel CPU për PC.
� Shemb. RISC procesorëve – PowerPC CPU (Apple, IBM dhe Motorola) për Apple Macintosh.
� Rënia e çmimit të CISC CPU ka bërë që të pushtohet tregu nga ta
� CISC CPU kërkojnë energji elektrike më shumë prandaj
� ARM (Advanced RISC Machine) ka modifikuar këtë arkitekturë për të shfrytëzuar më pak energji (shfr. në lojëra, TV, celularë..)
6
Hyrje në shkencën kompjuterike 11
Gjuha e makinës
Varësisht nga zgjedhja RISC apo CISC dallojmë tre grupe të instruks. të makinës :
� Transfer shënimeve – për lëvizjen (kopjim dhe klonim) e shënimeve (hapat 1,2 dhe 4 nga tabela), LOAD (1,2) dhe STORE (4) instruksioni, I/O instruksionet
� Artmetike/logjike – instr. për aktivitete nga CU përbrenda ALU-së (hapi 3), këtu kryhen operacionet AND, OR dhe XOR si dhe SHIFT dhe ROTATE
� Kontrolluese – zakonisht për ekzekutimin e programeve (hapi 5), instruksioni JUMP
Hyrje në shkencën kompjuterike 12
Gjuha e makinës - Ilustrimi
7
Hyrje në shkencën kompjuterike 13
Gjuha e makinës - Ilustrimi
Versioni i koduar i instruksionit të makinës përbëhet prej dy fushave
� Fushës së kodit (Op-code)
� Fushës operatorit
Hyrje në shkencën kompjuterike 14
Gjuha e makinës - Ilustrimi
� Vendos (STORE) përmbajtjen (në bit) të regjistrit 5 në qelulën memorike që ka adresën A7.
8
Hyrje në shkencën kompjuterike 15
Gjuha e makinës - Ilustrimi
156C Mbushe regjistrin me përmbajtjen e regjistrit 5 qelulën memorike 6C
166D Mbushe regjistrin me përmbajtjen e regjistrit 6 qelulën memorike 6D
5056 Mbledh përmbajtjet e regjistrit 5 dhe 6 nëkuptimin e komplementit te dyshit dhe barte rezultatin ne regjistrin 0
306E Vendos përmbajtjen e regjistrit 0 në qelulën memorike 6E
C000 Ndalo
Hyrje në shkencën kompjuterike 16
2.3 Ekzekutimi i programit
� Kompjuteri udhëhiqet nga programet e vendosura në memorien e vetë duke ikopjuar instruksionet nga memoria ne CPU sipas nevojës dhe me renditje të njejtë si në memorie (përjashtim bënë JUMP instruksionin)
9
Hyrje në shkencën kompjuterike 17
Ekzekutimi i programit
Dy regjistra të veçante që përdoren shpesh janë� Regjistri i instruksionit (instruction register) – në të
cilin mbahen instruksionet që janë të ekzekutuara� Numëruesi i programit (Program counter) – në të cilin
ruhen adresat për instruksionin e ardhshëm që do të ekzekutohet
� CPU kryen punën e vetë pandërprerë duke përsërit algoritme të caktuara në tre hapa kryesor të njohur si cikli i makinës (machine cycle) (në përgjithësi krahasohet me 1 cikël/sekond ~ 1Hz, CPU e sotit të rangut GHz), zgjedhja e procesorit përmes procedurës benchmark
Hyrje në shkencën kompjuterike 18
Ekzekutimi i programit –cikli i makinës (Lexo/Dekodo/Ekzekuto)
10
Hyrje në shkencën kompjuterike 19
Ekzekutimi i programit –cikli i makinës
� Përjashtimi i sinjalit JUMP, shemb. B258
� Rasti i përgjithshëm B0XY
Hyrje në shkencën kompjuterike 20
Ekzekutimi i programit –një shembull i ciklit të makinës
� Të provojmë shembullin e mëhershëm të mbledhjes
11
Hyrje në shkencën kompjuterike 21
Ekzekutimi i programit –një shembull i ciklit të makinës
� Program Counter: A2� Instruction Register: 156C
Hyrje në shkencën kompjuterike 22
Ekzekutimi i programit –një shembull i ciklit të makinës
� Program Counter: A4
� Instruction Register: 166D
� …
� Përfundon me instruksionin C000
12
Hyrje në shkencën kompjuterike 23
Ekzekutimi i programit –një shembull i ciklit të makinës
Hyrje në shkencën kompjuterike 24
2.4 Instruksionet Aritmetike/Logjike
� ALU instruksionet – instruksionet aritmetike, logjike dhe operacionet e zhvendosjes.
� Operacionet logjike (AND, OR dhe XOR)
13
Hyrje në shkencën kompjuterike 25
Instruksionet Aritmetike/Logjike, Operacionet logjike
� Lehtësimi i llogaritjeve tek operatori AND (nëse 0 operandi i parë atëherë rezultati gjithmonë është 0)
� Shemb. Shih katër bitët e parë dhe katër të fundit
� Ky proces është i njohur
me emrin maskim (masking)
Hyrje në shkencën kompjuterike 26
Instruksionet Aritmetike/Logjike, Operacionet logjike
� Shemb. i bit map-ëve – dëshirojmë të kontrollojmë vetëm bitin e tretë a është 0 apo 1, ose ta ndryshojmë vetëm vlerën e atij biti nga 1 në 0)
� Përdorimi maskës AND 00100000 dhe AND 11011111 (shembulli te foto .bmp)
� Ngjashmëritë me OR
� OR 00100000
14
Hyrje në shkencën kompjuterike 27
Instruksionet Aritmetike/Logjike, Operacionet logjike
� Përdorimi i maskës XOR për gjetjen e komplementit të vargut të bitëve
� Kodet 7,8 dhe 9 për instruksionet në CPU për OR, AND dhe XOR
� Shemb. 7ABC
Hyrje në shkencën kompjuterike 28
Instruksionet Aritmetike/Logjike, Operacionet e zhvendosjes
� Operacione për lëvizjen e bitëve brenda regjistrit (shfr. në problemin e radhitjes – aligment)
� Zhvendosja e vargut të bitëve për një bit në anën e djathtë, çka ndodh?
� Humbja e bitit dhe paraqitja e vendit “bosh”
15
Hyrje në shkencën kompjuterike 29
Instruksionet Aritmetike/Logjike, Operacionet e zhvendosjes
� Teknikat e plotësimit të vendit “bosh”
� Mbushja me elementin e humbur – e njohur si rrotullim (rotation)
� Mbushja me bitin 0 – e njohur si zhvendosje logjike (logical shift) (vetia e shumezimit/pjestimi me 2)
� Zhvendosjet që nuk e ndërrojnë bitin e shenjës janë të njohura si zhvendosje aritmetike (arithemtic shifts)
Hyrje në shkencën kompjuterike 30
Instruksionet Aritmetike/Logjike, Operacionet e zhvendosjes
� Instruksioni A501, zhvendosja e 65 (hex) ne B2 (hex)
16
Hyrje në shkencën kompjuterike 31
Instruksionet Aritmetike/Logjike, Operacionet aritmetike
� Zbritja realizohet përmes mbledhjes (mbledhja me komplement të dyshit)
� Shumëzimi mund të realizohet përmes mbledhjes (3*2, mbledh 3 dy here me vetvete)
� Pjesëtimi mund të realizohet përmes zbritjes(6/2, maksimumi 3 dyshe mund ti zbresim nga numri 6)
Hyrje në shkencën kompjuterike 32
2.5 Komunikimi me pajisje të tjera
� CPU dhe memoria kryesore përbëjnë bërthamën e kompjuterit
� Rëndësi të veçantë ka se si komunikojnë pajisjet tjera më këtë bërthamë.
� Komunikimi ndërmjet kompjuterit dhe pajisjeve tjera menaxhohet nga një aparat ndërmjetës i njohur me emrin kontroller (controller)
17
Hyrje në shkencën kompjuterike 33
Komunikimi me pajisje të tjera, roli i kontrollorëve
� Kontrollorët mund të jenë të vendosur në pllakën amë ose jashtë kompjuterit (të lidhur përmes kabllos në “dyert e kompjuterit” të quajtur porte)
� Kontrollori shërben për përkthimin e mesazheve ndërmjet kompjuterit dhe pajisjes së jashtme
� Blerja e pajisjet – nevoja për instalimin e kontrollorit të saj
Hyrje në shkencën kompjuterike 34
Komunikimi me pajisje të tjera, roli i kontrollerëve
� USB (universal serial bus) dhe FireWire -teknologji në të cilat një kontroller mund ti menaxhoj pajisje të ndryshme.
� Përmes kontrollerit mundësohet komunikimi direkt në magjistrale, sikurse CPU – memorie kryesore
� Në rastin kur Instruksionet ruhen në kontrollor kemi të bëjmë me I/O memorie të lidhur (memory-mapped I/O)
18
Hyrje në shkencën kompjuterike 35
Komunikimi me pajisje të tjera, roli i kontrollerëve
Hyrje në shkencën kompjuterike 36
Komunikimi me pajisje të tjera, roli i kontrollerëve
� Aftësia e kontrollorëve për ti qasur drejtpërdrejt memories kryesore pa e penguar lidhjen CPU-memorie është e njohur si DMA (direct memory access)
� Megjithatë ky komunikim (CPU-memorie, CPU-Controller, Controller-Memorie) është i rrezikshme në punën e sistemit dhe është e njohur si dukuria e ngushtimit të von Neuman-it
19
Hyrje në shkencën kompjuterike 37
Komunikimi me pajisje të tjera, handshaking� Rrallë herë komunikimi ndërmjet komponentëve të kompjuterit është i një anshëm
� Shemb. Shtypja në printer� Komunikimi i dyanshëm ndërmjet pajisjeve kompjuterike është i njohur si dukuria handshaking
� Handshaking përmban në vete të ashtuquajturën fjalë të gjendjes (status word) që komunikon me kontrollerin për të treguar gjendjen e pajisjes, shemb. printeri
Hyrje në shkencën kompjuterike 38
Komunikimi me pajisje të tjera, komunikimet më të shpeshta
Komunikimi ndërmjet dy pajisjeve sipas mënyrës së bartjes së sinjalit bëhet në dy mënyra
� Paralele (parallel com.) disa sinjale barten njëkohësisht, secili në linjën e vet
� Seriale (serial com.) bartjen e një sinjali nëpër një linjë (shemb. USB dhe FireWire)
Lidhja telefonike, përdorimi i modemit, DSL që shfrytëzon frekuenca mbi frekuencat e zërit për bartje të shënimeve
20
Hyrje në shkencën kompjuterike 39
Komunikimi me pajisje të tjera, shpejtësia e komunikimit
� Shkëmbimi i bitëve ndërmjet dy pajisjeve kompjuterike matet me bit për sekondë (bps).
� Në praktikë i hasim Kbps, Mbps dhe Gbps
� USB dhe FireWire – komunikim të rendit disa qindra Mbps
� Telefonia tradicionale 57.6 Kbps,DSL 54 Mbps
� Leximi MP3 muzikës kërkon 64 Kbps
� Kuptimi i bandwidth-it
Hyrje në shkencën kompjuterike 40
2.6 Arkitekturat e tjera, pipelining
� Për tu kryer një cikël i makinës zakonisht nevojiten disa nano sekonda (fetch/decode/execute)
� Sasia e punës që mund të kryej makina brenda një periudhe të kohës është e njohur si throughput
� Pipelining – rasti kur arrihet të përmirësohet throughput-it përmes ekzekutimi të urdhërit vijues të ciklit të makinës ende pa u krye ai momental (vetia e overlap-imit)
21
Hyrje në shkencën kompjuterike 41
Arkitekturat e tjera, makinat me shumë procesor
� Pipelining është hapi parë drejt procesimit paralel – që paraqet performancën e disa aktiviteteve në të njejtën kohë.
� Kjo plotësisht arrihet kur përdorim më shumë se një njësi procesuese (CPU) dhe njihet me emrin multiprocessor makinë
Hyrje në shkencën kompjuterike 42
Arkitekturat e tjera, makinat me shumë procesor
� Arkitektura MIMD (multiple-instruction stream, multiple data stream) – ndarje e punës ndërmjet shumë procesorëve dhe memories
� Arkitektura SISD (single instr…) arkitekturë tradicionale
� Arkitektura SIMD (single instr…) lidhja e shumë procesorëve së bashku për ekzekutimin e të njejtës punë
22
Hyrje në shkencën kompjuterike 43
Fundi i kapitullit II