Download Yasm User Manual

Transcript
Оглавление
I Preface
0.1
0.2
0.3
1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Material Covered in this Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
3
3
II Using Yasm
5
1 Запуск Yasm
1.1 Синтаксис командной строки yasm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Описание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Параметры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1 Основные параметры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1.1 -a arch или --arch=arch: Выбор целевой архитектуры . . . . . . . . . . . .
1.3.1.2 -f format или --oformat=format: Выбор формата объекта . . . . . . . . . .
1.3.1.3 -g debug или --dformat=debug: Выбор формата отладки . . . . . . . . . . .
1.3.1.4 -h или --help: Вывод резюме параметров . . . . . . . . . . . . . . . . . . .
1.3.1.5 -L list или --lformat=list: Выбор формата листинг-файла . . . . . . . . . .
1.3.1.6 -l listfile или --list=listfile: Определение названия листинг-файла . . . . . .
1.3.1.7 -m machine или --machine=machine: Выбор целевой машины данной архитектуры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1.8 -o filename или --objfile=filename: Определение названия объектного файла
1.3.1.9 -p parser или --parser=parser: Выбор синтаксического анализатора . . . . .
1.3.1.10 -r preproc или --preproc=preproc: Выбор препроцессора . . . . . . . . . . .
1.3.1.11 --version: Получение версии Yasm . . . . . . . . . . . . . . . . . . . . . . .
1.3.2 Параметры предупреждения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.2.1 -w: Запрещение всех предупреждающих сообщений . . . . . . . . . . . . .
1.3.2.2 -Werror: Обработка предупреждений как ошибок . . . . . . . . . . . . . .
1.3.2.3 -Wno-unrecognized-char: Не предупреждать об неопознанных вводных символах . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.2.4 -Worphan-labels: Предупреждать о метках без завершающего двоеточия .
1.3.2.5 -X style: Изменение стиля сообщений об ошибках/предупреждениях . . .
1.3.3 Параметры препроцессора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.3.1 -D macro[=value]: Предопределение макроса . . . . . . . . . . . . . . . . . .
1.3.3.2 -e или --preproc-only: Только препроцессирование . . . . . . . . . . . . . .
1.3.3.3 -I путь : Добавление пути включаемых файлов . . . . . . . . . . . . . . . .
1.3.3.4 -P filename: Предварительное включение файла . . . . . . . . . . . . . . .
1.3.3.5 -U macro: Отмена определения макроса . . . . . . . . . . . . . . . . . . . .
1.4 Поддерживаемые архитектуры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5 Поддерживаемые синтаксические анализаторы (синтаксисы) . . . . . . . . . . . . . . . .
1.6 Поддерживаемые форматы объектов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7 Поддерживаемые форматы отладки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
11
11
III NASM Syntax
13
2 Язык NASM
2.1 Обзор ассемблерной строки NASM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Псевдо-инструкции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 DB и ее друзья: Объявление инициализированных данных . . . . . . . . . . . . . .
17
17
18
18
iii
8
8
8
8
9
9
9
9