《微型计算机汇编语言程序设计》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:王月霞编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:1985
  • ISBN:15290·184
  • 页数:466 页
图书介绍:

第一章 引论 1

第一节 机器语言、汇编语言和高级语言 1

一、机器语言 1

二、汇编语言 2

三、高级语言 3

第二节 汇编语言的支持硬件简介 4

一、Z80硬件系统 4

二、Z80 CPU内部寄存器 5

三、CPU状态标志 8

第三节 Z80寻址方式 9

一、立即寻址 9

二、立即扩展寻址 10

三、寄存器寻址 10

四、寄存器间接寻址 10

五、直接寻址 11

六、变址寻址 11

七、相对寻址 12

十、零页寻址 13

八、隐含寻址 13

九、位寻址 13

第四节 Z80指令系统 14

一、数据传送指令和交换指令 14

二、数据块传送和检索指令 29

三、算术运算和逻辑运算指令 33

四、循环和移位指令 42

五、位操作指令 49

六、转移指令、调用和返回指令 52

七、CPU控制指令 56

八、输入/输出指令 57

第五节 汇编语言的约定 58

一、字符 59

二、符号名 59

三、数制 61

四、表达式 61

五、汇编语言语句格式 61

第六节 汇编语言伪指令 63

六、列表文件格式 63

一、设置程序起始地址伪指令ORG 64

二、源程序结束伪指令END 64

三、等值伪指令EQU 64

四、定义标号伪指令DEFL或DL 65

五、定义字节伪指令DEFB或DB 65

六、定义字伪指令DEFW或DW 66

七、保留存储单元伪指令DEFS或DS 66

复习题 66

作业题 67

第二章 程序的基本结构与基本程序的设计 71

第一节 顺序结构与简单程序的设计 71

一、顺序结构举例 71

二、数据存取和交换程序的设计 72

三、简单运算程序的设计 79

第二节 分支结构与分支程序的设计 85

一、分支结构举例 85

二、分支程序的设计 86

三、用地址表实现多向分支 92

四、分支结构程序的一般形式 93

第三节 循环结构和循环程序的设计 94

一、循环结构程序举例 96

二、循环结构程序的组成部分 99

三、循环变量与结束条件 100

四、循环程序的设计 102

五、多重循环 105

一、数据分类传送的程序 110

第四节 基本结构的复合 110

二、累加器A控制的八分支程序 111

三、无符号数比较——寻找一组无符号数的最大数 112

四、统计一组数中负数的个数 114

五、去掉单字节数的前零 116

第五节 程序设计的基本步骤 117

一、分析题目 117

三、程序结构的设计 118

二、确定算法 118

四、编写源程序 121

五、上机汇编与调试 122

复习题 122

作业题 122

第三章 代码转换与定点数运算程序的设计 127

第一节 代码转换程序的设计 127

一、ASCII码转换为BCD码 127

二、ASCII码转换为十六进制码 131

三、ASCII码转换为二进制码 133

四、BCD码转换为ASCII码 135

五、十六进制码转换为ASCII码 136

六、二进制码转换为ASCII码 137

第二节 Z8000微处理机 140

七、二-十进制数与二进制数之间的转换 140

八、十六进制数转换为七段显示代码 142

第二节 定点数加减运算与比较程序的设计 144

一、定点数加、减法运算 144

二、带符号数的比较 145

三、数据块比较 148

第三节 定点乘法运算程序的设计 149

一、单字节无符号二进制乘法运算 149

二、双字节无符号二进制数乘法运算 156

三、单字节带符号二进制数乘法运算 158

四、单字节十进制(BCD)数乘法 163

第四节 定点除法运算程序的设计 167

一、单字节无符号整数除法运算 167

二、双字节无符号数除法运算 171

三、单字节带符号数除法——补码纯小数除法运算 172

复习题 176

作业题 176

第四章 子程序的设计 178

第一节 子程序调用指令与返回指令 180

一、子程序调用指令(CALL) 180

二、返回指令(RET) 181

一、通用性 183

第二节 子程序应具备的特性 183

三、可递归和重入 184

四、使用方便 184

二、可浮动性 184

二、子程序设计举例 185

一、子程序的设计步骤 185

第三节 子程序的设计 185

三、子程序文件编写 187

第四节 参数传送与子程序调用 188

一、用CPU寄存器传送参数的子程序及其调用 189

二、参数放在主程序调用指令之后传送的子程序及其调用 195

三、用堆栈传送参数的子程序及其调用 196

四、用存储器缓冲区传送参数的子程序及其调用 200

第五节 子程序的嵌套与递归 203

一、子程序的嵌套 203

二、子程序的递归 207

第六节 子程序的结构变换 210

一、带有零处理子程序的嵌套程序 212

二、用子程序结构变换的方法实现多向分支的子程序 213

第七节 用重新起动指令RST实现子程序调用 215

作业题 217

复习题 217

第五章 浮点数运算子程序的设计 218

第一节 浮点数运算公用子程序 219

一、浮点数进栈子程序FPSH 221

二、浮点数退栈子程序FPOP 221

三、浮点数存入FACC的子程序FGET 221

四、浮点数从FACC取出的子程序FPUT 222

五、浮点数取补子程序FNEG和FNGX 223

六、使D、C、B寄存器左移一位的子程序RLBD 223

