44 lines
1.3 KiB
Plaintext
44 lines
1.3 KiB
Plaintext
.текст
|
||
.глобал _start
|
||
|
||
_start:
|
||
вытолкнуть рсикс
|
||
сравнить_с рсикс, 2
|
||
переход_если_меньше no_arg
|
||
|
||
вытолкнуть рсиай
|
||
вытолкнуть р8 ; argv[1] в R8
|
||
|
||
переместить рдиай, р8
|
||
исключающее_или рдикс, рдикс
|
||
strlen:
|
||
загрузить ал, [р8]
|
||
сравнить_с ал, 0
|
||
переход_если_равно strlen_done
|
||
увеличить р8
|
||
увеличить рдикс
|
||
переход strlen
|
||
strlen_done:
|
||
|
||
переместить_имм раикс, 1
|
||
переместить рсиай, рдиай
|
||
переместить_имм рдиай, 1
|
||
вызов_системы
|
||
|
||
исключающее_или рдиай, рдиай
|
||
переместить_имм раикс, 60
|
||
вызов_системы
|
||
|
||
no_arg:
|
||
переместить_имм раикс, 1
|
||
переместить_имм рдиай, 1
|
||
переместить_имм рсиай, msg_no_arg
|
||
переместить_имм рдикс, 51
|
||
вызов_системы
|
||
переместить_имм рдиай, 1
|
||
переместить_имм раикс, 60
|
||
вызов_системы
|
||
|
||
.данные
|
||
msg_no_arg:
|
||
.строка "Ошибка не передан аргумент\n" |