《8088组合语言与KSAM应用实例》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:
  • 出 版 社:
  • 出版年份:2222
  • ISBN:
  • 页数:0 页
图书介绍:

第一部份 IBM PC基本观念的介绍 1

第一章 绪论 3

第二章 组合语言程式 5

2-1前言 5

2-2电子式的资料表示法 5

2-2-1二进位 5

2-2-2十六进位 6

2-2-3二的补数 6

2-2-4 ASCII码 7

2-3原始叙述 7

2-3-1常数 7

2-3-2变数 9

2-3-3组合语言指令 10

2-3-4虚拟操作码 11

2-3-5运算子 20

2-4撰写程式的步骤 23

2-4-1程式说明 23

2-4-2程式编辑 24

2-4-3编译程式 25

2-4-4原始程式列示档 25

2-4-5程式对照表 27

2-4-6程式联结 27

2-5结语 28

第三章 8088结构 29

3-1前言 29

3-2 PC系统主机板 29

3-2-1主机板方块图 30

3-2-2主记忆体 32

3-2-3系统支援装置 34

3-2-3-1 8259中断控制器 35

3-2-3-2 8255可程式周边界面 37

3-2-3-3 8253计时器 39

3-3 8088结构 41

3-3-1 8088方块图与暂存器组 41

3-3-2进一步探讨8088方块图 44

3-3-2-1指令流位元组伫列 44

3-3-2-2执行单元控制系统 44

3-3-2-3记忆体管理 45

3-3-3旗标 46

3-3-4 8088与8086比较 48

3-3-5 8086/8088与Z8000及MC 68000比较 48

3-4记忆体 51

3-4-1记忆位址分节法 51

3-4-2堆叠运算 53

3-5结语 56

第四章 8088定址方式 57

4-1前言 57

4-2 8088指令格式 58

4-3程式定址方式 62

4-3-1程式相对定址法 62

4-3-2直接定址法 63

4-3-3间接定址法 63

4-4资料定址方式 63

4-4-1立即定址法 63

4-4-2暂存器定址法 64

4-4-3暂存器间接定址法 65

4-4-4直接定址法 65

4-4-5隐含式定址法 66

4-4-6索引定址法 67

4-4-7基底定址法 68

4-4-8堆叠定址法 69

4-5结语 69

第五章 8088指令集 71

5-1前言 71

5-2指令集泛论 72

5-2-1记忆体运算元 72

5-2-2分节凌越 72

5-2-3暂存器运算元 73

5-2-4立即运算元 73

5-3指令集之架构 73

5-3-1资料转移指令 73

5-3-2算术与逻辑运算指令 75

5-3-3旋转、移位指令 76

5-3-4字串处理指令 77

5-3-5控制转移与处理机控制指令 78

5-3-6特殊指令 79

5-4结语 79

第六章 DOS与BIOS 81

6-1前言 81

6-2 OS的目的与功能 82

6-3 DOS 83

6-3-1 DOS的结构 83

6-3-2 DOS命令的型态 84

6-3-3 DOS命令的使用 85

6-3-4 DOS的记忆配置图 88

6-4 BIOS 89

6-5结语 92

第二部份 IBM PC组合语言指令集与应用实例 95

第七章 虚拟操作指令 101

7-1前言 101

7-2资料虚拟指令(Data Pseudo-ops) 102

7-2-1 ASSUME设定虚拟指令 102

7-2-2 COMMENT说明虚拟指令 103

7-2-3 DB位元组定义 104

7-2-4 DD双字组定义 104

7-2-5 DQ 8位元组定义 105

7-2-6 DT 10位元组定义 105

7-2-7 DW字元组定义 106

7-2-8 END程式终结 106

7-2-9 EQU共值 107

7-2-10 =等值 107

7-2-11 EVEN偶数边界 108

7-2-12 EXTRN外部引用 108

7-2-13 GROUP群体定义 109

7-2-14 INCLUDE引进程式 110

7-2-15 LABEL符号定义 111

7-2-16 NAME名称定义 111

7-2-17 ORG程式计数器调整 112

7-2-18 PROC程序定义 112

7-2-19 PUBLIC程式外部引用 113

7-2-20 RADIX基底更换 113

7-2-21 RECORD录的定义 114

7-2-22 SEGMENT分节定义 115

7-2-23 STRUC结构定义 116

7-3条件虚拟指令(Conditional Pseudo-ops) 116

7-4巨集语言虚拟指令(MACRO Pseudo-ops) 117

7-5印表虚拟指令(Listing Pseudo-ops) 118

7-5-1 118

7-5-2 119

7-5-3 119

7-5-4 119

7-5-5 119

7-5-6 119

7-5-7 120

7-6结语 120

第八章 资料转移指令集 121

