Mi az az utasításkészlet?

Bármely CPU-t az alapoktól kezdve úgy tervezték, hogy támogassa az adott utasításkészletet. Az utasításkészlet olyan keményen kódolt műveletek halmaza, amelyeket a CPU képes végrehajtani. Ezek a műveletek lehetnek például két szám összeadása, ugrás a program egy másik részére, vagy két érték összehasonlítása. A számítógép által végrehajtható minden egyes műveletet egyedileg ábrázol egy műveleti kód.

Opcodes

Egy program végrehajtásakor a CPU egy programszámlálót használ annak nyomon követésére, hogy melyik utasítást kell legközelebb végrehajtani. Utasítás lekérésekor a programszámláló az utasítás hosszával megnövekszik, így az a következő utasítás elejére mutat. Minden utasítás egy műveleti kódból áll. Az utasítástól függően tartalmazhat operandusokat vagy nem. Az operandusok lehetnek állandó értékek, vagy egy érték helyére mutató mutató a CPU regiszterben vagy a rendszer RAM-ban.

A teljes utasítás lekérése után dekódolni kell. Ez az a folyamat, ahol a CPU elválasztja a műveleti kódot és az operandusokat. A dekódolt műveleti kódot arra használják, hogy engedélyezzenek vagy tiltsanak le bizonyos elektromos útvonalakat a CPU-ban, amelyek a megfelelő működést eredményezik.

Az utasítás dekódolása után végrehajtódik. A CPU pontos viselkedése a működéstől függ. Egy összeadási művelet két értéket összead. Egy ugrási művelet kiszámítja, hogy a programban hova kell ugrani. Az összehasonlítási művelet két értéket hasonlít össze. A NOP művelet tétlen lesz, mivel a NOP a No Operation rövidítése.

A legtöbb utasítás ezután a művelet eredményét adja ki. Ez a kimenet mehet a processzor regisztereibe és szükség esetén a rendszer RAM-ba. Ezen műveletek mindegyike egyetlen óraciklust vesz igénybe.

Illegális műveleti kódok

Minden CPU-architektúra rendelkezik saját, a gyártó által közzétett műveleti kódlistával. Ezen műveleti kódok értékei nem feltétlenül ugyanazok a többplatformos, ezért a szoftvereket különböző architektúrákhoz kell fordítani. Egyes esetekben a gyártó dokumentálatlan műveleti kódokat is mellékel. Ezeket „illegális műveleti kódoknak” nevezik. Az illegális műveleti kódok, bár nincsenek dokumentálva, ugyanazt a funkciót látják el minden alkalommal, amikor meghívják őket. Dokumentálatlan és nem szabványos funkciókként azonban a CPU architektúra frissítései egyszerűen eltávolíthatják őket.

Néhány korai számítógépes játék az Apple II-n bizonyos illegális műveleti kódokra támaszkodott. Ezután teljesítmény- és stabilitási problémákkal küzdöttek a későbbi Apple IIc CPU-változatnál, mivel az IIc eltávolította a játékokhoz szükséges illegális műveleti kódokat. Az illegális műveleti kódokat szerzői jogvédelmi körökben biztonsági módszerként is használták a homályon keresztül a tartalmaikat feltörő kalózok elleni küzdelemben. Egyes illegális műveleti kódokat egyszerűen hibakereső eszköznek és hibakezelőnek szánják.

Az x86 utasításkészlet nagyszámú, nem dokumentált illegális műveleti kódot tartalmaz. Érdekes módon ezek egy része meg van osztva az Intel és az AMD CPU-k között, ami azt jelzi, hogy mindkét vállalat nyilvánosan tisztában van a céljával, miközben nincs dokumentálva.

Összeállítók és összeállítás

A legtöbb program magas szintű nyelveken készült. Ezek viszonylag könnyen olvashatók, gyakran angol szavakat vagy gyorsírást használnak a tanulási görbék minimalizálása érdekében. Ahhoz, hogy egy számítógép végrehajtsa ezeket a programokat, le kell őket fordítani. A fordító alapvetően egy fordító. Felveszi a magas szintű kódot, és számítógépes kóddá alakítja, olyan utasításokká, amelyeket a CPU megért.

Egyes nyelveken az is lehetséges, hogy lefordítatlan kódot futtatjunk egy korábban lefordított programon keresztül, amely menet közben gépi kódot generál. Az Assembly egy alacsony szintű programozási nyelv, amely gyorsírást használ, hogy a fejlesztők közvetlenül láthassák és ellenőrizhessék az elvégzett műveleteket. A NOP egy példa az összeszerelési gyorsírásra.

