该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
叫你不搞好备份
哪位网友用单windows xp的
编译一下这个程序,实模式运行
//********************************************
//文件名:CRSE.C
//功能:1. 读硬盘0面0头1扇区数据并建立存储文件
// 2. 将数据用16进制显示在屏幕上
//********************************************
#include //1.
#include //2.
void main() //3.
{ //4.
FILE *fp; //5.
char h[512]; //6.存放扇区数据
char sh[13]; //7.存放文件名
int i,j; //8.
int cyl=0,head=0,sector=1; //9.柱面,磁头,扇区编号
printf("Enter file name: "); //10.
scanf("%s",sh); //11.输入文件名
fp=fopen(sh,"wb+"); //12.打开文件
biosdisk(0x02,0x80,head,cyl,sector,1,h); //13.调用函数将扇区数据读入数组
for(i=0;i<=511;i++) //14.将数据输出到文件
fputc(h[i],fp); //15.
rewind(fp); //16.文件指针回到开头
for(i=1;i<=512;i++) //17.
{ //18.
j=fgetc(fp); //19.取字符
printf("%2x",j); //20.按16进制显示
if(i%32==0) //21.每显示32字节换行
printf("\n"); //22.
} //23.
fclose(fp); //24.关闭文件
printf("\n"); //25.
} //26.
————————————————————————————————
然后把你得到的文件发给楼主
楼主编译一下下面的文件,实模式运行,导入上面的结果就OK
//********************************************
//文件名:CWSE.C
//功能:将文件数据写入0面0头1扇区
//********************************************
#include //1.
#include //2.
void main() //3.
{ //4.
char h[512]; //5. 存放扇区数据
char sh[13]; //6. 存放文件名
FILE *fp; //7.
int i; //8.
int cyl=0,head=0,sector=1; //9. 柱面,磁头,扇区编号
printf("Enter file name: "); //10.
scanf("%s",sh); //11. 输入文件名
fp=fopen(sh,"rb"); //12. 打开文件
for(i=0;i<=511;i++) //13.
h[i]=fgetc(fp); //14. 将文件数据读入数组
biosdisk(0x03,0x80,head,cyl,sector,1,h); //15. 调用函数将数组数据写入扇区
fclose(fp); //16. 关闭文件
} //17.