170181. lajstromszámú szabadalom • Digitális kiszámítógép nulla-, egy-, két- és háromcímes utasítások végrehajtására
MAGYAR NÉPKÖZTÁRSASÁG ORSZÁGOS TALÁLMÁNYI HIVATAL SZABADALMI LEÍRÁS SZOLGÁLATI TALÁLMÁNY Bejelentés napja: 1975. IIÍ. 17. (MA-2663) Közzététel napja: 1976. XI. 27. Megjelent: 1978. II. 28. 170181 Nemzetközi osztályozás: G 06 F 9/20 / l Feltalálók: BOGDÁNY János tudományos munkatárs, (22%); BOZSÓ Tibor technikus, (9%); KARÁDI Pál tudományos munkatárs, (11%); LUKÁCS József tudományos munkatárs, (13%);REÉ Eörs tudományos munkatárs, (22%); SOMLAI László tudományos munkatárs, (12%); TŐRÖ Ferenc tudományos munkatárs, (11%), Budapest Tulajdonos: MTA Központi Fizikai Kutató Intézete, Budapest Digitális kisszámítógép nulla-, egy-, két- és háromcímes utasítások végrehajtására A digitális számítógépek ún. gépi utasításrendszere az adott gépre jellemző specifikus utasítások összessége. Minden digitális számítógép utasításai két fő csoportba sorolhatók: vezérlő jellegű- és adatokra hivatkozó, a továbbiakban „műveleti utasítások" csoportjára. Az utóbbi csoport tartalmazza azokat az utasításokat, melyek közvetlenül a tárolt adatok -ún. operandusok - vizsgálatát, módosítását stb. írják elő. Ezen utasítások rendszerének kialakítása szempontjából a digitális számítógépek négy csoportba sorolhatók, úgymint: háromcímes, kétcímés, egycímes és nullacímes számítógépek csoportjába. A legáltalánosabb felépítésű számítógép a háromcímes számítógép, melynek műveleti utasításai mindenkor közvetlenül a tárolóban tárolt operandusokra hivatkoznak. A műveleti utasítások a művelet típusától függően két - vagy három címet specifikálnak -pl. Store-Store ill. Store-Store-Store utasítások - és a címek tárolóhelyekre mutatnak. A művelet az egyik címmel meghatározott tárolt operanduson (vagy két címmel megjelölt két operandus között) hajtódik végre, a művelet eredménye közvetlenül a második (vagy harmadik) cím által kijelölt tárolóhelyre kerül. Ez a felépítés a programozó számára kétségtelenül a legkényelmesebb, azonban az ilyen utasításrendszerek kialakítása rendkívül nagy szóhosszúságú utasításokra vezet, ily módon a tároló kihasználásának meglehetősen rossz hatásfokát eredményezi. Egy cím megadása ugyanis (az alkalmazott operatív tárolókapacitások figyelembevételével) tipikusan 11—16 bitet igényel, amelyben 3—4 bit a címzés módjára utal (bázis, indexelési lehetőségek, indirekt címzés stb.) és 8-12 bit relatív címet (ún. DlSPLACEMENT-et) adja 5 meg, mely a bázis környezetében relatív választást tesz lehetővé. A nehézségeket felismerve már a számítógépek történetének kezdeti szakaszán kifejlesztették a kétcímés számítógépeket, ezek műveleti utasításai egy, 10 vagy két tárolócímet tartalmaznak. Egy operandusú művelet esetén (store utasítások) a művelet eredménye a megcímzett operandus helyére kerül, az operandus eredeti értéke elvész, két operandusú művelet esetén (Store-Store utasítások) az óperandu-15 sokat még kommutatív művelet esetén is meg kell különböztetni egymástól: az egyik az ún. forrás (source) operandus, mely a művelet során változatlan marad, másik az ún. cél (destination) operandus, melynek eredeti értéke elvész, helyébe a művelet 20 eredménye tárolódik. A kétcímés utasításrendszereket ma isv elterjedten alkalmazzák elsősorban nagy számítógépekben, minthogy a két cím megadása változatlanul az utasítások nagy szóhosszúságát követeli meg. 25 Az egycímes utasításrendszerek a kétcímés utasításrendszerektől alapvetően abban különböznek, hogy kétoperandusú műveletek esetén az egyik operandus nem tetszőleges tárolóheíyen, hanem az ún. akkumulátorban foglal helyet. A számítógép korláto-30 zott számú akkumumulátort tartalmaz, így ezek-170181 1