Az Assembly programozási nyelv

Bevezetés

Történet

Az első számítógépek programozása "kézzel" történt, bizonyos huzalok állítgatásával kellett megadni az egyes memóriacímeket, utasításokat, adatokat. Az utasítások megadása gépi kóddal történt, ez kezdetben bináris, később oktális, vagy hexadecimális számok megadását jelentette. Ez nyilvánvalóan nagyon bonyolult, és hibalehetőségekkel-teli feladat volt, ezen feladatok egy részét szerették volna automatizálni.

Ennek megoldása volt a lyukkártyák használata, amiken előre megírt utasításokat adhattunk meg, viszont az egyes parancsok (01 számsorozatok) az ember természetétől még mindig idegennek hatottak, az Assembly nyelv biztosította azt, hogy ezen automatizálni kívánt utasításokat előre megírjuk egy emberközelibb formában, úgynevezett mnemonikákkal, majd ezeket a nyelv fordítóprogramja, az Assembler, a processzor számára értelmezhető gépi kóddá alakítsa.

Az assembler párja a Disassembler, amely gépi, bináris kódot képes Assembly forráskóddá alakítani.

Példák a gépi kód és a mnemonikák közti átmenetre:

Binary

Hex

Mnemonic

Meaning

01001111

4F

CLRA

Clears the A accumulator

00110110

36

PSHA

Saves A acc on stack

01001101

4D

TSTA

Tests A acc for 0

Az Assembly nyelvek jelentősége manapság, hogy erre épül, illetve fordul a magasabb szintű nyelvek többsége, tehát pl. egy C++ kód fordítás után egy Assembly kódot fog eredményezni, ami aztán majd továbbfordul gépi kódra.