Nasm - Как я могу передать переменные во внешнюю процедуру? - PullRequest
0 голосов
/ 13 декабря 2018

Я хочу передать "msg" и "len" во внешнюю процедуру, я не знаю почему.Компилятор сказал неопределенные переменные.

File1.asm:

%include "File2.asm"
extern write_string
section .data
   msg db "Hello world",0xA
   len equ $- msg
section .text
    global _start 
_start:
    call write_string

    mov rax,1           ;system call number (sys_exit)
    int 0x80            ;call kernel

File2.asm

write_string:
         mov    rax,4           ;system call number (sys_write)
         mov    rbx,1           ;file descriptor (stdout)
         mov    rcx, msg    
         mov    rdx, len
         int    0x80            ;call kernel
         ret
...