Сборка: Syscall пропускается - PullRequest
0 голосов
/ 22 марта 2019

У меня есть следующий код сборки здесь. В основном я хочу выполнить sys_write syscall дважды, чтобы записать что-то в стандартный вывод.

section     .text
global      _start

_start:

    ;write hello world
    mov     eax, 4
    mov     ebx, 1
    mov     edx, len_hello_world
    mov     ecx, hello_world
    int     0x80

    ;write my name
    mov    eax, 4
    mov    ebx, 1
    mov    edx, len_my_name
    mov    ecx, my_name
    int    0x80

    ;exit program
    mov     eax, 1    ; sys_exit
    int     0x80

section     .data

    hello_world         db  "Hello, World!", 0xd
    len_hello_world     equ $ - hello_world
    my_name             db  " My name is Moritz!", 0x13
    len_my_name         equ $ - my_name

Ожидаемый результат:

Hello, World! My name is Moritz!

Фактический объем производства:

My name is Moritz!

Мой вопрос таков: почему первый sys_call "пропущен" (извините за непрофессионалы, я полный нуб)

...