主题:为什么这个最简单的Hello world程序有500多字节呀??
明明没有堆栈段,怎么可能这么大呢??
.model tiny
.data
msg DB 'Hello World!',10,13,'$'
.code
start:
MOV AX,_data ;默认段名_data
MOV DS,AX ;初始化DS段寄存器
MOV DX,4 ;此时4相当于offset msg
MOV AH,09h
INT 21h ;9号系统功能调用,显示字符串
MOV AH,01h
INT 21h ;键盘输入并回显
MOV AH,4CH ;返回DOS
INT 21h
END start
编译后提示:
LINK : warning L4021: no stack segment
Start Stop Length Name Class
00000H 00013H 00014H _TEXT CODE
00014H 00022H 0000FH _DATA DATA
Origin Group
0001:0 DGROUP
Program entry point at 0000:0000
Segments 2
Groups 1
Bytes in symbol table 32784
最后一句是不是说编译出来的EXE头文件有32784位(即400多字节)?
难道编译出来的EXE的547字节里就有400多字节是别的什么的??
.model tiny
.data
msg DB 'Hello World!',10,13,'$'
.code
start:
MOV AX,_data ;默认段名_data
MOV DS,AX ;初始化DS段寄存器
MOV DX,4 ;此时4相当于offset msg
MOV AH,09h
INT 21h ;9号系统功能调用,显示字符串
MOV AH,01h
INT 21h ;键盘输入并回显
MOV AH,4CH ;返回DOS
INT 21h
END start
编译后提示:
LINK : warning L4021: no stack segment
Start Stop Length Name Class
00000H 00013H 00014H _TEXT CODE
00014H 00022H 0000FH _DATA DATA
Origin Group
0001:0 DGROUP
Program entry point at 0000:0000
Segments 2
Groups 1
Bytes in symbol table 32784
最后一句是不是说编译出来的EXE头文件有32784位(即400多字节)?
难道编译出来的EXE的547字节里就有400多字节是别的什么的??