出版说明 2
前言 2
基础篇 2
第1章 硬盘的物理结构 2
1.1 低级格式化 2
目录 2
1.2 分区 3
1.3 高级格式化 4
第2章 硬盘的数据结构 5
2.1 主引导记录 5
2.2 分区表 9
2.3 分区引导记录 12
2.3.1 FAT16分区格式的BPB表 12
2.3.2 FAT32分区格式的BPB表 15
2.3.3 备份分区表和引导记录 17
2.4.1 扇区分簇管理 18
2.4.2 簇链和文件检索过程 18
2.4 文件分配表FAT 18
2.4.3 FAT表扇区寻址 19
2.5 文件目录表FDT 21
2.6 数据区DATA 23
第3章 程序开发环境Borland C++3.1 25
3.1 安装Borland C++3.1 25
3.2 设置和使用Borland C++3.1 25
3.2.1 汇编源程序的编译和连接 25
3.2.2 C源程序的编译和连接 26
第4章 硬盘的容量与接口 27
4.1 ATA接口 27
4.2 基本INT13H接口 28
4.3 扩展INT13H接口 29
第5章 基本INT13H中断调用 30
5.1 汇编语言调用基本INT13H中断 30
5.2 C语言调用基本INT13H中断 31
第6章 扩展INT13H中断调用 33
6.1 磁盘地址数据包的组成 33
6.2 扩展INT13H中断调用方法 34
6.3 C调用汇编子程序的有关规则 35
6.4 书写格式和现场保护 38
6.5 参数传递 39
6.6 C调用汇编子程序例程 40
6.6.1 C主程序分析 40
6.6.2 汇编子程序分析 42
6.6.3 程序编译、连接和运行 43
7.1 FAT16分区的扇区分配 46
第7章 FAT16分区详解 46
7.2 使用基本INT13H中断的计算方法 47
7.3 使用扩展INT13H中断的计算方法 50
7.4 簇链寻址和计算方法 50
7.5 实例分析 51
第8章 FAT32分区详解 55
8.1 FAT32分区的扇区分配 55
8.2 簇链寻址实例分析 57
9.1 建立汉字库头文件程序 63
第9章 汉字显示程序 63
工具篇 63
9.1.1 源程序清单 65
9.1.2 源程序解释 67
9.1.3 程序编译和运行 67
9.2 屏幕显示汉字程序 70
9.2.1 源程序清单 70
9.2.2 源程序解释 72
9.2.3 程序编译 72
9.3.1 源程序清单 73
9.3 字符处理程序 73
9.3.2 源程序解释 74
9.3.3 程序编译 74
9.4 Borland C++3.1的工程文件连接 75
第10章 基本INT13H读扇区程序 76
10.1 读扇区汇编程序 76
10.1.1 源程序清单 76
10.1.2 源程序解释 78
10.2.1 源程序清单 79
10.1.3 程序编译和运行 79
10.2 读扇区C程序 79
10.2.2 源程序解释 80
10.2.3 程序编译和运行 81
10.3 汉字显示读扇区C程序 82
10.3.1 主源程序清单 82
10.3.2 主源程序解释 83
10.3.3 主程序编译 84
10.3.4 建立工程文件并完成连接 85
第11章 基本INT13H写扇区程序 86
11.1 写扇区汇编程序 86
11.1.1 源程序清单 86
11.1.2 源程序解释 87
11.1.3 程序编译和运行 88
11.2 写扇区C程序 88
11.2.1 源程序清单 88
11.2.3 程序编译和运行 89
11.2.2 源程序解释 89
11.3 汉字显示写扇区C程序 90
11.3.1 主源程序清单 90
11.3.2 主源程序解释 93
11.3.3 主程序编译 93
11.3.4 建立工程文件并完成连接 93
12.1 多功能C程序 94
12.1.1 源程序清单 94
第12章 基本INT13H多功能程序 94
12.1.2 源程序解释 98
12.2 汉字显示多功能C程序 99
12.2.1 主源程序清单 99
12.2.2 主源程序解释 106
12.2.3 汉显程序编译和连接总结 106
第13章 读扇区文件程序 107
13.1 读扇区文件C程序 107
13.1.1 源程序清单 107
13.2 汉字显示读扇区文件C程序 109
13.2.1 主源程序清单 109
13.1.2 源程序解释 109
13.2.2 主源程序解释 113
第14章 扇区文件字节编辑程序 115
14.1 字节编辑C程序 115
14.1.1 源程序清单 115
14.1.2 源程序解释 116
14.2 汉字显示字节编辑C程序 117
14.2.1 主源程序清单 117
14.2.2 主源程序解释 121
第15章 扇区文件块复制程序 123
15.1 块复制C程序 123
15.1.1 源程序清单 123
15.1.2 源程序解释 125
15.2 汉字显示块复制C程序 126
15.2.1 主源程序清单 126
15.2.2 主源程序解释 132
16.1.1 源程序清单 134
16.1 文件比较C程序 134
第16章 扇区文件比较程序 134
16.1.2 源程序解释 135
16.2 汉字显示文件比较C程序 135
16.2.1 主源程序清单 135
16.2.2 主源程序解释 140
16.2.3 扩充汉字头文件 140
17.10 磁道监视C程序 145
17.1.1 源程序清单 145
第17章 0磁道63个扇区监视程序 145
17.1.2 源程序解释 146
17.2 汉字显示0磁道监视C程序 147
17.2.1 主源程序清单 147
17.2.2 主源程序解释 150
第18章 扩展INT13H读扇区程序 151
18.1 两种INT13H中断的比较 151
18.2 扩展读扇区汇编程序 151
18.2.1 源程序清单 152
18.2.2 源程序解释 153
19.1 汇编源程序清单 154
第19章 扩展INT13H写扇区程序 154
19.2 源程序解释 155
第20章 C调用汇编读扇区程序 156
20.1 C主程序 156
20.1.1 主源程序清单 156
20.1.2 主源程序解释 157
20.2 汇编子程序 158
20.2.1 子源程序清单 158
20.2.2 子源程序解释 159
20.3 程序编译和连接 160
20.4 汉字显示C主程序 161
20.4.1 主源程序清单 161
20.4.2 主源程序解释 164
20.4.3 程序编译和连接 164
第21章 C调用汇编写扇区程序 165
21.1 C主程序 165
21.1.1 主源程序清单 165
21.2.1 子源程序清单 166
21.1.2 主源程序解释 166
21.2 汇编子程序 166
21.2.2 子源程序解释 168
21.3 程序编译和连接 168
21.4 汉字显示C主程序 168
21.4.1 主源程序清单 168
21.4.2 主源程序解释 172
21.4.3 程序编译和连接 173
22.1.1 主源程序清单 174
22.1 C主程序 174
第22章 C调用汇编多功能程序 174
22.1.2 主源程序解释 181
22.1.3 程序编译和连接 181
22.2 汉字显示C主程序 182
22.2.1 主源程序清单 182
22.2.2 主源程序解释 195
22.2.3 程序编译和连接 195
23.1.1 主源程序清单 196
第23章 查找分区表和引导扇区程序 196
23.1 C主程序 196
23.1.2 主源程序解释 199
23.13 程序编译和连接 200
23.2 汉字显示C主程序 200
23.2.1 主源程序清单 200
23.2.2 主源程序解释 206
23.2.3 程序编译和连接 206
24.1.1 主源程序清单 208
24.1 C主程序 208
第24章 备份分区表和引导扇区程序 208
24.1.2 主源程序解释 211
24.1.3 程序编译和连接 212
24.2 汉字显示C主程序 212
24.2.1 主源程序清单 212
24.2.2 主源程序解释 217
24.2.3 程序编译和连接 217
25.1.1 主源程序清单 218
25.1 C主程序 218
第25章 查找FAT表程序 218
25.1.2 主源程序解释 222
25.1.3 程序编译和连接 222
25.2 汉字显示C主程序 222
25.2.1 主源程序清单 222
25.2.2 主源程序解释 228
25.2.3 程序编译和连接 228
26.1.1 主源程序清单 229
26.1 C主程序 229
第26章 查找文件目录登记项程序 229
26.1.2 主源程序解释 233
26.1.3 程序编译和连接 234
26.2 汉字显示C主程序 234
26.2.1 主源程序清单 234
26.2.2 主源程序解释 240
26.2.3 程序编译和连接 240
27.1 汇编子程序 242
27.1.1 源程序清单 242
第27章 查看扇区数据程序 242
27.1.2 源程序解释及编译 243
27.2 C主程序 244
27.2.1 主源程序清单 244
27.2.2 主源程序解释 247
27.2.3 程序编译和连接 247
27.3 汉字显示C主程序 247
27.3.1 主源程序清单 247
27.3.3 程序编译和连接 253
27.3.2 主源程序解释 253
第28章 读物理扇区恢复文件程序 254
28.1 C主程序 254
28.1.1 主源程序清单 254
28.1.2 主源程序解释 255
28.1.3 程序编译和连接 256
28.2 汉字显示C主程序 256
28.2.1 主源程序清单 256
28.2.3 程序编译和连接 258
28.2.2 主源程序解释 258
第29章 剪切文件程序 259
29.1 C程序 259
29.1.1 源程序清单 259
29.1.2 源程序解释和编译连接 260
29.2 汉字显示C主程序 260
29.2.1 主源程序清单 260
29.2.2 主源程序解释和编译连接 262
第30章 分解DISKMAN数据文件程序 263
30.1 C程序 263
30.1.1 源程序清单 263
30.1.2 源程序解释和编译连接 264
30.2 汉字显示C主程序 264
30.2.1 主源程序清单 264
30.2.2 主源程序解释和编译连接 267
第31章 工具程序的运行环境和程序优化 268
31.1 在软盘上运行工具程序 268
31.3 程序优化 269
31.2 挂接两个硬盘 269
应用篇 271
第32章 如何修复主引导记录 271
第33章 如何修复分区表 275
第34章 如何修复分区引导记录 278
第35章 使用物理扇区读写技术编写硬盘锁 281
35.1 硬盘序列号处理程序 282
35.1.1 源程序清单 282
35.1.2 源程序解释和编译连接 283
35.2 密钥处理程序 285
35.2.1 源程序清单 285
35.2.2 源程序解释和编译连接 286
35.3 硬盘锁程序 286
35.3.1 主源程序清单 286
35.3.2 主源程序解释 302
35.3.3 程序编译和连接 303
35.3.4 程序运行和运行环境 304
35.4.1 缩减汉字库提高运行速度 305
35.4 汉字显示硬盘锁程序 305
35.4.2 汉字硬盘锁主源程序清单 308
35.4.3 主源程序解释 325
35.4.4 程序编译和连接 325
第36章 使用工具程序恢复硬盘文件 326
36.1 查找文件目录登记项并读取有关数据 326
36.2 查找分区引导记录和分区表并读取有关数据 328
36.3 查找两个FAT表验证有关数据 330
36.4 查看FAT表并计算第二簇的有关数据 331
36.5 恢复文件数据 332
第37章 物理扇区读写技术的其他应用 334
37.1 从0磁道数据变化看软件的隐藏机密 334
37.2 物理扇区读写技术的其他应用 337
附录 338
附录A ASCII码表 338
附录B 8086汇编技术资料 339
附录C 基本INT13H中断功能 346
附录D 扩展INT13H中断部分功能 349
附录E DOS功能调用 350
附录F C语言部分库函数 354