21世纪高等教育计算机规划教材

汇编语言程序设计(第2版)

提供了教学大纲、多媒体课件、课后习题答案等服务资料
分享 推荐 2 收藏 24 阅读 3.2K
刘慧婷 (作者) 978-7-115-44297-0

关于本书的内容有任何问题,请联系 刘博

作者及所在教学团队成员绝大部分为具有博士学位的高校教师,具有多年《汇编语言程序设计》教育和实践经验,本教材力求做到同时面向高校计算机相关专业学生,以及面向计算机领域从业人员,具体说来:
(1)汇编语言是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。汇编语言不像其他大多数的程序设计语言一样被广泛用于程序设计。在今天的实际应用中,它通常被应用在底层,硬件操作和高要求的程序优化的场合。驱动程序、嵌入式操作系统和实时运行程序都需要汇编语言。计算机领域从业人员的零售需求量很大。
(2)《汇编语言程序设计》是计算机科学与技术院系所有专业的必修课,但一般课时非常有限(本校32学时),所以内容要精炼,逻辑性和可读性要求高,如果编排合理,全国高等院校计算机相关专业学生的教材需求量也比较大;
(3)此外本教材为教师提供了教学大纲、多媒体课件、课后习题答案等服务资料,方便教学;

内容摘要

本书主要介绍基于80x86的汇编语言程序设计方法和技术,第1章~第10章为主体部分,包括计算机基本组成结构和指令系统,循环、分支、子程序和宏汇编技术的程序设计;第11章为输入输出的一些典型应用,其中基本每章配有一组实验,共有10组实验题供选用和参考。

目录

