タイトル | : ファイル中身の破損 |
投稿日 | : 2023/03/19(日) 16:00 |
投稿者 | : 文太 | 番 号 | : 10666 10655 番 文太 さんへのコメント コメント数 1 |
なぜそんなファイルの壊れ方に気づけるのか? 質問にお答えします。 編集処理をしてファイルサイズがどかっと変化したら、まず気づきます (そのためのバックアップ)。 もっと細かい場合を、現在作成中の_MASTERING TURBO ASSMBLER_ のetext をサンプルに具体的に説明します。etextは、以下のような体裁になっています。 =============== SAMPLE STARTS ================= --------------------- ★タイトルページ MASTERING TURBO ASSMBLER, Second Edition by Tom Swan, SAMS PUBLISHING Copyright 1995 by Tom Swan --------------------- ★目次 Contents ;目次は大事です。全体が掴めます。Windows Program- ;ming も OOP も、ほぼ必要ありませんから。 Part I Programming with Assembly Language 1 Introduction Learning Assembly Language 4 ;ページ数 Advantages of Assembly Language 7 ;いちおう重要 <skip> Index 870 --------------------- ---------------------[End of Page 3]-------------------- ★本文始まり 4 ;オリジナル・ページ ;番号が上にある場合 Learning Assembly Language ;もある。 I remember when I discovered assembly language. The nearest I've come to experiencing the same elation was the day I first balanced a two-wheeler, wiggling my way down our street, my father's thumb no longer snagging my belt, my fear of falling melting like bee's wax in the sun. <skip> ---------------------[End of Page 4]-------------------- ★本文続く <skip, skip, skip> 869 ★890pages ---------------------[End of Page 869]--------------------- ★の本 ★索引 Index Symbols , (commas), macro parameters, 303 ;キーワードと ! (exclamation point), macro string characters, 307 ;ページ数 % (percent sign), expression evaluate operator, 306 ;いちおう重要 %NOLIST command, 331 870 ---------------------[End of Page 870]--------------------- ★索引続く <Index, skip, skip, skip> Z zero (string instructions), 138 890 ---------------------[End of Page 890]--------------------- ★書籍終わり =============== SAMPLE ENDS ================= (0) etextの全体像(構造的骨格)は上のとおり。 (1) 890 ---------------------[End of Page 890]--------------------- は、OCRソフトが自動でつけるページフッタ。 上の行の890が、オリジナル書籍に入っていたページ番号。 これは完成形。ページ番号は化けたり、スペースが入っていたり色々ある。 ページフッタは、中身以外は機械のように正確に付く。 (2) ---------------------[End of Page 3]-------------------- ★本文始まり 4 のように、オリジナル・ページ番号がページの上、前ページフッタの次行に 置かれていることもある。 (3) この [End of Page X] は、最初、現実を反映していないのが普通。Prefaceとかで、 xxiii のようなローマ数字が使われるから。OCRは、pdfの1ページから番号を振る このズレは、手作業あるいは、order.def by mikome で直します。 現在位置がすぐさま確認できないと、オリジナルpdfとの照合が困難になるから。 この照合は、いっぱい必要です。プログラム・リストや表、図は、そもそも データ的に崩れているのが普通。 目次、索引のページ数データ(ふつう健全)が「いちおう重要」なのも、この ページフッタと整合させたいから。キーワードですぐ飛べない場合もある。 (4) (3)の作業が正確に終了したら、「890」の行は削除。要らない情報は、できる かぎり掃除して除去する。もちろん、「890」と「End of Page 890」が正確に一致 していることを確認してから。 (5) しかし編集作業中、いろいろ起こる。だから、>cgrep "End of Page" through filter.def は、頻繁に行う。>cgrep -A1 -B1 "End of Page" (ページフッタ前後行も) も頻繁。 とうぜん ---------------------[End of Page 1]-------------------- ---------------------[End of Page 2]-------------------- ---------------------[End of Page 3]-------------------- なんてのが、永遠と続く結果が得られる。 ^ ここにカーソルをおいて、numchk.defもする。 (6)ガーン! Page 123 - Page 134 が消失してる! Page 231 - Page 239 が Page 155 の前に来てる! 作業前は、健全だったのに! なんで素直にpdfで書籍を書籍として読み、本質であるアセンブラのお勉強に 励まないのですか? pdfは、WinMEでさえ読みづらく、DOSではまったく 読めないからです。検索もジャンプもうまくいかない場合が多い。 あと、あと、あと、テキスト・フェチだからです。機械を使っている =使われているというのが、快感だから。
- No.10666 一括表示へ - コメント元:10655 一括表示へ - [ 返信 ] [引用無し] pre