|
![]() | 作者: guessme [guessme]
![]() |
登录 |
我在xp下进行汇编语言的编译和连接,可是连接的时候总是失败。 我编译的源程序如下: data segment string db 'hellow word!' data ends stack segment para stack 'stack' dw 10 dup(?) stack ends code segment main proc far assume cs:code,ds:data,ss:stack mov ax,data mov ds,ax call display ret main endp display proc near mov ah,2h mov dx,offset string int 21h ret display endp end main 它在windows 98下编译和连接的很好可是在xp下编译可以通过,但连接不能通过,它显示下面的内容: Microsoft (R) Overlay Linker Version 3.65 Copyright (C) Microsoft Corp 1983-1988. All rights reserved. Run File [LLL.EXE]: List File [NUL.MAP]: Libraries [.LIB]: LLL.OBJ(lll.txt) : fatal error L1103: attempt to access data outside segment bounds pos: 8B Record type: 4AFE 上面的都是在link.exe后输出的内容,我把它重定向输出得到的结果粘贴到这里了。 286大哥,这到底是怎么回事呀? |
地主 发表时间: 05-11-04 21:32 |
![]() | 回复: wind [windlove] ![]() |
登录 |
你用的是什么编译器啊? |
B1层 发表时间: 05-11-05 09:54 |
![]() | 回复: guessme [guessme] ![]() |
登录 |
我用的是masm.exe编译的,然后用link.exe连接。 哦 ,对了,上面的那个字符串:string db 'hellow world!$' 后面少了一个$符号,现在我把它添上,即使有那个符号也不能通过连接,倒是能通过编译。 怎么没几个人回帖呀,xp下不单单这个程序不能通过编译连接,别的也不能,我在windows 98下能编译连接成功的在这里都不行了!!! 请个位高手指点一下。 先谢了。 |
B2层 发表时间: 05-11-05 18:29 |
![]() | 回复: 286 [unique] ![]() |
登录 |
把栈段设的大一点。 dw 10 dup(?) 改成 dw 1000 dup(?) |
B3层 发表时间: 05-11-08 10:25 |
![]() | 回复: zxdlovedjw [zxdlovedjw] ![]() |
登录 |
这和堆栈大小没什么关系 你把函数中para stack 'stack' 这句删除再试试 |
B4层 发表时间: 05-11-10 14:42 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号