七、使D、C、B寄存器右移一位的子程序RRBD 224

八、浮点数规格化子程序FNOR 224

九、二进制定点整数转换为浮点数子程序FLOT 225

十、浮点数取绝对值子程序FABS 227

第二节 浮点数加法与减法子程序 228

一、浮点数对阶右移子程序FASR 228

二、浮点数加法子程序FADD 229

三、浮点数减法子程序FSUB 229

第三节 浮点数乘法与除法子程序 232

一、浮点数乘除法公用子程序 233

二、浮点数乘法子程序FMUL 233

三、浮点数除法子程序FDIV 235

第四节 浮点数乘方、立方、开方子程序(牛顿迭代法) 237

一、浮点数乘方和立方子程序FSQU和FCUBE 241

二、浮点数平方根子程序FSQT 242

一、公用子程序 246

第五节 浮点数的三角函数子程序 246

二、正弦函数和余弦函数子程序 249

三、正切函数子程序FTAN 253

四、反正切函数子程序FATN 254

第六节 浮点数的对数函数与指数函数子程序 256

一、对数函数子程序FLOG和FLN 256

二、指数函数ex子程序FEXP 261

复习题 267

作业题 267

第一节 数据表 269

第六章 分类与检索 269

第二节 分类 271

一、气泡分类法 271

二、选择分类法 279

三、希尔分类法 282

四、快速分类法 286

五、分类应用举例 290

第三节 检索 291

一、顺序检索 292

二、对分检索 294

三、分块检索 296

四、散列表法 298

作业题 299

第七章 输入/输出程序设计 302

一、与存储器统一编址方式 303

第一节 输入/输出设备选择方式 303

二、外部设备独立编址方式 308

一、直接寻址的I/O指令 309

二、用寄存器C间接寻址的I/O指令 309

第二节 Z80输入输出指令 309

三、数据块输入输出指令 310

第三节 I/O设备与CPU之间传送信息的方式 312

一、直接传送方式 312

二、查询方式 315

四、存储器的直接存取(DMA)方式 319

三、中断方式 319

第四节 Z80计数器/定时器电路CTC 320

一、Z80 CTC结构 320

二、Z80 CTC工作方式 321

三、Z80 CTC程序设计 321

第五节 Z80并行接口电路PIO 323

一、Z80 PIO结构 323

三、控制字 325

二、PIO端口寻址 325

四、Z80 PIO的程序设计 327

第六节 串行通信与Z80串行接口SIO 328

一、串行通信 328

二、Z80 SIO接口简介 331

复习题 343

作业题 344

二、中断源 345

三、中断系统的功能 345

一、中断请求 345

第一节 概述 345

第八章 中断 345

四、中断响应 346

五、优先权中断的实现 348

第二节 Z80的中断系统 348

一、两种中断 348

四、可屏蔽中断的工作方式及其响应 349

二、与Z80中断系统有关的指令 349

三、CPU对非屏蔽中断的响应 349

五、Z80链形中断优先权结构 351

六、Z80中断服务程序的设计 351

第三节 Z80 CTC中断及其服务程序 354

第四节 Z80 PIO中断及其服务程序 357

一、Z80 PIO中断 357

二、Z80 PIO中断服务程序 359

第五节 Z80 SIO中断及其服务程序 362

一、SIO中断源 362

二、中断向量 364

三、Z80 SIO工作状态预置程序 364

复习题 366

作业题 367

第九章 汇编、反汇编等程序简介与汇编语言程序的运行 368

第一节 汇编程序与汇编过程 368

一、汇编程序的类型 368

二、汇编过程 369

第二节 宏指令(MACRO) 374

一、宏定义和宏调用的格式 375

二、宏扩展 378

三、宏指令与子程序的区别 381

四、宏指令的嵌套 382

五、使用宏指令的优点 383

第三节 条件汇编 383

第四节 反汇编 387

第五节 汇编语言程序的运行 388

一、运行汇编语言程序的操作步骤 389

二、TRS-80机的上机操作 391

上机操作实习题 396

第十章 16位微处理器介绍 397

第一节 8086微处理器 397

一、存储器寻址 397

二、8086内部寄存器 399

四、寻址方式 401

三、8086状态标志 401

五、中断 402

六、指令格式 402

七、指令系统 403

一、Z8000的工作方式和类型 410

二、CPU寄存器和状态标志 412

三、存储器寻址方式 415

四、指令系统 417

第三节 M68000微处理器 425

一、M68000 CPU结构 425

二、寻址方式 425

三、软件中断 427

四、跟踪方式 427

五、M68000指令系统 427

附录 429

附录一 ASCII(美国标准信息交换码)表 429

附录二 Z80与8080指令对照表 430

附录三 Z80指令功能表 432

表3-1 标志位操作 432

表3-2 8位传送指令 434

表3-3 16位传送指令 435

表3-4 交换和数据块传送及搜索指令 438

表3-5 8位算术和逻辑运算 440

表3-6 通用算术和CPU控制 441

表3-7 16位算术运算指令 442

表3-8 循环和移位指令 443

表3-9 位操作指令 445

表3-10 转移指令 446

表3-11 调用和返回指令 448

表3-12 输入和输出指令 449

附录四 Z80指令的机器周期表 452

附录五 TRS-80编辑/汇编命令 457

附录六 DEBUG命令 463

参考资料 465