1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
.TH MCPU-AS 1 "Октябрь 2026" "LibMCPU" "Команды пользователя"
.SH ИМЯ
mcpu-as \- ассемблер исходного текста MCPU в перемещаемый объект MELF
.SH СИНТАКСИС
.B mcpu-as
.RI [ опции ] " -o output.o input.s"
.SH ОПИСАНИЕ
.B mcpu-as
читает один исходный файл ассемблера MCPU в UTF-8 и создаёт один перемещаемый
объект MELF
.BR ET_REL .
Отдельного режима compile-only нет: ET_REL является нормальным и единственным
объектным выходом ассемблера. Исходный файл и
.B -o
могут находиться в любом порядке.
.PP
Assembler записывает symbols, sections и relocations, явно заданные исходным
текстом; он не выбирает PROGRAM или MODEL и не синтезирует HLL CRT objects.
Final lifecycle ownership, automatic HLL CRT selection, STACK и HEAP program
headers определяются позднее командой
.BR mcpu-ld (1).
.SH ОПЦИИ
.TP
.BI -o " файл"
Записать объект в указанный файл. Опция обязательна.
.TP
.BR -v ", " --verbose
После успешной сборки вывести краткую сводку о созданном MELF ET_REL object.
По умолчанию успешный запуск ничего не выводит.
.TP
.BR -h ", " --help
Вывести справку и завершиться.
.TP
.B --version
Вывести имя программы, идентификатор инструментария MCPU и версию, затем завершить работу.
.TP
.B --dump-version
Вывести только номер версии пакета MCPU и завершить работу.
.SH УПРАВЛЕНИЕ ФЛАГАМИ PSW
Ассемблер принимает явные инструкции управления arithmetic/status flags:
.nf
SETF flag
CLRF flag
CLRCPUF
CLRMPUF
.fi
.PP
.B SETF
и
.B CLRF
принимают именованные флаги AF, CF, OF, SF, PF, ZF, RF, VF, DOMF, SNGF,
OVFF, UDFF, TLSF, PLSF, INDF и INXF, то есть PSW bits 0..15. HF, TF и IF
остаются допустимыми selectors для чтения через условные переходы, но этими
инструкциями не записываются; MODE является многобитовым полем и selector не
имеет.
.B CLRCPUF
очищает PSW[7:0], а
.B CLRMPUF
очищает PSW[15:8]. Обе инструкции сохраняют control/execution state выше bit 15.
.SH УПРАВЛЕНИЕ ИСХОДНОЙ ПОЗИЦИЕЙ
Ассемблер принимает директиву
.B #line
с десятичным номером строки и необязательным именем файла в кавычках. Она
предназначена для вывода препроцессора, меняет последующие позиции диагностик и
не записывается в MELF.
.SH СТАТУС ЗАВЕРШЕНИЯ
Ноль при успехе; ненулевое значение при синтаксической, семантической, I/O или
object-generation ошибке.
.SH ПРИМЕРЫ
.nf
mcpu-as -o main.o main.s
mcpu-as helper.s -o helper.o
.fi
.SH СМ. ТАКЖЕ
.BR mcpu-ld (1),
.BR mcpu-readelf (1),
.BR mcpu-objdump (1),
.BR libmcpu (7)
|