Mapgis打开。
MAP文件是CCS软件编译后产生的有关DSP用到所有程序、数据及IO空间的一种映射文件。
MAP文件主要有两种生成方法,一种是由系统自动生成,默认文件名为所建立的项目名(如XXX为项目名)加上.map后缀xxx.map,另一种在CMD文件中指定生成MAP文件, *** 作方法为在MEMORY指令前面加上“-m abc.map”,文件名可以任意。
扩展资料:
MAP文件大概分为文件头、内存配置、段映射、全局符号四部分。内存配置与CMD文件中的MEMORY指令关联,在CMD文件中定义的程序与数据区间定义,在该部分均可以找到对应,与CMD文件不同的时,在MAP文件中加入了一个实际使用的区间,即在程序中实际用到的空间长度。
段映射部分与CMD文件中的SECTION指令关联,在该部分程序中所有的段实际映射的起始地址与实际长度均有详细说明。可以具体到程序中PROGMA指定的段和各个单独文件产生的OBJ文件。
全局符号可以是程序使用的每一个函数、程序中定义的全局变量均可以在此找到对应的起始地址。MAP文件中采用两种方式列举,一种为按相应地址排列,另一种按全局符号字母排列。
示例代码:#include <iostream>
using namespace std
void crash()
{
__asm
{
int 3//到这里就中断(模拟程序崩溃)
}
}
int main()
{
cout<<"hello"<<"\n"
crash()
return 0
}
在vc6.0里敲入上面代码,project->settings->c/c++ 在project options里加上/Zd表示编译的时候生成行信息,然后在link选项卡里勾选Generate mapfile,在project options加上/mapinfo:lines。好了,rebuild all就可以在debug目录下生成一个后缀名为.map的文件,可以用记事本打开它。
运行程序,d出有“调试 发送错误报告 不发送”三个按钮的对话框,查看错误报告技术信息,在开始的几行里有“code flags record address“记住address后的地址,我的是0x00401156。根据它就能找出崩溃时的函数地址。可以查看map文件的 “Rva+Base”(偏移+基地址)列,其中第一个大于address的前一个call对应函数就是崩溃的函数。
可以使用可以用OziExplorer 3.95.4h打开MAP文件,游戏中往往把一些游戏地图保存为扩展名为map文件。map是一种图像数据调用文件,可以模拟场景。 MAP文件主要有两种生成方法,一种是由系统自动生成,默认文件名为所建立的项目名(如XXX为项目名...)
.map文件,用于描述目标板的可访问存储区,告诉Embest IDE那些内存地址是合法的,哪些区域可以读,那些可以写。以免在调试时,IDE内存的读写,出现不可预知的结果。 如果是一些地图格式,可以试试photoshop或者oziexplorer打开。
扩展资料:
游戏中往往把一些游戏地图保存为扩展名为map文件。map是一种图像数据调用文件,可以模拟场景。MAP文件是CCS软件编译后产生的有关DSP用到所有程序、数据及IO空间的一种映射文件。
生成方法:MAP文件主要有两种生成方法,一种是由系统自动生成,默认文件名为所建立的项目名(如XXX为项目名)加上.map后缀xxx.map,另一种在CMD文件中指定生成MAP文件, *** 作方法为在MEMORY指令前面加上“-m abc.map”,文件名可以任意。
参考资料:
百度百科-map文件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)