《16位元微处理机系统结构、程式设计及应用》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:刘龙国编译
  • 出 版 社:全华科技图书股份有限公司
  • 出版年份:1976
  • ISBN:
  • 页数:532 页
图书介绍:

1 “我们的问题” 1

1.1 我们如何着手? 1

1.2 为什么要研究这个问题? 2

1.3 问题的更进一步描述 3

1.3-1 控制器的输入 4

1.3-2 控制器的输出 5

1.4 问题的解法 6

1.5 设计的步骤 7

1.5-1 我们要解决什么样的问题? 7

1.5-2 规格 8

1.5-3 发展 10

1.5-4 实际化 13

1.5-5 测试 14

1.5-6 操作 14

1.6 设计周期 15

1.7 我们如何进行 16

1.8 习题 17

2 微处理机 19

2.1 简短的历史 19

2.2 结构 20

2.2-1 文纽曼结构 20

2.2-2 微处理机的结构 23

2.2-3 指令处理 25

2.2-4 堆叠 26

2.3 指令 27

2.3-1 指令种类 28

2.3-2 指令格式 34

2.3-3 定址模式 34

2.4 微算机的其它部份 36

2.4-1 记忆体 36

2.4-2 输入及输出 37

2.4-3 汇流排 38

2.5 程式规划:基本构成概念 39

2.5-1 顺序 40

2.5-2 条件 41

2.5-3 重覆 42

2.6 摘要 43

2.7 习题 44

3 简单的程式与MC68000 49

3.1 MC 68000的特性 51

3.1-1 68000的资源 52

3.1-2 程式规划的模式 54

3.1-3 资料型态 57

3.1-4 定址模式 58

3.1-5 指令集 59

3.2 顺序的例子 62

3.2-1 例题一:将25加到D0中的位元组 63

3.2-2 例题二:两个字相加 65

3.2-3 例题三:两字相加之另一例 66

3.2-4 例题四:三个暂存器中的字相加 68

3.2-5 例题五:将三个在记忆体中的长字相加 70

3.2-6 例题六:乘以5 71

3.2-7 例题七:对记忆体中做减法 72

3.2-8 例题八:字的除法 73

3.3 算术与数值 74

3.3-1 不带正负号的数量 75

3.3-2 二的补数 78

3.3-3 例题九:再将25加到D0中的位元组 81

3.3-4 例题十:字的除法(不带正负号数量) 82

3.4 条件 84

3.4-1 例题十一:重做将D0中的位元组与25相加 86

3.4-2 例题十二:字的比较 87

3.4-3 例题十三:分支程式 88

3.4-4 例题十四:字的选择 90

3.5 摘要 91

3.6 习题 92

4 简单的程式与iAPX 86/10 97

4.1 iAPX 86/10的特性 98

4.1-1 iAPX 86/10的资源 99

4.1-2 程式规划模式 101

4.1-3 资料型态 104

4.1-4 定址模式 105

4.1-5 指令集 105

4.2 顺序的例题 109

4.2-1 例题一:将25加到AL中的位元组 110

4.2-2 例题二:两个字相加 110

4.2-3 例题三:两字相加之另一例 112

4.2-4 例题四:将三个暂存器中的字相加 113

4.2-5 例题五:将记忆体中的三个长字相加 113

4.2-6 例题六:乘以5 114

4.2-8 例题八:字的除法 115

4.2-7 例题七:从记忆体中做减法 115

4.3 算术与数 116

4.3-1 不带正负号的量 117

4.3-2 二的补数 117

4.3-3 例题九:将25加到AL中的位元组 117

4.3-4 例题十:位元组除法(不带正负号的量) 117

4.4 条件 118

4.4-1 例题十一:将25加到AL中的位元组之另一例 120

4.4-2 例题十二:字的比较 121

4.4-3 例题十三:程式分支 122

4.4-4 例题十四:字的选择 123

4.5 摘要 124

4.6 习题 124

5 含回路的程式 129

5.1 简单回路例题 131

5.1-1 例题一:延迟 131

5.1-2 例题二:另一个延迟 132

5.1-3 例题三:执行18次回路 133

5.1-4 例题四:将记忆体中的十个字相加 135

5.1-5 例题五:将记忆体中的十个字相加 137

5.1-6 例题六:将记忆体中的十个字相加 141

5.1-7 例题七:将记忆体中的十个字相加(iAPX 86/10) 144

5.1-8 例题八:搜寻最大值 145

5.2 根据我的方式来做:品质 147

5.2-1 例题九:计算系数 148

5.2-2 例题十:再度计算系数 149

5.2-3 差异处为何? 151

5.3 含有其他出口的回路 153

5.3-1 例题十一:找寻阵列中的第一个$0D 153

5.3-2 例题十二:再找第一个$0D 156

5.3-3 例题十三:加总直到结束记号 158

5.3-4 例题十四:加总直到结束记号(iAPX 86/10) 160

5.4 摘要 163

5.5 习题 165

6 输入/输出控制 169

6.1 I/O控制的方法 170

6.1-1 程式控制的I/O 170

6.1-2 中断驱动I/O 171

6.1-3 直接记忆体存取I/O 173

6.1-4 使用哪一个? 173

6.2 有关中断的一些字汇 174

6.3 MC 68000的中断 175

6.3-1 MC 68000的中断处理 175

6.3-2 MC 68000的自向量 177

6.4 MC 68000的例题 178

6.4-1 例题一:脉波计数器 179

6.4-2 例题二:以中断方式做脉波计数器 182

6.4-3 例题三:输入下一个字元 184

6.4-4 例题四:数字的输入 185

