汇编语言第三版

  • 出版时间: 2018-01-01
  • 作者:  王爽
  • 出版社: 清华大学出版社
  • 页数: 0
  • 价格: 32.00
  • 购买

目录

第1章 基础知识

  • 1.1 机器语言
  • 1.2 汇编语言的产生
  • 1.3 汇编语言的组成
  • 1.4 存储器
  • 1.5 指令和数据
  • 1.6 存储单元
  • 1.7 CPU对存储器的读写
  • 1.8 地址总线
  • 1.9 数据总线
  • 1.10 控制总线
  • 1.11 内存地址空间(概述)
  • 1.12 主板
  • 1.13 接口卡
  • 1.14 各类存储器芯片
  • 1.15 内存地址空间

    第2章 寄存器

  • 2.1通用寄存器
  • 2.2字在寄存器中的存储
  • 2.3几条汇编指令
  • 2.4物理地址
  • 2.516位结构的CPU
  • 2.68086CPU给出物理地址的方法
  • 2.7“段地址×16+偏移地址=物理地址” 的本质含义
  • 2.8段的概念
  • 2.9段寄存器
  • 2.10CS和IP
  • 2.11修改CS、IP的指令
  • 2.12代码段 实验1查看CPU和内存,用机器指令 和汇编指令编程

    第3章寄存器(内存访问)

  • 3.1内存中字的存储
  • 3.2DS和(address)
  • 3.3字的传送
  • 3.4mov、add、sub指令
  • 3.5数据段
  • 3.6栈
  • 3.7CPU提供的栈机制
  • 3.8栈顶超界的问题
  • 3.9push、pop指令
  • 3.10栈段 实验2用机器指令和汇编指令编程

    第4章第一个程序

  • 4.1一个源程序从写出到执行的过程
  • 4.2源程序
  • 4.3编辑源程序
  • 4.4编译
  • 4.5连接
  • 4.6以简化的方式进行编译和连接
  • 4.71.exe的执行
  • 4.8谁将可执行文件中的程序装载进入 内存并使它运行?
  • 4.9程序执行过程的跟踪 实验3编程、编译、连接、跟踪

    第5章(BX)和loop指令

  • 5.1(BX)
  • 5.2Loop指令
  • 5.3在Debug中跟踪用loop指令实现的 循环程序
  • 5.4Debug和汇编编译器masm对指令的 不同处理
  • 5.5loop和(bx)的联合应用
  • 5.6段前缀
  • 5.7一段安全的空间
  • 5.8段前缀的使用 实验4(bx)和loop的使用

    第6章 包含多个段的程序

  • 6.1在代码段中使用数据
  • 6.2在代码段中使用栈
  • 6.3将数据、代码、栈放入不同的段 实验5编写、调试具有多个段的程序

    第7章更灵活的定位内存地址的

    方法

  • 7.1anol和or指令
  • 7.2关于ASCII码
  • 7.3以字符形式给出的数据
  • 7.4大小写转换的问题
  • 7.5(bx+idata)
  • 7.6用(bx+idata)的方式进行数组的 处理
  • 7.7SI和DI
  • 7.8(bx+si)和(bx+di)
  • 7.9(bx+si+idata)和(bx+di+idata)
  • 7.10不同的寻址方式的灵活应用 实验6实践课程中的程序

    第8章数据处理的两个基本问题

  • 8.1bx、si、di和bp
  • 8.2机器指令处理的数据在什么地方
  • 8.3汇编语言中数据位置的表达
  • 8.4寻址方式
  • 8.5指令要处理的数据有多长
  • 8.6寻址方式的综合应用
  • 8.7div指令
  • 8.8伪指令dd
  • 8.9dup 实验7寻址方式在结构化数据访问中的 应用

    第9章转移指令的原理

  • 9.1操作符offset
  • 9.2jmp指令
  • 9.3依据位移进行转移的jmp指令
  • 9.4转移的目的地址在指令中的jmp 指令
  • 9.5转移地址在寄存器中的jmp指令
  • 9.6转移地址在内存中的jmp指令
  • 9.7jcxz指令
  • 9.8loop指令
  • 9.9根据位移进行转移的意义
  • 9.10编译器对转移位移超界的检测 实验8分析一个奇怪的程序 实验9根据材料编程

    第10章CALL和RET指令

  • 10.1ret和retf
  • 10.2call指令
  • 10.3依据位移进行转移的call指令
  • 10.4转移的目的地址在指令中的call 指令
  • 10.5转移地址在寄存器中的call指令
  • 10.6转移地址在内存中的call指令
  • 10.7call和ret的配合使用
  • 10.8mul指令
  • 10.9模块化程序设计
  • 10.10参数和结果传递的问题
  • 10.11批量数据的传递
  • 10.12寄存器冲突的问题 实验10编写子程序 课程设计1

    第11章标志寄存器

  • 11.1ZF标志
  • 11.2PF标志
  • 11.3SF标志
  • 11.4CF标志
  • 11.5OF标志
  • 11.6adc指令
  • 11.7sbb指令
  • 11.8cmp指令
  • 11.9检测比较结果的条件转移指令
  • 11.10DF标志和串传送指令
  • 11.11pushf和popf
  • 11.12标志寄存器在Debug中的表示 实验11编写子程序

    第12章内中断

  • 12.1内中断的产生
  • 12.2中断处理程序
  • 12.3中断向量表
  • 12.4中断过程
  • 12.5中断处理程序和iret指令
  • 12.6除法错误中断的处理
  • 12.7编程处理0号中断
  • 12.8安装
  • 12.9do0
  • 12.10设置中断向量
  • 12.11单步中断
  • 12.12响应中断的特殊情况 实验12编写0号中断的处理程序

    第13章int指令

  • 13.1int指令
  • 13.2编写供应用程序调用的 中断例程
  • 13.3对int、iret和栈的深入理解
  • 13.4BIOS和DOS所提供的 中断例程
  • 13.5BIOS和DOS中断例程的 安装过程
  • 13.6BIOS中断例程应用
  • 13.7DOS中断例程应用 实验13编写、应用中断例程

    第14章端口

  • 14.1端口的读写
  • 14.2CMOS RAM芯片
  • 14.3shl和shr指令
  • 14.4CMOS RAM中存储的时间信息 实验14访问CMOS RAM

    第15章外中断

  • 15.1接口芯片和端口
  • 15.2外中断信息
  • 15.3PC机键盘的处理过程
  • 15.4编写int 9中断例程
  • 15.5安装新的int 9中断例程 实验15安装新的int 9中断例程

    第16章直接定址表

  • 16.1描述了单元长度的标号
  • 16.2在其他段中使用数据标号
  • 16_3直接定址表
  • 16.4程序入口地址的直接定址表 实验16编写包含多个功能子程序的 中断例程

    第17章使用BIOS进行键盘输入

    和磁盘读写

  • 17.1int 9中断例程对键盘输入的处理
  • 17.2使用int 16h中断例程读取 键盘缓冲区
  • 17.3字符串的输入
  • 17.4应用int 13h中断例程对磁盘 进行读写 实验17编写包含多个功能子程序的 中断例程
  • 课程设计2
  • 综合研究

    研究试验1搭建一个精简的C语言

  • 开发环境
  • 研究试验2使用寄存器
  • 研究试验3使用内存空间
  • 研究试验4不用main函数编程
  • 研究试验5函数如何接收不定数量的
  • 参数
  • 附注
  • 附注1Intel系列微处理器的3种工作
  • 模式
  • 附注2补码
  • 附注3汇编编译器(masm.exe)对jmp的
  • 相关处理
  • 附注4用栈传递参数
  • 附注5公式证明

书摘

有很多人看我,都没有摘!

微信公众号

有课学公众号
  • 微信公众号: geekdaxue