2013 m. sausio 9 d., trečiadienis

4.2. Programų vykdymas procesoriuose



Visa, ką mes nurodome kompiuteriui padaryti, jo požiūriu, yra sudėtingos užduotys. Kompiuteris turi vykdyti komandų seką. Projektuojant kompiuterį  parenkama jo komandų sistema.

Žemiausio lygio programavimo kalba išreikšta ta forma, kurią naudoja programuotojas, vadinama asembleriu, o ta forma, kuria dirba kompiuteris - mašinine kalba. Procesorius gali atlikti aritmetines, logines, duomenų persiuntimo, nukreipimo ir kai kurias kitas komandas.
Centrinis procesorius yra vienas sudėtingiausių kompiuterio integrinių grandynų. Geriausias būdas suprasti kompiuterio darbą, išnagrinėti, kaip jis vykdo programą, išreikštą mašininiais kodais.
Nesužadinta programa yra saugoma kokiame nors kompiuterio kaupiklyje (pvz., diskiniame kaupiklyje). Programą sužadinus, ji visa arba jos dalis yra įrašoma į kompiuterio operatyviąją atmintį (RAM).

Vykdoma programa – tai visuma atmintyje saugomų instrukcijų.

Instrukcija susideda iš komandos (operacijos, kurią turės vykdyti CPĮ, kodo ir adresų, nurodančių, kur RAM rasti operacijai atlikti reikalingus duomenis, o kartais ir pačių  duomenų, kurių reikės operacijai atlikti.

Vykdydamas programą, centrinis procesorius ima iš RAM instrukcijas bei duomenis, atlieka instrukcijose nurodytas operacijas ir įrašo į RAM gautus rezultatus.
Instrukcija apdorojama per du žingsnius: pirmiausia centrinis procesorius skaito (išrenka) instrukciją iš atminties, o po to - ją vykdo, taigi programos vykdymo procesą sudaro pasikartojantys instrukcijų išrankos bei instrukcijų vykdymo procesai. Patį instrukcijos vykdymo procesą gali sudaryti keli smulkesni žingsniai.
Taigi, kiekvieno instrukcijos ciklo pradžioje procesorius instrukciją išrenka iš atminties. Nustatant, kuri instrukcija bus išrenkama toliau, tipiškame CPU taikomas programos skaitikliu PC pavadintas registras. Nekalbant apie specialius atvejus, centrinis procesorius po kiekvienos išrankos padidina programos skaitiklio reikšmę vienetu ir taip gali išrinkti kitą sekos instrukciją. Išrinktoji instrukcija siunčiama į centrinio procesoriaus registrą, kuris žinomas kaip instrukcijų (komandų) registras. Instrukcijos pateikiamos dvejetainiu kodu, nurodančiu, kokį veiksmą turi daryti centrinis procesorinis įrenginys. CPU dešifruoja instrukciją ir vykdo ją.
Jei kompiuteris tesugebėtų vykdyti tik aritmetines ir persiuntimo komandas, jis mažai tepranoktų aritmometrą ar kalkuliatorių.
Didžiausią galią kompiuteriams teikia mikroprocesoriuose atliekamos loginės ir nukreipimo operacijos. Jų dėka mikroprocesorius koreguoja savo veiksmus priklausomai nuo ankstesniųjų operacijų rezultatų.
Sąlyginiai nukreipimai leidžia mikroprocesoriui koreguoti savo veiksmus pagal susiklosčiusią situaciją. Atsiranda galimybė kurti išsišakojančias programas, organizuoti duomenų apdorojimo ciklus ir kt.

Komentarų nėra:

Rašyti komentarą

Tinklaraščio archyvas

Etiketės