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

Usunięta treść Dodana treść
Mythov (dyskusja | edycje)
Mythov (dyskusja | edycje)
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ś 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
KażdaJako instrukcjaparametry posiadamożemy określonąprzekazywać ilośćrejestry, argumentów;adresy do pamięci i nazwy symboliczne przy czym ich liczba jest zależna od użytej instrukcji i wacha się w przedziale od 0 do 3 argumentów. Niektóre instrukcje występują w kilku/kilkunastu wersjach o identycznej nazwie z różną ilością parametrów i o identycznej nazwie. Instrukcje mogą siępowinny znajdować się jedynie w obszarach kodu definiujących segmenty,. nieUżywanie mogą znajdować sięich poza nimi może być kłopotliwe.
 
== Etykiety ==