2026-05-11 15:08:03 +03:00
|
|
|
|
.текст
|
|
|
|
|
|
.глобал _start
|
|
|
|
|
|
|
|
|
|
|
|
_start:
|
|
|
|
|
|
; 25 - длина сообщения из метки msg
|
|
|
|
|
|
; Запись значения 25 в переменную по метке
|
|
|
|
|
|
переместить_имм рдикс, 25
|
|
|
|
|
|
сохранить [переменная], рдикс
|
|
|
|
|
|
; перепишем для теста
|
|
|
|
|
|
переместить_имм рдикс, 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; Системный вызов write(1, msg, len)
|
|
|
|
|
|
переместить_имм раикс, 1
|
|
|
|
|
|
переместить_имм рдиай, 1
|
|
|
|
|
|
переместить_имм рсиай, msg
|
|
|
|
|
|
загрузить рдикс, [переменная]
|
|
|
|
|
|
вызов_системы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; Системный вызов exit()
|
|
|
|
|
|
переместить_имм раикс, 60 ; номер syscall exit = 60
|
|
|
|
|
|
переместить_имм рдиай, 44 ; код возврата (старый метод)
|
|
|
|
|
|
вызов_системы
|
|
|
|
|
|
|
|
|
|
|
|
.данные
|
|
|
|
|
|
msg: .строка "Тест пройден!\n" ; не менять их местами, чтоб не затереть текст
|
2026-05-17 11:22:39 +03:00
|
|
|
|
переменная: .байт 0 ; тут либо резервировать пустые, либо .bss изобретать (или кучу?)
|