Ero sivun ”RISC” versioiden välillä

[arvioimaton versio][arvioimaton versio]
Poistettu sisältö Lisätty sisältö
p k-en-malline
→‎RISC-ajatteluun siirtyminen: Hieman tarkennuksia ja lisää tähän osioon
Rivi 9:
== RISC-ajatteluun siirtyminen ==
 
TietokoneteollisuudenTietokoneiden alkuaikoina [[ohjelmointikielen kääntäjä|kääntäjät]] olivateivät harvinaisiapystyneet jatuottamaan ohjelmoijatkovin joutuivattehokasta ohjelmoimaankonekoodia, symbolisellajoten konekielelläohjelmoijat taikäyttivät suoraantehokkuussyistä konekielellä.paljon Tämäsymbolista osoittautuikonekieltä. vaativaksiLisäksi työksi, ja koska muistin määräkeskusmuistit oli kalliinhyvin hintansa vuoksi vähäinenpieniä, eijoten muistiamuistin voinutsäästämiseksi tuhlatayhdellä valmisrutiineihin,käskyllä jotkapiti tekisivätsaada monenlaisiaaikaan asioita, mutta varaisivatmahdollisimman paljon muistiaasioita.
 
Aina 1970-luvulle asti tietokoneiden käskykantojen suunnittelussa otettiinkin erityisesti huomioon konekielitason ohjelmoijat ja ohjelmakoodin tiiviys. Valmiita käskyjä kehitettiin mitä erikoisimpiin tarkoituksiin, ja käskykanta toimikin esimerkiksi [[IBM S/360]]:ssa eräänlaisena standardikirjastona. Lisäksi assembly-ohjelmoijille tarjottiin runsas valikoima monipuolisia muistinkäsittelyn osoitusmuotoja. Tästä lähestymistavasta alettiin myöhemmin käyttää nimitystä CISC vastakohtana RISC-lähestymistavalle.
 
RISC-filosofian mukaisia koneita olivat periaatteessa jo eräät [[Seymour Cray]]n kehittämät [[supertietokone]]et kuten [[1960-luku|1960-luvun]] puolivälissä suunniteltu [[CDC-6600]]. Nykyisin tunnettu RISC-ajattelu sai kuitenkin alkunsa [[IBM]]:n tutkimuksista 1970-luvun loppupuolella, jolloin havaittiin, että monien tietokoneiden käskykannat olivat tarpeettoman laajoja eikä ohjelmissa käytetty hyväksi kuin pientä osaa nopeuttaviksi tarkoitetuista ominaisuuksista. Joitain konekäskyjä kääntäjät eivät pystyneet käyttämään lainkaan, jolloin niiden käyttö jäi erittäin vähäiseksi.
 
Myös tietokoneiden suoritusnopeuden kasvattamiseksi haettiin jatkuvasti uusia ratkaisuja, ja yksi mahdollisuus oli peräkkäisten käskyjen rinnakkainen suorittaminen ns. ''liukuhihnaperiaatteella''. Monissa CISC-suorittimissa oli jonkinlaisia osittaisia liukuhihnaratkaisuja, mutta ne olivat ongelmallisia, koska CISC-käskyt vaihtelivat huomattavasti monimutkaisuudeltaan ja suoritusajaltaan. Syntyi tarve käskykannoille, joissa jokaisella käskyllä olisivatolisi samat yksinkertaiset suoritusvaiheet. Lisäksi pyrittiin välttämään tiedonsiirtoa muistiin ja muistista, mikä loi tarpeen perinteistä suuremmalle määrälle rekistereitä.
 
RISC-filosofiassa ajatellaan myös kääntäjäkeskeisemmin kuin CISC:n tapauksessa. Puhtaan [[Assembly (ohjelmointikieli)|assemblyn]] käyttö on vähentynyt jatkuvasti, ja assembly-ohjelmointia helpottavat ratkaisut (kuten monimutkaiset osoitusmuodot) kävivät aina vain tarpeettomammiksi. RISC-lyhennettä on myös leikkimielisesti avattu muotoon ''"Relegate Important Stuff to the Compiler"'', eli ''"jätä tärkeät asiat kääntäjälle".''
 
RISC-tyyppisille koneille on siis tyypillistä suurehko määrä rekistereitä (32), tasamittaiset konekäskyt, jotka kestävät yhtä kauan, ja se, että vain erityiset load- ja store-käskyt siirtävät tietoa keskusmuistin ja suorittimen rekisteriden välillä. Niinpä load- ja store-käskyjä lukuunottamatta käskyillä on tyypillisesti vain kaksi osoitusmuotoa: rekisteriosoitus ja välitön osoitusmuoto.
 
==Katso myös==
Noudettu kohteesta ”https://fi.wikipedia.org/wiki/RISC