Asembler x86/Podstawy: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Lethern (dyskusja | edycje)
m drobne
Ojo666 (dyskusja | edycje)
m ort
Linia 4:
Instrukcje (nie mylić z funkcjami!), których będziemy używać w asemblerze są '''bezpośrednio tłumaczone''' na "język" procesora. Oznacza to, że każda instrukcja, której użyjemy w kodzie, wywołuje konkretną, niepodzielną na mniejsze (przynajmniej w większości przypadków) reakcję procesora. W językach wysokiego poziomu nie operujemy na takim poziomie. Pozornie proste "wyższe" konstrukcje językowe są zamieniane na kilka, kilkanaście instrukcji procesora przez co w efekcie nie mamy bezpośredniej kontroli nad wynikowym kodem. Ograniczenie to nie dotyczy nas, gdy programujemy z użyciem Asemblera. Lista instrukcji procesora znajduje się w rozdziale [[../Instrukcje|Instrukcje]]. Jak już pewnie spostrzegłe(a)ś, jest ich mnóstwo, zapamiętanie wszystkich z nich jest bardzo czasochłonne; najłatwiej przychodzi w praktyce. Każdej instrukcji używa się wg schematu:
instrukcja parametr1, parametr2, parametr3
Jako parametry (zamiennie, możemy je nazywać ''argumentami'' lub ''operandami'') możemy przekazywać: rejestry, adresy do pamięci i nazwy symboliczne, przy czym ich liczba jest zależna od użytej instrukcji i wachawaha się w przedziale od 0 do 3 argumentów. Niektóre instrukcje występują w kilku(nastu) wersjach o identycznej nazwie, z różną ilością parametrów. Instrukcje powinny znajdować się jedynie w obszarach kodu definiujących segmenty. Używanie ich poza nimi może być kłopotliwe.
 
== Etykiety ==