Yasm to wydajny assembler, który wspiera wiele architektur, takich jak x86, x86_64 oraz ARM. Umożliwia programistom pisanie kodu w języku asemblera oraz generowanie plików obiektowych, które mogą być używane w projektach programistycznych. Yasm jest popularnym narzędziem wśród programistów zajmujących się niskopoziomowym programowaniem, optymalizacją wydajności oraz w tworzeniu bibliotek i silników graficznych.
yasm [opcje] plik.asm
Parametr | Opis |
---|---|
-f | Określa format wyjściowego pliku obiektowego (np. elf, macho, win32). |
-o | Określa nazwę pliku wyjściowego. |
-g | Generuje pliki debugowania, co jest pomocne w procesie debugowania. |
-D | Definiuje makro, które będzie używane w kodzie źródłowym. |
-I <ścieżka> | Dodaje ścieżkę do folderu z plikami nagłówkowymi. |
-h | Wyświetla pomoc i informacje o dostępnych opcjach. |
yasm -f win32 -o example.obj example.asm
W powyższym przykładzie używamy Yasm do złożenia pliku źródłowego „example.asm” w formacie plików obiektowych dla Windows (win32). Plik wynikowy będzie miał nazwę „example.obj”. Dzięki temu plikowi obiektowemu można dalej pracować z kompilatorem, aby stworzyć finalny program.
yasm -f elf64 -g -o myprogram.o myprogram.asm
W tym przykładzie komenda kompiluje plik źródłowy „myprogram.asm” w formacie ELF dla systemów 64-bitowych. Dodatkowo, opcja -g generuje pliki debugowania, co wspomoże programistę w procesie wykrywania błędów w kodzie.