A gépi nyelv egy alacsony szintű nyelv, amely bináris számokból vagy bitekből áll, amelyeket a számítógép megért. Gépi kódnak vagy objektumkódnak is nevezik, és rendkívül nehezen érthető. Az egyetlen nyelv, amit a számítógép megért, az a gépi nyelv. Minden program és programozási nyelv, mint például a Swift és a C++, gépi nyelven készít vagy futtat programokat, mielőtt azok számítógépen futnának. Amikor egy adott feladat, még a legkisebb folyamat is végrehajtódik, a gépi nyelv a rendszerprocesszorhoz kerül. A számítógépek csak a bináris adatokat képesek megérteni, mivel ezek digitális eszközök.
A számítógépben minden adat, például videók, programok, képek binárisan jelennek meg. A CPU ezt a gépi kódot vagy bináris adatokat dolgozza fel bemenetként. Ezután egy alkalmazás vagy operációs rendszer megkapja a kapott kimenetet a CPU-tól, és vizuálisan megjeleníti. Például a 01000001 ASCII-kód az „A” betűt jelenti gépi nyelven, de a képernyőn „A”-ként jelenik meg.
java hosszú a stringhez
A különböző processzorarchitektúrák különböző gépi kódokat használnak; a gépi kód azonban 1-eseket és 0-kat tartalmaz. A CISC architektúrát tartalmazó Intel x86 processzorhoz képest a PowerPC processzornak más kódra van szüksége, amely RISC architektúrát tartalmaz. A megfelelő processzorarchitektúra érdekében a program megfelelő futtatásához a fordítónak magas szintű forráskódot kell lefordítania.
Egy program vagy művelet esetében a pontos gépi nyelv eltérhet az operációs rendszertől függően, ami leírja, hogy a fordító hogyan ír egy műveletet gépi nyelvre. Hasonlóképpen, egy fénykép több tízezer bináris adatot tartalmaz, amelyek meghatározzák az egyes pixelek színét.
A számítógépes programok egy vagy több programozási nyelven (például Java, C++ vagy Visual Basic) készülnek. A programkódot úgy kell lefordítani, hogy a számítógép megértse azt, mivel a számítógépes programok létrehozásához használt programozási nyelveket a számítógép közvetlenül nem tudja megérteni. Amikor a program kódját lefordítják, a program kódra konvertálja
01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100
gépi nyelvet, hogy a számítógép megértse.
Példák a gépi nyelvre
A szöveg ' Helló Világ ' gépi nyelven lenne írva:
abc számokkal
Az alábbiakban egy másik példa a gépi nyelvre, amely 1000-szer fogja megjeleníteni az „A” betűt a képernyőn.
169 1 160 0 153 0 128 153 0 129 153 130 153 0 131 200 208 241 96
Gépi kód végrehajtása
Minden processzorcsalád egy speciálisan programozott utasításkészletet követ, és ezeket az utasításokat gépi kód határozza meg. Minden kisebb, használható alkatrészt, a gép általános működését alkotó alkatrészeket az alapegységek meghatározott elrendezése határozza meg. Az összes alapvető információs egység binárisan van ábrázolva, amelynek egy vagy két értéke '1' vagy '0'. Mivel minden processzorosztálynak olyan szerkezeti konfigurációra van szüksége, amely illeszkedik az egyedi utasításkészletéhez, az összes gépi kód-konfiguráció alapvető utasításkészlete hasonlóan illeszkedő processzorosztályokhoz kapcsolódik.
A gépi nyelv használata
A gépi nyelv gyakori felhasználásait az alábbiakban tárgyaljuk:
- A gépi nyelv egy alacsony szintű nyelv, amelyet a gépek megértenek, de az emberek egy assembler segítségével meg tudják fejteni.
- A fordítóprogram fontos szerepet játszik az emberek és a számítógépek között, mivel a gépi nyelvet más kódokká vagy emberek számára érthető nyelvekké alakítja.
- Az Assembly nyelv a gépi nyelv megértését szolgálja, mivel ez annak átverése.
Különbség a gépi nyelv és az összeállítás nyelve között
Különböző különbségek vannak a gépi nyelv és az összeállítás nyelve között. Az alábbiakban egy táblázat található, amely tartalmazza a köztük lévő összes különbséget.
Gépi nyelv | Assembly nyelv |
---|---|
A gépi nyelv bináris számokból vagy bitekből álló alacsony szintű programozási nyelv, amelyet csak gépek tudnak olvasni. Más néven gépi kód vagy objektumkód, amelyben az utasításokat közvetlenül a CPU hajtja végre. | Az assembly nyelv egy kizárólag emberek által használt nyelv, amelyet a számítógépek nem értenek. Ennek eredményeképpen összekötőként működik a magas szintű programozási nyelvek és a gépi nyelvek között, amihez assembler szükséges az utasítások gépi vagy objektumkóddá alakításához. |
A gépi nyelv bináris számjegyeket (0-kat és 1-eket), hexadecimális és oktális decimális számjegyeket tartalmaz, amelyeket csak a számítógépek képesek megérteni, és az emberek nem képesek megfejteni. | Az olyan mnemonikák, mint a Mov, Add, Sub, End és mások alkotják az assembly nyelvet, amelyet az emberek megérthetnek, használhatnak és alkalmazhatnak. |
Gépi nyelven hibajavítás és módosítás nem végezhető el, a gépi nyelvek jellemzőit ennek megfelelően variálják. | Az Assembly nyelv hagyományos utasításkészletekkel rendelkezik, valamint képes a hibák kijavítására és a programok módosítására. |
A gépi nyelvek platformfüggőek, és nagyon nehezen érthetők meg az emberek számára. | Az Assembly nyelvek szintaxisa hasonló az angol nyelvhez; ezért könnyen megértheti az ember. |
A gépi nyelvet nem lehet megtanulni, mivel nehéz megjegyezni, és csak gépi kódként szolgál. | Az Assembly nyelv könnyen megjegyezhető, és mikroprocesszor-alapú alkalmazásokhoz/eszközökhöz és valós idejű rendszerekhez használható. |
A gépi nyelven minden adat bináris formátumban van jelen, ami gyors végrehajtást tesz lehetővé. | A gépi nyelvhez képest az assembly nyelv végrehajtási sebessége lassú. |
A bitsorozatokat a gépi nyelv használja parancsok kiadására. A nulla a kikapcsolt vagy hamis állapotot jelenti, míg az egy a bekapcsolt vagy a valódi állapotot. A CPU-tól függ, hogy a magas szintű programozási nyelvet gépi nyelvre konvertálja-e. | A nyers bitsorozatok használata helyett az assembly nyelv „mnemonikus” neveket és szimbólumokat használ; ezért a felhasználóknak nem kell emlékezniük az assembly nyelvű műveleti kódokra. Az assembly nyelveken az emberek leképezhetik a kódot gépi kódra, és a kódok valamivel jobban olvashatók |
Az első generációs programozási nyelvek gépi nyelvek, amelyekhez nincs szükség fordítóra. | A programozási nyelvek második generációja az assembly nyelvek, amelyek az assemblert használják fordítóként, hogy a mnemonikát gépileg érthető formává alakítsák. |
A gép nyelve hardverfüggő, és nem teszi lehetővé a módosítást. | Az összeállítási nyelv nem hordozható, gépfüggő és könnyen módosítható. |
A gépi nyelv szintaxisában nagyobb a hibalehetőség. | A gépi nyelvhez képest kisebb az esélye a szintaktikai hibáknak az assembly nyelvben. |