6.5 中断与堆叠 188

6.6-1 例题五:ASCII字母的输入及输出 193

6.6 更进一步的MC 68000例题 193

6.6-2 例题六:送出含同位元的资料 195

6.6-3 例题七:时钟 197

6.7 iAPX 86/10的中断 199

6.7-1 iAPX 86/10的中断处理 200

6.7-2 例题八:送出含同位元的资料(iAPX 86/10) 201

6.7-3 例题九:时钟 204

6.8 摘要 207

6.9 习题 208

7 程式的分段 213

7.1 模组及其他的区块 214

7.2 设计的例题 216

7.3 在组合语言中的技巧 222

7.4 例题 223

7.4-1 例题二:长字的加总 223

7.4-2 例题三:间接式传递的加总 224

7.4-3 例题四:求平均值 226

7.4-4 例题五:再一次求平均值 226

7.4-5 例题六:再一次求出平均值 229

7.4-6 例题七:寻找ASCII字元 232

7.4-7 例题八:二进数平方根 234

7.4-8 例题九:再一次求平均值 239

7.5 LINK及UNLK 241

7.5-1 LINK及UNLK的功能 241

7.5-2 使用LINK及UNLK 244

7.5-3 例题十:汉诺宜塔 246

7.5-4 LINK-UNLK的一些说明 253

7.5-5 iAPX 86/10的Link及Unlink 254

7.6 摘要 257

7.7 习题 258

8 平行介面 263

8.1-1 类比讯号 264

8.1 讯号 264

8.1-2 数位讯号 265

8.2 MC 68000汇流排 267

8.3 Motorola的周边介面配接器(PIA) 272

8.3-1 PIA的结构 273

8.3-2 PIA的连接 276

8.3-3 PIA的程式规划 278

8.3-4 MC 6821 PIA的细节 280

8.3-5 标准的PIA配置 284

8.3-6 应考虑的PIA电气问题 285

8.3-7 例题一:PIA的配置 285

8.4 平行介面的例题 288

8.4-1 例题二:一个简单的开关 288

8.4-2 例题三:电话型的键盘 294

8.4-3 例题四:键盘格子 299

8.4-4 例题五:再次的处理格子键盘 304

8.4-5 例题六:多个七段式显示器 307

8.5 摘要 310

8.6 习题 311

9 串列式介面 315

9.1 串列通讯 317

9.2 iAPX 86/10的汇流排 321

9.2-1 iAPX 86/10的汇流排线 322

9.2-2 iAPX 86/10的最小模式 324

9.2-3 iAPX 86/10的最大模式 325

9.3 Intel 8251A串列式介面 326

9.3-1 8251A的结构 327

9.3-2 8251A的连接 331

9.3-3 8251A的暂存器 333

9.3-4 8251A的程式规划 338

9.4 8251A的例题 338

9.4-1 例题一:接收一个字元 339

9.4-2 例题二:接收一个含同位元的字元 342

9.4-3 例题三:经由ISR接收字元 344

9.4-4 例题四:重新传回修改过的字元 346

9.4-5 例题五:送出讯息 349

9.5 摘要 352

9.6 习题 353

10 资料结构 357

10.1 位元处理 358

10.1-1 例题一:改变位元0 358

10.1-2 例题二:清除低位的半个位元组 359

10.1-3 例题三:整组位元的组合 360

10.1-4 例题四:交换半个位元组 361

10.2 二进码十进数 362

10.2-1 例题五:输入ASCII数字 363

10.2-2 例题六:包装BCD的加法 365

10.2-3 例题七:未包装BCD的加法 368

10.2-4 例题八:未包装BCD的乘法 371

10.2-5 例题九:未包装BCD的除法 373

10.3 字元及字串 374

10.3-1 例题十:字串的输入 375

10.3-2 例题十一:字串长度 378

10.3-3 例题十二:字串拷贝 379

10.3-4 例题十三:字串序连 382

10.3-5 例题十四:取字串的左边 383

10.3-6 例题十五:取字串的右边 385

10.3-7 例题十六:取出字串的中间部份 387

10.3-8 例题十七:子字串 389

10.4 浮点数 392

10.4-1 例题十八:取得浮点数 395

10.4-2 例题十九:储存浮点数 397

10.4-3 例题二十:浮点数正规化 398

10.4-4 例题二十一:浮点数相加 400

10.4-5 例题二十二:浮点数相乘 403

10.5 阵列 405

10.5-1 例题二十三:阵列的加总 405

10.5-2 例题二十四:阵列搜寻 407

10.5-3 例题二十五:二元搜寻 411

10.6 摘要 415

10.7 习题 416

11 完成我们的问题 421

11.1 设计步骤之复习 421

11.2 我们所要解的是什么问题? 422

11.3 规格 422

11.4 设计 425

11.4-1 显示器 426

11.4-2 键盘 429

11.4-3 温度感测器 430

11.4-4 时间源 431

11.4-5 类比-数位转换 431

11.4-6 交流矽控整流器控制 432

11.4-7 PIA接线之使用情形 433

11.4-8 零件明细表 434

11.4-9 资料结构 435

11.5 实际化 438

11.5-1 主程式 439

11.5-2 显示资料 444

11.5-3 读取按键 445

11.5-4 周期及温度 447

11.5-5 时间 453

11.5-6 系统的其余部份 457

11.6 测试 471

11.7 操作 472

11.8 摘要 473

11.9 习题 473

附录A:MC 68000指令集 475

附录B:MC 68000指令集摘要 493

附录C:iAPX 86/10指令集 500

附录D:iAPX 86/10指令集摘要 515

附录E:ASCII码 520

索引 521