第 1章 汇编语言基础知识 1
1.1 汇编语言简介 1
1.1.1 机器语言与汇编语言 1
1.1.2 汇编语言的组成 2
1.1.3 为什么要学习汇编语言 2
1.2 计算机中数据的表示 2
1.2.1 不同进位计数制及其相互转换 2
1.2.2 二进制数和十六进制数的运算 4
1.2.3 带符号数的补码表示 5
1.2.4 补码的加法和减法 6
1.2.5 无符号数的表示 7
1.2.6 字符的表示 7
1.2.7 基本逻辑运算 8
本章小结 9
习题1 9
第 2章 计算机基本原理 10
2.1 计算机系统组成 10
2.2 存储器 11
2.2.1 16位结构的CPU 11
2.2.2 存储器 11
2.2.3 存储器分段 13
2.2.4 逻辑地址 14
2.2.5 CPU对内存的读写操作 15
2.3 中央处理器(CPU)中的寄存器 17
2.3.1 寄存器介绍 17
2.3.2 CS和IP 20
2.3.3 堆栈 20
2.4 外部设备和接口 21
2.5 32位80x86CPU的工作模式 21
习题2 22
实验1 用Debug命令查看寄存器和内存
中的内容 22
第3章 汇编语言程序实例及上机
操作 28
3.1 汇编语言的工作环境 28
3.1.1 汇编语言的系统工作文件 28
3.1.2 进入DOS命令行的方式 29
3.1.3 常用的DOS命令 29
3.2 汇编语言程序实例 31
3.2.1 单个字符的键盘输入与显示输出 31
3.2.2 显示字符串 32
3.3 程序实例的上机步骤 33
3.3.1 编辑——建立ASM源程序文件 33
3.3.2 汇编——产生OBJ二进制目标
文件 34
3.3.3 连接——产生EXE可执行文件 34
3.3.4 LST列表文件 34
3.3.5 程序的运行 36
3.3.6 程序的跟踪和调试 36
3.4 在WIN7系统中执行汇编 39
3.5 几个常用的DOS系统功能调用
(INT 21H) 42
本章小结 44
习题3 44
实验2 上机过程及程序调试 45
第4章 操作数的寻址方式 47
4.1 立即寻址方式 47
4.2 寄存器寻址方式 48
4.3 直接寻址方式 49
4.4 寄存器间接寻址方式 51
4.5 寄存器相对寻址方式 52
4.6 基址变址寻址方式 53
4.7 相对基址变址寻址方式 54
本章小结 55
习题4 56
实验3 不同寻址方式的灵活运用 56
第5章 常用指令系统 61
5.1 数据传送指令 62
5.1.1 通用数据传送指令 62
5.1.2 累加器专用传送指令 65
5.1.3 地址传送指令 67
5.1.4 标志寄存器传送指令 68
5.2 算术运算指令 69
5.2.1 类型扩展指令 69
5.2.2 加法指令 70
5.2.3 减法指令 73
5.2.4 乘法指令 76
5.2.5 除法指令 77
5.2.6 BCD码的十进制调整指令 79
5.3 逻辑与移位指令 81
5.3.1 逻辑指令 81
5.3.2 移位指令 82
5.4 串操作指令 84
5.4.1 MOVS串传送指令 84
5.4.2 CMPS串比较指令 86
5.4.3 SCAS串扫描指令 88
5.4.4 STOS串存入指令 89
5.4.5 LODS从串中取数指令 90
5.5 程序转移指令 91
5.5.1 无条件转移指令与程序的可
重新定位 91
5.5.2 条件转移指令 93
5.5.3 循环指令 96
本章小结 97
习题5 97
实验4 算术及位串处理程序 100
第6章 伪指令与源程序格式 101
6.1 伪指令 101
6.1.1 处理机选择伪指令 101
6.1.2 段定义伪指令 101
6.1.3 程序开始和结束伪指令 103
6.1.4 数据定义与存储器单元分配
伪指令 103
6.1.5 类型属性操作符 105
6.1.6 THIS操作符和LABEL伪操作 105
6.1.7 表达式赋值伪指令“EQU”
和“=” 106
6.1.8 汇编地址计数器$与定位伪指令 106
6.1.9 基数控制伪指令 108
6.1.10 过程定义伪指令 108
6.2 语句格式 109
6.2.1 名字项和操作项 109
6.2.2 表达式和操作符 109
6.3 EXE文件与COM文件 112
6.3.1 程序段前缀PSP 112
6.3.2 COM文件 114
本章小结 115
习题6 115
实验5 伪指令 117
第7章 分支与循环程序设计 119
7.1 分支程序设计 119
7.1.1 分支程序结构 119
7.1.2 单分支程序 120
7.1.3 复合分支程序 121
7.1.4 多分支程序 123
7.2 循环程序设计 125
7.2.1 循环程序结构 125
7.2.2 计数循环程序 126
7.2.3 条件循环程序 127
7.2.4 条件计数循环程序 129
7.2.5 多重循环程序 131
本章小结 132
习题7 132
实验6 分支程序设计 134
实验7 循环程序设计 134
第8章 子程序设计 135
8.1 子程序结构 135
8.1.1 子程序调用指令 135
8.1.2 过程定义与过程结构 136
8.1.3 保存和恢复现场寄存器 138
8.2 子程序的参数传递 138
8.2.1 用寄存器传递参数 139
8.2.2 用变量传递参数 142
8.2.3 用地址表传递参数的通用
子程序 144
8.2.4 用堆栈传递参数的通用子程序 147
8.2.5 用结构变量传递参数的通用
子程序 151
8.3 多模块程序设计 154
8.3.1 多模块之间的参数传递 154
8.3.2 显示十进制数的通用模块 156
8.3.3 C语言程序调用汇编语言
子程序 159
本章小结 160
习题8 160
实验8 子程序设计和多模块程序设计 161
第9章 宏汇编及其他伪
操作 163
9.1 宏汇编 163
9.1.1 宏定义、宏调用和宏展开 163
9.1.2 宏定义的嵌套 166
9.1.3 宏定义中使用宏调用 167
9.1.4 带间隔符的实参 167
9.1.5 连接操作符& 168
9.1.6 宏替换操作符% 168
9.1.7 LOCAL伪操作 169
9.1.8 使用宏库文件 170
9.2 其他伪操作 173
9.2.1 PURGE伪操作 173
9.2.2 列表伪操作 173
9.2.3 重复汇编 173
9.2.4 条件汇编 176
习题9 178
实验9 宏汇编程序设计 179
第 10章 输入/输出和中断 180
10.1 外部设备与输入/输出 180
10.1.1 I/O 端口 180
10.1.2 I/O的数据传送控制方式 182
10.2 中断 184
10.2.1 中断的概念 184
10.2.2 中断向量表 187
10.2.3 中断过程 189
10.2.4 中断调用指令 189
10.3 中断处理程序设计 190
10.3.1 中断处理程序的基本功能 190



