首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 图书频道 > 计算机与网络 > 程序设计 >

汇编语言程序设计(附1张学习卡)

2010-04-30 
基本信息·出版社:高等教育出版社 ·页码:368 页 ·出版日期:2008年01月 ·ISBN:7040106744 ·条形码:9787040106749 ·版本:第1版 ·装帧:平装 · ...
商家名称 信用等级 购买信息 订购本书
汇编语言程序设计(附1张学习卡) 去商家看看
汇编语言程序设计(附1张学习卡) 去商家看看

 汇编语言程序设计(附1张学习卡)


基本信息·出版社:高等教育出版社
·页码:368 页
·出版日期:2008年01月
·ISBN:7040106744
·条形码:9787040106749
·版本:第1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:新世纪网络课程教材

内容简介 《汇编语言程序设计》是教育部新世纪网络课程——“汇编语言程序设计”的配套文字教材,全书由正文和附录两部分组成。正文主要以16/32位Intel CPU为介绍对象,以并行推进的方式介绍这两类CPU的指令系统,以达到相互参考、对照的效果。另外,还介绍了常用的编程环境和调试工具的使用。在内容组织上,把学习高级语言的习惯和汇编语言的特点结合起来,按“硬件资源、变量定义、指令系统、编程”的顺序安排相应的内容。结合MASM V6.11的编程环境,使汇编语言源程序具有一定的高级语言特点和结构。《汇编语言程序设计》还用一章的篇幅介绍了浮点数的表示、浮点运算指令和编程方法,使读者对高级语言中的各种数据类型与低层实现之间的联系有一个更清晰的认识。
附录是一些重要的辅助信息,给出了指令的执行周期数、常用的中断列表和功能以及各种按键的码值等。这些内容为读者用汇编语言编程带来了极大的方便,它也可作为常用手册以便查阅。
《汇编语言程序设计》可作为高等学校计算机、电子信息类专业本科生、大专生的教材,也可作为有关工程技术人员的学习资料或参考书。
编辑推荐 《汇编语言程序设计》是由高等教育出版社出版的。
目录
第一章 预备知识
1.1 汇编语言的由来及其特点
1.1.1 机器语言
1.1.2 汇编语言
1.1.3 汇编程序
1.1.4 汇编语言程序的主要特点
1.1.5 汇编语言的应用领域
1.2 数据的表示和类型
1.2.1 数值数据的表示
1.2.2 非数值数据的表示
1.2.3 基本的数据类型
习题

第二章 CPU资源和存储器
2.1 寄存器组
2.1.1 寄存器组
2.1.2 通用寄存器的作用
2.1.3 段寄存器的作用
2.1.4 专用寄存器的作用
2.2 存储器的管理模式
2.2.1 16位微机的内存管理模式
2.2.2 32位微机的内存管理模式
习题

第三章 操作数的寻址方式
3.1 立即数寻址方式
3.2 寄存器寻址方式
3.3 直接寻址方式
3.4 寄存器间接寻址方式
3.5 寄存器相对寻址方式
3.6 基址加变址寻址方式
3.7 相对基址加变址寻址方式
3.8 32位地址的寻址方式
习题

第四章 标识符和表达式
4.1 标识符
4.2 简单内存变量的定义
4.2.1 内存变量定义的一般形式
4.2.2 字节变量
4.2.3 字变量
4.2.4 双字变量
4.2.5 六字节变量
4.2.6 八字节变量
4.2.7 十字节变量
4.3 调整偏移量伪指令
4.3.1 偶对齐伪指令EVEN
4.3.2 对齐伪指令ALIGN
4.3.3 调整偏移量伪指令0RG
4.3.4 偏移量计数器的值
4.4 复合内存变量的定义
4.4.1 重复说明符DUP
4.4.2 结构类型的定义
4.4.3 联合类型的定义
4.4.4 记录类型的定义
4.4.5 数据类型的自定义
4.5 标号
4.6 内存变量和标号的属性
4.6.1 段属性操作符
4.6.2 偏移量属性操作符
4.6.3 类型属性操作符
4.6.4 长度属性操作符
4.6.5 容量属性操作符
4.6.6 强制属性操作符
4.6.7 存储单元别名操作符
4.7 表达式
4.7.1 进制伪指令RADIX
4.7.2 数值表达式
4.7 ,3地址表达式
4.8 符号定义语句
4.8.1 等价语句
4.8.2 等号语句
4.8.3 符号名定义语句
习题

