fseek(fp,pinakas[256]*y,SEEK_SET);
fread(pinakas,sizeof (pinakas[256]),1,fp);
for(p=0 ; p<256 ; p++)
printf(" %d",pinakas[p]);
ここで何が問題なのですか?同じ数値を出力するたびに... y は値を変更する int です。fpでバイナリファイルを開きます...そしてこれを取ります:
-120 36 -83 -5 0 -64 121 -73 0 -64 121 -73 0 -64 121 -73 0 -64 121 -73 0 -64 121 -73 0 -64 121 -73 0 -64 121 -73 0 64 122 -73 0 0 0 0 0 0 0 0 0 0 0 0 8 16 43 9 4 0 0 0 0 0 0 0 0 0 0 0 8 18 43 9 0 0 0 0 0 0 0 0 0 0 0 20 18 43 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -128 122 -107 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
論理アドレスを取得し、それを物理アドレスに変換します。次に、バイナリ ファイルから 256 バイトのページを取得し、物理メモリに格納する必要があります。ここの「y」はページ番号です。したがって、fseek を使用してバイナリ ファイル内の特定のページと fread を使用して読み取り、pinakas[256] に保存します。