10.3.2 中断处理程序设计举例 191
本章小结 193
习题10 193
实验10 中断程序设计 194
第 11章 输入/输出应用 195
11.1 可编程定时器 195
11.1.1 可编程定时器工作原理 195
11.1.2 定时器驱动扬声器发声 197
11.1.3 通用发声程序 198
11.1.4 乐曲程序 201
11.2 键盘调用 202
11.2.1 字符码与扫描码 202
11.2.2 键盘中断调用 203
11.2.3 键盘缓冲区 205
11.3 显示器的文本方式显示 206
11.3.1 显示方式 206
11.3.2 显示存储器与直接写屏 208
11.3.3 BIOS调用 209
11.4 显示器的图形方式显示 214
11.4.1 图形存储器 214
11.4.2 直接视频显示 215
11.4.3 BIOS功能视频显示 216
11.5 磁盘文件存取 218
习题11 223
实验11 输入/输出程序设计 223
附录1 80x86指令系统一览 224
附录2 伪操作与操作符 238
附录3 中断向量地址一览 251
附录4 DOS系统功能调用
(INT 21H) 253
附录5 BIOS功能调用 261
附录6 Windows 104键键盘
扫描码 266
参考文献 268

读者评论

  • 我是一名高职院校计算机学院的教师,我9月份开学就要上这本书,请问此书有授课的视频讲解吗?谢谢

    15327286310发表于 2018/8/15 20:27:41
    • 您好,本书有配套教学大纲、PPT及课后习题答案,没有视频讲解资源。

      人邮教育专员发表于 2018/8/16 14:51:37

我要评论

作者介绍

刘慧婷 博士,安徽大学计算机科学与技术学院副教授,主要研究项目及领域: 数据挖掘,教学经验丰富。其余作者都为安徽大学计算机科学与技术学院老师。

推荐用户

同系列书

  • Access数据库实用教程习题与实验指导(微课版 第3版)

    郑小玲 主编 张宏 卢山 旷野 编著

    本书是《Access数据库实用教程(微课版 第3版)》一书的配套教材,全书分为“习题解析篇”“实验指导篇”“实...

    ¥49.80
  • Access数据库实用教程(微课版 第3版)

    郑小玲 主编 张宏 卢山 旷野 编著

    本书以应用为目的,以案例为引导,系统地介绍了Access 2016的主要功能和使用方法。全书共有9章,包括Ac...

    ¥59.80
  • Access 数据库应用教程

    李军

    本书主要内容包括数据库基础知识、Access数据库概述、Access数据库的基本操作、表结构的设计、查询设计、...

    ¥45.00
  • Access 2010数据库教程(微课版)

    苏林萍

    本书通过“学生成绩管理”数据库案例,从建立Access 2010空数据库开始,逐步建立数据库中的表、查询、窗体...

    ¥49.80
  • 计算机网络基础

    何凯霖、陈轲

    本书内容丰富,结构合理,按照传统的网络体系结构进行讲解。共分8章,分别是第1章 计算机网络概述,第2章 物理层...

    ¥39.80

购买本书用户

相关图书

  • Java基础案例教程(第3版)

    本书为Java基础入门教材,适合初学者使用。全书共13章,第1~2章主要讲解Java技术的一些基础知识,内容包...

    ¥59.80
  • Python快速编程入门(第3版)

    本书以PyCharm为主要开发工具,采用理论与实训案例相结合的编写方式,系统地讲解Python的相关知识。本书...

    ¥59.80
  • Python编程基础(项目式微课版)

    王健

    本书根据高等院校应用技术型人才培养的目标编写,适合案例学习和模块化教学相结合的教学方式。本书以真实企业开发案例...

    ¥56.00
  • 数据库原理(微课版)

    郭玉彬 宋歌 边山

    本书依据教育部《普通高等学校本科专业类教学质量国家标准》,以新工科背景下加快培养计算机类工程人才为目标,构建了...

    ¥69.80
  • 数据结构(C语言版)(第3版)

    李冬梅 严蔚敏

    本书在选材与编排上,贴近当前普通高等院校“数据结构”课程的现状和发展趋势,符合最新研究生考试大纲,内容难度适度...

    ¥59.80
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部