FDBRの変数を変える機能

Files Recovery Software
連絡先の詳細 顧客サポート ダウンロードのデモ 製品  

 
 

/*DBRの変数を変える機能*/

Recover_with_values()
{
int val =0;

/* フロッピィのための3バイトのジャンプコード */
b.code[0] = 0xEB;
b.code[1]= 0x3E;
b.code[2]= 0x90 ;

/* 8バイトのシステムID */
strcpy(b.system_id, "+05PSIHC");

/* セクターごとのバイト= 512 */
b.bytes_per_sec = 512;

/* 1.44M 3.5のための集りごとのセクター"フロッピィ= 1 */
b.sec_per_clus = 1;

/* 予約セクターの数= 1 */
b.res_sec =1;

/* 脂肪質のコピーの数= 2 */
b.fat_copies =2;
/* ルートディレクトリの記入項目の数= 224 */
b.root_dir_entry =224;

/* ディスクのセクターの数= 2880 */
b.no_sects =2880;

/* フロッピィ= F0 (h)のための媒体のディスクリプターバイト */
b.format_id =0xF0;

/* 脂肪ごとのセクター= 9 */
b.sec_per_fat =9;

/* トラックごとのセクター= 18 */
b.sec_per_trk =18;

/* 側面の数= 2 */
b.no_sides =2;

/* 特別な予約セクター(または隠されたセクター)の数= 0 */
b.no_sp_res_sect =0;

/* フロッピー・ディスクのための使用*/
val = abswrite ( 0, 1, 0, &b ) ;

if ( val == -1 )
{
printf ( "\n Disk Write Error...bad sector\n" ) ;
printf ( " Disk was not Recovered." ) ;
exit ( 1 ) ;
}

return 0;
}

display_info()
{
printf ( "\n Jump Code (Hex) = %X%X%X (H)\n",
b.code[0],b.code[1],b.code[2]);
printf ( " System ID = %s\n", b.system_id ) ;
printf ( " Bytes per sector = %d\n", b.bytes_per_sec ) ;

printf ( " Sectors per cluster = %d\n", b.sec_per_clus ) ;

printf ( " Reserved sectors = %d\n", b.res_sec ) ;

printf ( " FAT copies = %d\n", b.fat_copies ) ;

printf ( " Root directory entries = %d\n", b.root_dir_entry ) ;

printf ( " No. of sectors on disk = %u\n", b.no_sects ) ;

printf ( " Media Descriptor Byte = %X\n", b.format_id ) ;

printf ( " Sectors per FAT = %d\n", b.sec_per_fat ) ;

printf ( " Sectors per track = %d\n", b.sec_per_trk ) ;

printf ( " No. of sides = %d\n", b.no_sides ) ;

printf ( " No. of reserved sectors = %d\n", b.no_sp_res_sect ) ;
return 0;
}

コーディングのコメント:

構造のブーツが読み書きにDBRに、アクセスするのにディスクの変数使用されている。 機能display_info ()、表示DBRから読むディスクの様々な変数。 機能Recover_with_valuesが()フロッピィのDBRの変数を変更し、回復するのに使用されている。

機能Recover_with_valuesによって使用される価値は1.44MBの変数、3つの½のインチフロッピー・ディスクDBRのため()、である。 これらの価値の記述は次に与えられるテーブルで与えられた:

価値

記述

b.code [0] = 0xEB;
b.code [1] = 0x3E;
b.code [2] = 0x90;

指定フロッピィのための3バイトのジャンプコードは、与えられたeb 3E 90 (h)を

strcpy (b.system_id、「+05PSIHC」);

8バイトのシステムID。 それはシステムの本日そして時間とほとんど何でも働くどんなに、計算される。

b.bytes_per_sec = 512;

セクターごとのバイト= 512

b.sec_per_clus = 1

1.44M 3.5のための集りごとのセクターの数は"フロッピィ1である

b.res_sec = 1;

予約セクターの数= 1

b.fat_copies = 2;

脂肪質のコピーの数= 2

b.root_dir_entry = 224;

指定フロッピー・ディスク= 224のためのルートディレクトリの記入項目の数

b.no_sects = 2880;

ディスクのセクターの数= 2880

b.format_id = 0xF0;

指定フロッピィ= F0 (h)のための媒体のディスクリプターバイト

b.sec_per_fat = 9;

脂肪ごとのセクターの数= 9

b.sec_per_trk = 18;

トラックごとのセクターの数= 18

b.no_sides = 2;

側面の数= 2

b.no_sp_res_sect = 0;

特別な予約セクター(または隠されたセクター)の数= 0

 


Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

 


 

Chapter 14

 
 

page 1 | 2 | 3 | 4 | 5 | 6

Next page

 

 
 
データ回復図書
 
章1 データ回復の概観
章2 ハードディスクの導入
章3 ディスクおよびosへの論理的なアプローチ
章4 ナンバーシステム
章5 cのプログラミングの導入
章6 コンピュータ基本原則への紹介
章7 必要なdosは命じる
章8 ディスクBIOSは作用し、cとの処理を中断する
章9 大きいハードディスクの処理
章10 買収されたフロッピィからのデータ回復
章11 バックアップの作成
章12 プログラミングを用いる読み、変更MBR
章13 プログラミングを用いる読み、変更DBR
章14 「未加工ファイル」回復のためのプログラミング
章15 データワイパーのためのプログラミング
章16 ディスクのためのより多くの実用性の開発
付録 データ回復言葉の語集
 
 
Pro Data Doctor

製品

連絡先の詳細

顧客サポート

ダウンロードのデモ

契約条件

 
Pro Data Doctor