Jazyk symbolických instrukcí
Jazyk symbolických instrukcí je nízkoúrovňový programovací jazyk navržený pro konkrétní typ procesoru. Může vzniknout kompilací zdrojového kódu z vyššího programovacího jazyka například (C/C++), ale lze ho také napsat od začátku. Kód v jazyce symbolických instrukcí lze pomocí assembleru převést na strojový kód.
Protože většina kompilátorů převádí zdrojový kód přímo na strojový kód, vývojáři softwaru často vytvářejí programy bez použití jazyka symbolických instrukcí. V některých případech však lze kód v jazyce symbolických instrukcí použít k vyladění programu. Programátor může například napsat konkrétní proces v jazyce symbolických instrukcí, aby zajistil jeho co nejefektivnější fungování.
Jazyky symbolických instrukcí se mezi jednotlivými architekturami procesorů liší, často však obsahují podobné instrukce a operátory. Níže jsou uvedeny příklady instrukcí podporovaných procesory x86.
- MOV – přesune data z jednoho místa na jiné
- ADD – sečte dvě hodnoty
- SUB – odečte jednu hodnotu od jiné
- PUSH – vloží data do zásobníku
- POP – odebere data ze zásobníku
- JMP – přeskočí na jiné místo
- INT – přeruší proces
Následující kód v jazyce symbolických instrukcí lze použít k sečtení čísel 3 a 4:
mov eax, 3 – načte hodnotu 3 do registru "eax"
mov ebx, 4 – načte hodnotu 4 do registru "ebx"
add eax, ebx, ecx – sečte hodnoty "eax" a "ebx" a uloží výsledek (7) do "ecx"
Psaní jazyka symbolických instrukcí je zdlouhavý proces, protože každou operaci je nutné provést na velmi základní úrovni. K vytvoření počítačového programu sice nemusí být nutné používat kód v jazyce symbolických instrukcí, jeho studium však často bývá součástí výuky informatiky, protože poskytuje užitečný pohled na fungování procesorů.
Otestujte své znalosti