4087490680

4087490680



Dobrym, choć trudnym w odbiorze źródłem informacji są: Intel Architecture Software Developer's Manuał (IASDM) dostępny ZA DARMO ze stron Intela oraz DARMOWE podręczniki AMD64 Architecture Programmer's Manuał firmy AMD

Pisanie i kompilowanie (asemblowanie) swoich programów

Jak pisać programy w asemblerze?

Należy zaopatrzyć się w:

•    Edytor tekstu, mogący zapisywać pliki tekstowe (bez formatowania), np. VIM, LPE, Emacs/XEmacs, Joe, Pico, Jed, Kate, KWrite.

•    Kompilator języka asembler (patrz dalej)

•    Odpowiedni program łączący (konsolidator, ang. linker), chyba że kompilator ma już taki wbudowany, jak np. FASM

Wtedy wystarczy napisać w edytorze tekstu plik zawierający komendy procesora (o tym później), zapisać go z rozszerzeniem .asm lub .s (GNU as), po czym użyć kompilatora, aby przetworzyć program na kod rozumiany przez procesor.

Jakiego kompilatora użyć?

Istnieje wiele kompilatorów języka asembler pod Linuksa. Do najpopularniejszych należą Netwide Asembler Project (NASM), Fiat Asembler (FASM), High-Level Asembler (HLA) i Gnu As.

Można je ściągnąć z intemetu:

(przeskocz adresy stron kompilatorów)

•    NASM: sf.net/projects/nasm

•    FASM: flatasembler.net

•    HLA: webster.cs.ucr.edu

•    Gnu Asembler znajduje się w pakiecie binutils (powinien być w każdej dystrybucji).

Po skompilowaniu pliku z kodem źródłowym należy użyć programu łączącego - będziemy używać standardowego LD (tego, którego używają inne kompilatory), gdyż również powinien się znajdować w każdej dystrybucji Linuksa. Mamy więc już wszystko, co potrzeba. Zaczynamy pisać. Będę tutaj używał składni NASMa i FASMa (gdyż kompilują one programy w składni Intela, która jest bardziej przejrzysta, mimo iż może się wydawać odwrotna).

Najpierw programy na systemy 32-bitowe:

(przeskocz pierwszy 32-bitQwy program w składni NASM)

; wersja NASM na system 32-bitowy

section .text    ; początek sekcji kodu.

global _start    ; linker ld chce mieć ten symbol globalny

; punkt startu programu

; numer funkcji systemowej:

; sys_write - zapisz do pliku ; numer pliku, do którego piszemy.

14


Pisanie i kompilowanie (asemblowanie) swoich programów



Wyszukiwarka

Podobne podstrony:
Dobrym, choć trudnym w odbiorze źródłem informacji są: Intel Architecture Software Developer s Manua
Dobrym, choć trudnym w odbiorze źródłem informacji są: Intel Architecture Software Developer s Manua
Dobrym, choć trudnym w odbiorze źródłem informacji są: Intel Architecture Software Developer s Manua
Źródłem informacji są doniesienia prasowe z ostatnich lat oraz fakt, iż wielokrotne próby rozmó
Bogactwo i różnorodność zjawisk przyrodniczych są niewyczerpanym źródłem informacji. Dla dziecka w w
Księgi wieczyste są podst. Źródłem informacji o stanie prawnym nieruchomości. Ustawa z 1982r jest
Podstawowym źródłem informacji wykorzystywanych w analizie ekonomicznej są sprawozdania finansowe
Kiedy ogłaszają ogólnopolski strajk mediów a Twoim głównym źródłem informacji o świecie są memy na j
14 MARTA CHECHELSKA Cennym źródłem informacji na temat wizerunku są pracownicy, zwłaszcza ci, którzy
53689 Zdjecie1961 pW Średniowieczu źródłem informacji pntropobgicznych nadal są pamiętniki podróżnik
BadaniaMarketKaczmarczyk6 Bogatym wtórnym źródłem informacji o przedsiębiorstwach są katalogi wyst
AnalizaFinansowaTeoriaPrakty7 Podstawowe założenia analizy Jiiiansowyj u przedsiębiorstw te Ważnym
25 (744) 56 Pojęcia i ich rozwój Ważnym źródłem informacji o przestrzeni (i ruchu) są różnice w obra

więcej podobnych podstron