Question about "Link Map" output and "Assume" directive of MASM assembler.

Posted by smwikipedia on Stack Overflow See other posts from Stack Overflow or by smwikipedia
Published on 2010-04-04T03:09:13Z Indexed on 2010/04/04 3:13 UTC
Read the original article Hit count: 406

I am new to MASM. So the questions may be quite basic.

When I am using the MASM assembler, there's an output file called "Link Map". Its content is composed of the starting offset and length of various segments, such as Data segment, Code segment and Stack segment. I am wondering that, where are these information describing? Are they talking about how various segments are located within an EXE file or, how segments are located within memory after the EXE file being loaded into memory by a program loader?

BTW: What does the "Assume" directive do? My understanding is that it tell the assembler to emit some information into the exe file header so the program loader could use it to set DS, CS, SS, ES register accordingly. Am I right on this?

Thanks in advance.

© Stack Overflow or respective owner

Related posts about masm

Related posts about assembler