Következtetés

Az utasításkészlet azon hivatalos funkciók listája, amelyeket a CPU architektúra futtathat. Ez a végrehajtható műveletek listája. Ezek a műveletek be vannak kódolva a CPU-ba, és a megfelelő műveleti kódjukkal hívják meg.

A szoftver általában fordítóprogramot használ az ember által olvasható magas szintű kódból a CPU által olvasható gépi kódra. Néha a CPU architektúra tartalmazhat nem dokumentált műveleti kódokat, amelyeket illegális műveleti kódoknak neveznek. Az illegális műveleti kódok technikailag az utasításkészlet részét képezik. Előfordulhat azonban, hogy nem lesznek megbízhatóan elérhetők a platform jövőbeli iterációi során. Ne felejtse el hagyni gondolatait az alábbi megjegyzésekben.


Leave a Comment

Minden az iOS 26-ról

Minden az iOS 26-ról

Az Apple bemutatta az iOS 26-ot – egy jelentős frissítést vadonatúj matt üveg dizájnnal, intelligensebb felhasználói élményekkel és a megszokott alkalmazások fejlesztéseivel.

A legjobb laptopok diákoknak 2025-ben

A legjobb laptopok diákoknak 2025-ben

A diákoknak egy bizonyos típusú laptopra van szükségük a tanulmányaikhoz. Nemcsak elég erősnek kell lennie ahhoz, hogy jól teljesítsen a választott szakon, hanem elég kompaktnak és könnyűnek is ahhoz, hogy egész nap magaddal cipelhesd.

Hogyan lehet visszanyerni a hozzáférést a merevlemezhez, hogyan lehet kijavítani a merevlemez megnyitásának sikertelenségével kapcsolatos hibát

Hogyan lehet visszanyerni a hozzáférést a merevlemezhez, hogyan lehet kijavítani a merevlemez megnyitásának sikertelenségével kapcsolatos hibát

Ebben a cikkben bemutatjuk, hogyan állíthatja vissza a hozzáférést a merevlemezéhez, ha meghibásodik. Kövessük a példáját!

A Beszélgetéstudatosság és az Élő hallgatás funkció használata AirPods-on

A Beszélgetéstudatosság és az Élő hallgatás funkció használata AirPods-on

Első pillantásra az AirPods pont olyan, mint bármely más valódi vezeték nélküli fülhallgató. De mindez megváltozott, amikor felfedeztek néhány kevésbé ismert funkciót.

Hogyan adhatunk hozzá nyomtatót Windows 10-hez

Hogyan adhatunk hozzá nyomtatót Windows 10-hez

A nyomtató hozzáadása Windows 10-hez egyszerű, bár a vezetékes eszközök folyamata eltér a vezeték nélküli eszközökétől.

Hogyan ellenőrizheti a RAM-ot és a RAM-hibákat a számítógépén a legnagyobb pontossággal

Hogyan ellenőrizheti a RAM-ot és a RAM-hibákat a számítógépén a legnagyobb pontossággal

Mint tudod, a RAM egy nagyon fontos hardveralkatrész a számítógépben, amely memóriaként működik az adatok feldolgozásához, és ez a tényező határozza meg a laptop vagy PC sebességét. Az alábbi cikkben a WebTech360 bemutat néhány módszert a RAM-hibák ellenőrzésére szoftverek segítségével Windows rendszeren.

SSD Telepítése Asztali és Laptop PC-ken

SSD Telepítése Asztali és Laptop PC-ken

Rendelkezik egy SSD-vel, hogy frissítse a számítógép belső tárolóját, de nem tudja, hogyan telepítse? Olvassa el ezt a cikket most!

5 Ok, amiért a laptopod túlmelegszik

5 Ok, amiért a laptopod túlmelegszik

Tudd meg, miért melegszik túl a laptopod, és milyen tippeket és trükköket alkalmazhatsz, hogy elkerüld ezt a problémát és a készüléked hűvös maradjon.

Hogyan találjuk meg a nyomtató IP címét

Hogyan találjuk meg a nyomtató IP címét

Problémája van a nyomtató IP címének megtalálásával? Megmutatjuk, hogyan találhatja meg.

GeForce Now hibaelhárítás: 0xC272008F kód

GeForce Now hibaelhárítás: 0xC272008F kód

Egy nagy játéknak indulsz – éppen most szerezted meg a “Star Wars Outlaws”-t a GeForce Now streaming szolgáltatáson. Fedezd fel az egyetlen ismert megoldást a GeForce Now 0xC272008F hibaelhárításához, hogy újra játszhass az Ubisoft játékokkal.