我正在做一个项目,该项目将我编写的子程序附加到老师包含的主文件中。他给了我们使我们的子程序全局化的说明,但显然我是个白痴。这两个 asm 文件位于同一个文件夹中,我正在使用nasm -f elf -g prt_dec.asm
,ld prt_dec
然后对 main.asm 执行相同的操作。这是main.asm中的相关代码:
SECTION .text ; Code section.
global _start ; let loader see entry point
extern prt_dec
_start:
mov ebx, 17
mov edx, 214123
mov edi, 2223187809
mov ebp, 1555544444
mov eax, dword 0x0
call prt_dec
call prt_lf
当我使用时,该行call prt_dec
会抛出“对 prt_dec 的未定义引用”ld main.o
这是我的 prt_dec.asm 中的代码段:
Section .text
global prt_dec
global _start
start:
prt_dec:
(pushing some stuff)
L1_top:
(code continues)