8-1前言 121

8-2一般用途指令 121

8-2-1 MOV 121

8-2-2 PUSH 127

8-2-3 POP 130

8-2-4 XCHG 132

8-2-5 XLAT 134

8-3输入输出指令 136

8-3-1 IN 136

8-3-2 OUT 137

8-4位址转移指令 138

8-4-1 LEA 138

8-4-2 LDS 139

8-4-3 LES 140

8-5旗标转移指令 141

8-5-1 LAHF 141

8-5-2 SAHF 141

8-5-3 PUSHF 142

8-5-4 POPF 142

8-6程式范例 143

8-6-1范例一 144

8-6-2范例二 145

第九章 算术与逻辑运算指令集 149

9-1前言 149

9-2算术运算 149

9-2-1加法指令 150

9-2-2减法指令 155

9-2-3乘法指令 161

9-2-4除法指令 163

9-2-5比较指令 166

9-3逻辑指令 167

9-3-1 AND指令 168

9-3-2 NOT指令 169

9-3-3 OR指令 170

9-3-4 XOR指令 171

9-3-5 TEST指令 172

9-4程式范例 174

9-4-1范例一 174

9-4-2范例二 175

9-4-3范例三 175

9-4-4范例四 175

9-4-5范例五 176

第十章 移位与旋转指令集 179

10-1前言 179

10-2移位指令 180

10-2-1 SHL与SAL指令 180

10-2-2 SHR指令 181

10-2-3 SAR指令 182

10-3旋转指令 182

10-3-1 ROL指令 182

10-3-2 ROR指令 183

10-3-3 RCL指令 184

10-3-4 RCR指令 185

10-4程式范例 186

10-4-1范例一 186

10-4-2范例二 187

第十一章 控制转移与处理机控制指令集 189

11-1前言 189

11-2控制转移指令 190

11-2-1无条件控制转移指令 190

11-2-2条件控制转移指令 195

11-2-3回圈控制转移指令 205

11-3处理机控制指令 209

11-3-1 CLC指令 209

11-3-2 CLD指令 209

11-3-3 CLI指令 210

11-3-4 CMC指令 210

11-3-5 STC指令 210

11-3-6 STD指令 211

11-3-7 STI指令 211

11-3-8 HLT指令 211

11-4程式范例 212

11-4-1范例一 212

11-4-2范例二 213

11-4-3范例三 214

11-4-4范例四 216

11-4-5范例五 217

11-4-6范例六 217

11-4-7范例七 218

第十二章 字串处理指令集 221

12-1前言 221

12-2字串处理指令之定址方式 221

12-3字串处理指令 222

12-3-1字串转移指令(MOVS) 224

12-3-2字串比较指令(CMPS) 225

12-3-3字串扫瞄指令(SCAS) 226

12-3-4字串载入指令(LODS) 228

12-3-5字串储存指令(STOS) 229

12-3-6重复前置指令(REP) 230

12-4字串指令的运用 231

12-4-1 MOVS的运用 231

12-4-2 CMPS的运用 232

12-4-3 SCAS的运用 234

12-4-4 LODS的运用 235

12-4-5 STOS的运用 235

12-5程式范例 236

12-5-1范例一 236

12-5-2范例二 236

12-5-3范例三 237

12-5-4范例四 238

第十三章 特殊指令与巨集语言虚拟操作指令 241

13-1前言 241

13-2特殊指令 241

13-2-1 WAIT 241

13-2-2 ESC 242

13-2-3 LOCK 242

13-2-4 NOP 243

13-3巨集语言虚拟操作指令 244

13-3-1 MACRO巨集定义 244

13-3-2 PURGE消除巨集定义 245

13-3-3 LOCAL巨集内指标 246

13-3-4 REPT重复区块 246

13-3-5 IRP不定重复区块 246

13-3-6 IRPC不定重复字元 247

13-3-7 ENDM 247

13-3-8 EXITM巨集定义出口 248

13-3-9巨集虚拟指令特殊字元 248

13-4程式范例 250

13-4-1范例一 250

13-4-2范例二 251

13-4-3范例三 252

13-4-4范例四 253

13-4-5范例五 253

13-4-6范例六 257

13-4-7范例七 259

13-4-8范例八 260

13-4-9范例九 262

第十四章 资料结构 265

14-1前言 265

14-2列串 266

14-2-1增加资料 266

14-2-2寻找资料 267

14-2-3删除资料 268

14-2-4资料排序 269

14-3有序列串 271

14-4表格结构 273

14-4-1某限定范围之函数运算 273

14-4-2固定码的转换 273

14-4-3储存副程式位址 274

14-5连接列串 274

14-6程式范例 276

14-6-1范例一 276

14-6-2范例二 277

14-6-3范例三 279

