在这里,a.obj和b.obj连接不成功:error L2029: 'PP' : unresolved external
但时a.obj和b-.obj能够连接成功并运行,打印了ab
我不知道为什么会这样,用增强过程定义会连接不了,请高手们告诉我。我用的是masm615,611和5.x都试过了。
附件里有这些代码。
--------文件a.asm--------
.286extrn pp:far ;外部过程pp
_code segment
main proc far
assume cs:_code
push ds
sub ax,ax
push ax
mov ah,2 ;打印一个字符'a'
mov dl,'a'
int 21h
call far ptr pp ;调用外部过程
mov ah,7
int 21h
ret
main endp
_code ends
end main
--------文件b.asm--------
.286public pp ;声明公用过程
_code segment
pp proc far c uses ax dx ;增强过程定义
mov ah,2 ;打印一个字符'b'
mov dl,'b'
int 21h
ret
pp endp
_code ends
end
--------文件b-.asm-------
.286public pp ;声明公用过程
_code segment
pp proc far
push ax ;保存奇存器
push dx
mov ah,2 ;打印一个字符'b'
mov dl,'b'
int 21h
pop dx ;恢复奇存器
pop ax
ret
pp endp
_code ends
end