第五章 微机CPu的指令系统
5.1 汇编语言指令格式
5.1.1 指令格式
5.1.2 了解指令的几个方面
5.2 指令系统
5.2.1 数据传送指令
5.2.2 标志位操作指令
5.2.3 算术运算指令
5.2.4 逻辑运算指令
5.2.5 移位操作指令
5.2.6 位操作指令
5.2.7 比较运算指令
5.2.8 循环指令
5.2.9 转移指令
5.2.10 条件设置字节指令
5.2.11 字符串操作指令
5.2.12 ASCII-BCD码运算调整指令
5.2.13 处理器指令
习题

第六章 程序的基本结构
6.1 源程序的基本组成
6.1.1 段的定义
6.1.2 段寄存器的说明语句
6.1.3 堆栈段的说明
6.1.4 源程序的结构
6.2 程序的基本结构
6.2.1 顺序结构
6.2.2 分支结构
6.2.3 循环结构
6.3 段的基本属性
6.3.1 对齐类型(ALIGN)
6.3.2 组合类型(COMBINE)
6.3.3 类别(CLASS)
6.3.4 段组((JROUP)
6.4 简化的段定义
6.4.1 存储模式说明伪指令
6.4.2 简化段定义伪指令
6.4.3 简化段段名的引用
6.5 源程序的辅助说明伪指令
习题

第七章 子程序和库
7.1 子程序的定义
7.2 子程序的调用和返回指令
7.2.1 调用指令
7.2.2 返回指令
7.3 子程序的参数传递
7.3.1 利用寄存器传递参数
7.3.2 利用约定存储单元传递参数
7.3.3 利用堆栈传递参数
7.4 寄存器的保护与恢复
7.5 子程序的完全定义
7.5.1 子程序完全定义格式
7.5.2 子程序的位距
7.5.3 子程序的语言类型
7.5.4 子程序的可见性
7.5.5 子程序的“起始”和“结束”操作
7.5.6 寄存器的保护和恢复
7.5.7 子程序的参数传递
7.5.8 子程序的原型说明
7.5.9 子程序的调用伪指令
7.5.10 局部变量的定义
7.6 子程序库
7.6.1 建立库文件命令
7.6.2 建立库文件举例
7.6.3 库文件的应用
7.6.4 库文件的好处
习题

第八章 输入输出和中断
8.1 输入输出的基本概念
8.1.1 I/O端口地址
8.1.2 I/O指令
8.2 中断
8.2.1 中断的基本概念
8.2.2 引起中断的指令
8.2.3 中断返回指令
8.2.4 中断和子程序调用的比较
8.3 中断功能的分类
8.3.1 键盘输入的中断功能
8.3.2 屏幕显示的中断功能
8.3.3 打印输出的中断功能
8.3.4 串行通信口的中断功能
8.3.5 鼠标的中断功能
8.3.6 操作目录和文件的中断功能
8.3.7 内存管理的中断功能
8.3.8 读取和设置中断向量
习题

第九章 宏
9.1 宏的定义和引用
9.1.1 宏的定义
9.1.2 宏的引用
9.1.3 宏的参数传递方式
9.1.4 宏的嵌套定义
9.1.5 宏与子程序的区别
9.2 宏参数的特殊运算符
9.2.1 连接运算符
9.2.2 字符串整体传递运算符
9.2.3 字符转义运算符
9.2.4 计算表达式运算符
9.3 与宏有关的伪指令
9.3.1 局部标号伪指令
9.3.2 取消宏定义伪指令
9.3.3 p止宏展开伪指令
9.4 重复汇编伪指令
9.4.1 伪指令REPT
9.4.2 伪指令IRP
9.4.3 伪抬令IRPC
9.5 条件汇编伪指令
9.5.1 条件汇编伪指令的功能
9.5.2 条件汇编伪指令的举例
9.6 宏的扩充
9.6.1 宏定义形式
9.6.2 重复伪指令REPEAT
9.6.3 循环伪指令WHILE
9.6.4 循环伪指令FOR
9.6.5 循环伪指令FORC
9.6.6 转移伪指令GOTO
9.6.7 宏扩充的举例
9.6.8 系统定义的宏
习题

第十章 应用程序设计
10.1 字符串处理程序
10.2 数据分类统计程序
10.3 数据转换程序
10.4 文件操作程序
10.5 动态数据结构的编程
10.6 COM文件的编程
10.7 驻留程序
10.8 程序段前缀及其应用
10.8.1 程序段前缀的字段含义
10.8.2 程序段前缀的应用
习题

第十一章 数值运算协处理器
11.1 协处理器的数据格式
11.1.1 有符号整数
11.1.2 BCD码数据
11.1.3 浮点数
11.2 协处理器的结构
11.2.1 协处理器的内部结构
11.2.2 状态寄存器
11.2.3 控制寄存器
11.2.4 标记寄存器
11.3 协处理器的指令系统
11.3.1 指令操作符的命名规则
11.3.2 数据传送指令
11.3.3 数学运算指令
11.3.4 比较运算指令
11.3.5 超越函数运算指令
11.3.6 常数操作指令
11.3.7 协处理器控制指令
11.4 协处理器的编程举例
习题

第十二章 汇编语言和c语言
12.1 汇编指令的嵌入
12.2 C语言源程序的汇编输出
12.3 简单的屏幕编辑程序
习题

第十三章 汇编语言编程和调试工具
13.1 汇编语言编程工-具
13.1.1 宏汇编MASM系统
13.1.2 TurboAssember
13.2 调试工具
13.2.1 DEBUG
13.2.2 CodeView
13.2.3 TurboDebuger
附录
附录一 Pentitim指令的执行周期数
附录二 各类常用中断功能说明
附录三 键盘按键的各种编码对照表
附录四 显示地址及其显示属性
参考文献
……
序言 汇编语言程序设计是计算机及电子信息类有关专业一门重要的基础课程,是培养学生直接使用计算机硬件资源能力的一门课程。它不仅能帮助学生进一步理解计算机组成原理课程中的各种概念,而且还为其他课程如:操作系统、接口与通信技术和计算机控制技术等课程提供必要的预备知识。该课程在计算机学科课程设置中起着承上启下的作用。
本书以Intel 80X86CPU的指令系统为介绍对象,以并行推进的方式介绍其16位和32位CPU中的指令功能。选用这种方式,不仅希望利用16位指令系统简单好学的特点来加深对32位指令的理解,而且也希望读者在学习过程中能达到相互参考、相互对照的目的。
本书在内容的组织上做了大胆的尝试,把学习高级语言的习惯和汇编语言的特点结合起来,按“硬件资源、变量定义、指令系统、编程”的顺序来安排相应的内容。另外,还结合MASM V6.11的编程环境介绍了一些新的伪指令,运用这些伪指令可使汇编语言源程序具有良好的结构化特征。
本书在介绍完汇编语言编程的基本方法和基本技巧后,安排了一章的篇幅来介绍浮点数的定义格式、浮点指令的功能和编程方法。该部分的内容不仅使计算机组成原理课程中对浮点数格式的描述更加具体化,而且也使读者对高级语言中的各种数据类型与低层实现之间的联系有一个更清晰的认识。
本书是新世纪网络课程建设工程课题——“汇编语言程序设计”的文字教材,用于网上本科教学活动是它的任务之一,所以在线学习者的接受能力是编者取舍教学内容的因素之一。再加上目前的教学改革,在授课总学时数缩减的大环境下,汇编语言课程的周学时已减少为3学时,甚至更少。出于这两方面因素的考虑,在本书中,编者没有对32位的编程技术给予详细的讲述,但编者相信读者在掌握了本书的基本内容后,对自学32位的编程技术会有很大的帮助。
在本书的编写安排上,罗源明副教授编写了第一~三章,吴向军副教授编写了第四~十三章以及附录等内容,刘广旋助工对每章的配套练习做了大量的工作。本书的统筹安排和最后定稿均由吴向军副教授负责。
在编写本书的初期,姜丽帆副教授对编写计划给予了积极的肯定,也提出了一些建设性的意见;初稿完成后,李宏新高级工程师审阅了全部内容,并在内容的取舍和一些重要内容的组织安排上给出了修改意见。在此,向他们表示衷心的感谢。
文摘 插图:


子程序的调用和返回是一对互逆操作,也是一种特殊的转移操作。
一方面,之所以说是转移,是因为当调用一个子程序时,程序的执行顺序被改变,CPU将转而执行子程序中的指令序列,在这方面,调用子程序的操作含有转移指令的功能,子程序的返回指令的转移特性与此类似;
另一方面,转移指令是一种“一去不复返”的操作,而当子程序执行结束后,还要求CPIJ能转而执行调用指令后续的指令,它是一种“有去有回”的操作。
为满足子程序调用和返回操作的特殊性,在指令系统中设置了专门指令来实现它们。
7.2.1调用指令
调用子程序指令的格式如下:
CALL子程序名/Reg/Mem
子程序的调用指令分为近(near)调用和远(far)调用。如果被调用子程序的属性是近的,那么,CALL指令将产生一个近调用,它把该指令之后地址的偏移量(用一个字来表示)压栈,把被调用子程序入口地址的偏移量送给指令指针寄存器IP,即可实现执行程序的转移。近调用指令的堆栈操作如图7.1所示。
热点排行