14-6-4范例四 282

14-6-5范例五 284

14-7结语 285

第十五章 磁碟I/O 287

15-1前言 287

15-2磁碟的基本观念 287

15-3系统呼叫:中断与功能请求 289

15-3-1档案控制区(FCB) 290

15-3-2扩充档案控制区 292

15-3-3目录项目(Directory Entry) 292

15-3-4中断(Interrupt) 294

15-3-5功能请求(Function Requests) 294

15-4经由DOS出入磁碟装置 298

15-4-1功能请求1AH——设定DTA 302

15-4-2功能请求0FH——档案的开用 302

15-4-3功能请求10H——档案的关闭 303

15-4-4功能请求14H——循序读取 304

15-4-5功能请求15H——循序写入 305

15-4-6功能请求21H——随机读取 305

15-4-7功能请求22H——随机写入 306

15-5经由BIOS出入磁碟装置 307

15-6程式范例 309

第十六章 BIOS 317

16-1前言 317

16-2 BIOS的结构简介 317

16-2-1开机后的系统自我测试(Power—On Self—Test,POST) 320

16-2-2系统馈入程式 321

16-3 BIOS的使用 321

16-4程式范例 328

16-4-1范例一 328

16-4-2范例二 329

第十七章 综合程式范例 333

17-1前言 333

17-2范例一:资料转移实例 333

17-3范例二:字串处理实例 336

17-4范例三:循序资料档I/O实例 339

17-5范例四:BIOS应用实例 343

17-6范例五:堆叠模拟实例 348

17-7范例六:功能请求(INT 21)应用实例 353

17-8范例七:键盘控制实例 357

17-9范例八:档案的处理(产生与加入资料记录) 362

17-10范例九:档案的处理(修正与删除资料记录) 370

17-11范例十:运算式翻译及执行模拟程式 379

第三部份 实务应用——KSAM之设计 391

第十八章 BASIC直译器之界面 393

18-1前言 393

18-2副程式记忆区之配置 394

18-3将副程式载入记忆区之方法 395

18-3-1由BASIC程式控制 395

18-3-2利用DEBUG(侦错程式)将副程式置于记忆区内 396

18-3-3由磁片上直接将程式载入记忆体内 397

18-4 BASIC程式呼叫副程式的方法 398

18-4-1相关的注意事项 398

18-4-2利用CALL呼叫副程式 399

18-4-3利用USR呼叫副程式 399

18-5传递大量资料之方法 400

第十九章 KSAM简介 403

19-1前言 403

19-2系统架构 403

19-3 KSAM资料结构 406

19-3-1什么是KSAM FILE的定义 406

19-3-2档案结构 406

19-3-3 DATA FILE与KEY FILE之间的关系 411

19-4 BASIC与KSAM的界面 414

19-5 KSAM工作区 414

19-6功能呼叫与参数传递 418

19-7结语 419

第二十章 KSAM主体 421

20-1前言 421

20-2功能呼叫解析器 422

20-3建立档案——CREATE 433

20-4复制档案——COPY 435

20-5消除档案——SCRATCH 437

20-6重新命名——RENAME 439

20-7开启档案——OPEN 441

20-8加入资料——ADD 444

20-9读取特定笔资料——FIND 448

20-10读取第一笔资料——FIRST 452

20-11读取前一笔资料——PREVIOUS 454

20-12读取下一笔资料——NEXT 458

20-13读取最后一笔资料——LAST 462

20-14更新资料——REPLACE 464

20-15删除资料——DELETE 467

20-16建立读取路径——BUILDK 472

20-17更改读取路径——START 472

20-18消除资料的读取路径——DELETEK 475

20-19关闭档案——CLOSE 477

第二十一章 支援副程式 481

21-1前言 481

21-2 COMPARE 481

21-3 COMPARE1 483

21-4 CHKDUP 484

21-5 CHKKEY 486

21-6 DATE_TIME 488

21-7 DEFKEY 490

21-8 ENDDUP 493

21-9 EXPDAT 495

21-10 EXPKEY 497

21-11 EXPDUP 499

21-12 FREEDUP 501

21-13 FREEKEY 505

21-14 GETDAT 506

21-15 GETDUP 508

21-16 GETKEY 509

21-17 MOVTOBAS 511

21-18 MOVNM 513

21-19 NEWBLK 515

21-20 PATH1 517

21-21 PATH2 519

21-22 READATA 521

21-23 READKEY 523

21-24 RETURN 525

21-25 SERKEY 526

21-26 WRTDAT 528

21-27 WRTKEY 530

21-28结语 532

第二十二章 应用实例 533

22-1前言 533

22-2选择画面 536

22-3新增/修改/删除资料 538

22-4检核资料 548

22-5结语 552

参考书籍 553