gpt4 book ai didi

assembly - MASM 中没有堆栈段警告

转载 作者:行者123 更新时间:2023-12-02 21:37:22 24 4
gpt4 key购买 nike

我是 assembly 初学者。我正在尝试使用 MASM 在屏幕上打印一封信。我定义了堆栈段,但是当我尝试链接程序时,收到此警告:

链接:警告 L4021:没有堆栈段

但是该程序运行良好!我怎样才能解决这个问题?请用简单的话解释一下。谢谢。

printa.asm:

stk segment
DW 32 dup(?)
stk ends
cds segment
assume cs:cds,ss:stk
main proc far
mov ah,02
mov dl, 'A'
int 21h

mov ah,01
int 21h

mov ah,4ch
int 21h
main endp
cds ends
END main

printa.lst:

Microsoft (R) Macro Assembler Version 6.00              11/06/15 09:38:16
printa.asm Page 1 - 1


0000 stk segment
0000 0020 [ DW 32 dup(?)
0000
]
0040 stk ends
0000 cds segment
assume cs:cds,ss:stk
0000 main proc far
0000 B4 02 mov ah,02
0002 B2 41 mov dl, 'A'
0004 CD 21 int 21h

0006 B4 01 mov ah,01
0008 CD 21 int 21h

000A B4 4C mov ah,4ch
000C CD 21 int 21h
000E main endp
000E cds ends
END main
Microsoft (R) Macro Assembler Version 6.00 11/06/15 09:38:16
printa.asm Symbols 2 - 1




Segments and Groups:

N a m e Size Length Align Combine Class

cds . . . . . . . . . . . . . . 16 Bit 000E Para Private
stk . . . . . . . . . . . . . . 16 Bit 0040 Para Private


Procedures, parameters and locals:

N a m e Type Value Attr

main . . . . . . . . . . . . . . P Far 0000 cds Length= 000E Private

0 Warnings
0 Errors

最佳答案

我找到了解决方案。我们需要为堆栈段定义“组合类型”。

stk segment

应该是:

stk segment stack

唯一适用于堆栈段的组合类型是“stack”。

关于assembly - MASM 中没有堆栈段警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33560616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com