这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » map格式

共4条 1/1 1 跳转至

map格式

菜鸟
2006-03-15 21:59:07     打赏

大家知不知道map文件格式,有没有比较具体的相关文章,谢谢啦!




关键词: 格式    

菜鸟
2006-03-15 22:17:00     打赏
2楼
没听说过这个格式 [em03]

菜鸟
2006-03-15 22:20:00     打赏
3楼

应该有的,用UE来看map文件,可以看到代码段数据段等等,

我想知道具体的格式,然后用工具来统计map文件中的全局数据


菜鸟
2006-03-15 22:27:00     打赏
4楼

borland .map file format

the map file is simply a list of the segments contained in the
compiled program together with information about the segment type
and where it appears in the compiled code.


here is an example of a .map file for a tasm prog i wrote:

start stop length name class

00000h 00000h 00000h _text code
00000h 00356h 00357h _codeseg code
00358h 00358h 00000h _data data
00360h 00ee9h 00b8ah _varseg data
00ef0h 108efh 0fa00h _scrnseg scrn
108f0h 1092fh 00040h _stackseg stack

program entry point at 0000:02c7
warning: no stack

first it displays headings for each column (start, stop, length, name,
and class).. then it lists all the segments in the order they appear in
the executable... the start is how far into the code (in hex) that the
segment starts at, stop is how far into the code the segment ends.. and
the length is stop - start. under name is just the name of the segment
that the programmer gave it when programming it.. (default segs are
_text and _data if you just use .code and .data to start your segs) and
class is the alias that you give the seg.. for example.. if you declare
the seg like the following in your program:

_scrnseg segment public 'scrn'
_scrnseg ends

the name will be _scrnseg and the class will be scrn. the program entry
point is the state of cs:ip upon entry to the program (cs will be offset
however depending on where in memory the program is loaded).. after that
it lists any warnings or errors in the program.. in this case it gave a
no stack warning because i manually declared a stack seg rather than
using the conventional .stack <size> directive.

共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]