Modet e adresimit
Adresimi
[Redakto | Redakto nëpërmjet kodit]Hyrje
[Redakto | Redakto nëpërmjet kodit]Fusha për adresim e një instruksioni është relativisht e vogël per kah madhësia.Do të dëshironim që të adresonim një numër më të madh të të adresave memorien kryesore.
Për të arritur këtë shfrytëzohen një numër i madh i teknikave të adresimit.Ato përfshijnë një lloj marrëveshje ndërmjet rangut të adresave, numrit te referencave memorike në instruksion dhe kompleksitetit të kalkulimit të adresës.Disa nga teknikat më te përdorshëmë të adresimit janë:
- E menjëhershme
- Direkte
- Indirekte
- Me regjistër
- Indirekt me regjistër
- Me zëvendësim
- Me Stack (lexo: stek)[1]
I menjëhershëm
[Redakto | Redakto nëpërmjet kodit]Kjo ështe metoda më e thjeshtë e adresimit në të cilën vlera e operandit është pjesë e vetë instruksionit.[2]
Kjo metodë përdoret për të inicializuar vlera të konstanteve apo të variablave.Vlerat numerike ruhen si komplement i dyshit.Biti me peshën më të madhe e tregon shenjën e numrit.Përparësia e kësaj teknike është se nuk ka referenca në memorie gjë që e bënë këtë metodë shumë të shpejtë.Mangësi është numri i kufizuar i hapsirës adresuese që kufizon edhe gjatësinë e operandit.
Direkt
[Redakto | Redakto nëpërmjet kodit]Një fomrë shumë e thjeshtë e adresimit është edhe adresimi direkt.
Te kjo teknikë e adresimit fusha adresuese e përmbanë adresen efektive të operandit.
Kjo metodë e të adresuarit ishte shumë e përdorur në gjeneratat e më herëshme të kompjuterëve, mirëpo tani kjo teknikë nuk është e pranishme në arkitekurat e kopjuterëve të gjeneratave të fundit.Është shumë e shpejtë por mangësia e saj qëndron thuajse njësoj sikur te
teknika e menjëhershme , pra në numrin e limituar të adresave nga gjatësia maksimale e fushes adresuese.
Indirekt
[Redakto | Redakto nëpërmjet kodit]
Me adresimin direkt gjatësia e fushës adresuese është zakonisht më e vogël se gjatësia e fjalës, si e tillë e kufizon rangun e adresave. Një zgjidhje është që përmbajtja e fushës adresuese të jetë një adresë referuese për fjalën në memorie.Ky është adresimi indirekt.
Avantazhi i dukshëm i kësaj metode është se nga një fjalë me gjatësi N do të kemi një hapësirë adresuese me gjatësi 2N.Disavantazhi i kësaj metode është ajo ka dy referenca memorike.Të parën për adresën e operandit kurse të dytën për vlerën e tij.Gjithësesi se është me i ngadalshëm, por gjithashtu edhe numri i adresave efektive është i limituar në 2K, ku me K kemi shënuar gjatësinë e hapsirës adresuese të instruksionit.
Me regjistër
[Redakto | Redakto nëpërmjet kodit]Adresimi me regjistër është i ngjajshëm me adresimin direkt. Dallimi i vetëm është se tani fusha adresore referon në një regjistër e jo në një adresë memorike.
Nëse përmbajtja e fushës adresuese është 5, atëherë regjistri R5 ka operandin e kerkuar.Saktësisht një fushë adresuese do të ketë 3 deri në 5 bita, kështu në total do të mund të adresonin 8 deri në 32 regjistrat me destinim të pergjithshëm.(23=8 , 25=32).
Përparësi e kësaj teknike është se nevojitet një hapsirë shumë e vogël adresuese dhe se procesi nuk merr shumë kohë, pasiqë çasja në regjistra është shumë herë më e shpejtë se sa në memorien kryesore.Mangësi e kësaj metode është se gjatësia e operandiëve është e kufizuar me gjatësine e regjistrave.
Indirekt me regjistër
[Redakto | Redakto nëpërmjet kodit]Ashtu sikur që adresimi me regjistër është analog me adresimin direkt , adresimi indirekt me regjistër është analog me adresimin indirekt.Në të dy rastet diferenca është nëse fusha adresuese referon në një regjistër apo në një lokacion memorik.
Avantazhet dhe përparësitë janë thuajse të njëjta me ato të adresimit indirekt.
Fusha adresuese kufizon gjatësinë e fjalëve të përdorura në gjatësinë e vetë fushës.Por adresimi indirekt me regjistër përdor më pak referencë në memorien kryesore dhe si i tillë është me i shpejtë se ai indirekt.
Me zëvendësim
[Redakto | Redakto nëpërmjet kodit]Adresimi me zëvendësim është një kombinim i avantazheve të dy teknikave të adresimit , direkte dhe asaj indirekte.Njihet me emra të ndryshëm varësisht nga konteksti në të cilin përdoret por që mekanizmi bazë është i njejtë.Ne i referohemi si adresimi me zëvendësim.
Adresimi me zëvendësim kërkon që inkstruksioni të ketë dy fusha adresuese, dhe së paku njëra të jetë eksplicite.Njëera vlerë e fushës adresuese është e përdorur në mënyrë direkte (vlera A), kurse tjetra vlerë e fushes adresuese ose ndonjë referencë implicite ne regjistër e bazuar në opkod, i shtohet vlereës A për të fituar adresen efektive.
Tri përdorimet më të shpeshta te adresimit me zëvendësim janë:
- Adresimi Relativ
- Adresimi në Regjistrin Bazë
- Indeksimi.
Me Stack
[Redakto | Redakto nëpërmjet kodit]Dhe metoda e fundit e adresimit është adresimi me stack.Stack-u është një varg linear i lokacioneve që shpesh herë referohet si pushdown list apo edhe si last-in-firs-out queue .Elementet janë të qasshme nga maja e stack-ut.Paralelisht me të është edhe një pointer që ka si vlerë adresen e majës së stack-ut.Nëse dy elementet e para gjenden në regjistra atëhere pointuesi tregon në elementin e tretë në stack.Pointuesi i stack-ut ruhet në regjistër.Kështu referencimi ne stack në menyrë indirekte është referencë ne regjistra.Pra adresimi me stack në një farë mënyre është i nënkuptuar.Instruksionet nuk përmbajnë referencë memorike por në mënyrë implicite operojnë me majën e stack-ut.
Sqarimet/Referimet
[Redakto | Redakto nëpërmjet kodit]- ^ Stack - Memorie lineare ne kompjuter që punon sipas parimit Last-In-First-Out(LIFO)
- ^ Operandi - Vlera numerike në instrukcion me të cilin do të kryhen operacionet(mbledhje,zbritje etj.)
- ^ A - fusha adresore ne instruksion
- ^ EA - adresa efektive(aktuale) e cila e përmbanë vlerën e operandit
- ^ (X) - Përmbajtja e një lokacioni memorik X apo regjistrit X
- ^ R - Regjister
Referime
[Redakto | Redakto nëpërmjet kodit]- Stallings, William. Computer Organization and Architecture (bot. 8th). fq. 401–408.
{{cite book}}
: Lidhje e jashtme në
(Ndihmë!); Mungon ose është bosh parametri|title=
|language=
(Ndihmë!)
Blend.Mehmeti (diskutimet) 6 qershor 2014 00:04 (CEST)