郑州大学远程教育学院:《汇编语言》课程电子教案(PPT课件)第六章 32位指令及其编程

第6章 32位指令及其编程
第 6 章

教学重点 在16位8086指令系统基础 上,我们扩展到32位80x86 指令系统。了解: √32位编程环境 32位指令及其编程 √32位寻址方式 √32位指令编程方法 √ Windows应用程序编程 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 教学重点 在16位8086指令系统基础 上,我们扩展到32位80x86 指令系统。了解: ✓32位编程环境 ✓32位寻址方式 ✓32位指令编程方法 ✓Windows应用程序编程

第6章 IA-32结构的指令系统 >整数指令集 16位整数指令集 ■32位整数指令集 在 >浮点指令集 32 16 >MMX指令集 整 基 >SSE指令集 数 础出 指 主要指令集 >SSE2指令集 集 上形成 SSE3指令集 的 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 IA-32结构的指令系统 ➢整数指令集 ◼ 16位整数指令集 ◼ 32位整数指令集 ➢浮点指令集 ➢MMX指令集 ➢SSE指令集 ➢SSE2指令集 ➢SSE3指令集 主 要 指 令 集 在 16 指 令 基 础 上 形 成 的 32 位 整 数 指 令 集

第6章 6132位指令的运行环境 实地址方式 保护方式 虚拟8086方式 16位逻辑段:段地址和偏移地址都是16位 段地址左移4位加偏移地址形成20位物理地址 32位逻辑段:段地址和偏移地址都是32位 段地址加偏移地址形成32位线性地址 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 6.1 32位指令的运行环境 实地址方式 保护方式 虚拟8086方式 16位逻辑段:段地址和偏移地址都是16位 ——段地址左移4位加偏移地址形成20位物理地址 32位逻辑段:段地址和偏移地址都是32位 ——段地址加偏移地址形成32位线性地址

第6章 6.1.1寄存器组 >8个32位通用寄存器: EAX EBX ECX EDX ESI EDI EBP ESP >6个16位段寄存器: CS SS DS ES FS GS 基础上扩展成亠 在原有 >32位指令指针寄存器:EP 16 >32位标志寄存器: EFLAGS 位 其他的32位系统用寄存器 为寄 32 位 存器 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 6.1.1 寄存器组 ➢8个32位通用寄存器: EAX EBX ECX EDX ESI EDI EBP ESP ➢6个16位段寄存器: CS SS DS ES FS GS ➢32位指令指针寄存器:EIP ➢32位标志寄存器:EFLAGS ➢其他的32位系统用寄存器 在 原 有 16 位 寄 存 器 基 础 上 扩 展 成 为 32 位

第6章 6.1.2寻址方式 32位有效地址= 基址寄存器+(变址寄存器×比例)十位移量 >基址寄存器—任何8个32位通用寄存 器之 变址寄存器—除ESP之外的任何32 位通用寄存器之 比例—可以是1/2/4/8 位移量—可以是8/32位值 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 6.1.2 寻址方式 32位有效地址= 基址寄存器+(变址寄存器×比例)+位移量 ➢基址寄存器——任何8个32位通用寄存 器之一 ➢变址寄存器——除ESP之外的任何32 位通用寄存器之一 ➢比例——可以是1 / 2 / 4 / 8 ➢位移量——可以是8 / 32位值

第6章 32位寻址方式 (1) mov eax,44332211h (2 mov eax ebx (3)mov eax, [1234h (4)mov eax, tebx 75)mov eax, TebX+80h] (6)mov eax, TebX+esi (7) mov eax, Tebx+esi+80h] (8)mov eax, Tesi*21 (9)mov eax, Tebx+esi*4] () mov eax, Tebx+esi*8+80h HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 32位寻址方式 ⑴ mov eax, 44332211h ⑵ mov eax, ebx ⑶ mov eax, [1234h] ⑷ mov eax, [ebx] ⑸ mov eax, [ebx+80h] ⑹ mov eax, [ebx+esi] ⑺ mov eax, [ebx+esi+80h] ⑻ mov eax, [esi*2] ⑼ mov eax, [ebx+esi*4] ⑽ mov eax, [ebx+esi*8+80h]

第6章 6.232位扩展指令 >16位指令系统从两个方面向32位扩展 (1)支持32位操作数 (2)支持32位寻址方式 mov ax bx ;16位操作数 mov eax ebx;32位操作数 mov ax,ebx];16位操作数,32位寻址方式 mov eax,[ebx];32位操作数,32位寻址方式 有些指令扩大了工作范围,或指令功能实现 了向32位的自然增强 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 6.2 32位扩展指令 ➢16位指令系统从两个方面向32位扩展 ⑴ 支持32位操作数 ⑵ 支持32位寻址方式 mov ax,bx ;16位操作数 mov eax,ebx ;32位操作数 mov ax,[ebx] ;16位操作数,32位寻址方式 mov eax,[ebx] ;32位操作数,32位寻址方式 ➢有些指令扩大了工作范围,或指令功能实现 了向32位的自然增强

第6章 6332位指令的程序设计 >指定汇编程序识别新指令 >处理16位段和32位段 注意有些指令在16位逻辑段和32位逻辑 段的差别 DOS环境(实地址方式和虚拟8086方式), 只能使用16位段 Windows32位保护方式,可以使用32位段 HTTP://DLS.ZZU.EDUCN郑州大学远程教育学院
第 6 章 HTTP://DLS.ZZU.EDU.CN 郑州大学远程教育学院 6.3 32位指令的程序设计 ➢指定汇编程序识别新指令 ➢处理16位段和32位段 ➢注意有些指令在16位逻辑段和32位逻辑 段的差别 DOS环境(实地址方式和虚拟8086方式), 只能使用16位段 Windows 32位保护方式,可以使用32位段

例6.5-1/2 model small 386 ;采用32位指令 stack da七a avar da1234567887654321h;数据定义 code startup mov eax, dword ptr avar mov edx dword ptr avar[4]
例6.5-1/2 .model small .386 ;采用32位指令 .stack .data qvar dq 1234567887654321h ;数据定义 .code .startup mov eax,dword ptr qvar mov edx,dword ptr qvar[4]
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 郑州大学远程教育学院:《汇编语言》课程电子教案(PPT课件)第五章 高级汇编语言程序设计.ppt
- 郑州大学远程教育学院:《汇编语言》课程电子教案(PPT课件)第四章 基本汇编语言程序设.ppt
- 郑州大学远程教育学院:《汇编语言》课程电子教案(PPT课件)第三章 汇编语言程序格式.ppt
- 郑州大学远程教育学院:《汇编语言》课程电子教案(PPT课件)第二章 8086的指念系统.ppt
- 郑州大学远程教育学院:《汇编语言》课程电子教案(PPT课件)第一章 概述.ppt
- 《数据结构》课程教学资源:第四章 串.ppt
- 《数据结构》课程教学资源:第十章 查找.ppt
- 《数据结构》课程教学资源:第十一章 内排序.ppt
- 《数据结构》课程教学资源:第六章 递归.ppt
- 《数据结构》课程教学资源:第五章 数组和稀疏矩阵.ppt
- 《数据结构》课程教学资源:第二章 线性表.ppt
- 《数据结构》课程教学资源:第九章 图.ppt
- 《数据结构》课程教学资源:第三章 栈和队列.ppt
- 《数据结构》课程教学资源:第七章 树和二叉树.ppt
- 《数据结构》课程教学资源:第一章 绪论.ppt
- 《计算机组成原理》课程教学资源:附录——试题类型及解答.ppt
- 《计算机组成原理》课程教学资源:控制器教学实验.ppt
- 《计算机组成原理》课程教学资源:直播课堂内容.ppt
- 《计算机组成原理》课程教学资源:期未复习指导.ppt
- 清华大学:《编译原理》课程教学资源_语法分析.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第一到第九章.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十章 存储过程与触发景.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十一章 游标.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十二章 安全管理.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十三章 数据备份与恢复.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十四章 数据庠复制.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十五章 数据转换.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十六章 SQL Server数据的网页发布.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十七章 VB/ SQL Server应用程序开发.ppt
- 上海应用技术大学:《SQLServer 2000数据库应用技术》课程教学资源(PPT课件讲稿)第十八章 SQL Server应用实例.ppt
- 《Linux 基础及应用》 第十章 网络服务器.ppt
- 《Linux 基础及应用》 第一章 Linux概况.ppt
- 《Linux 基础及应用》 第二章 安装与删除 Linux.ppt
- 《Linux 基础及应用》 第三章 X Window图形代用户界面.ppt
- 《Linux 基础及应用》 第四章 字符界面与 Shell.ppt
- 《Linux 基础及应用》 第五章 用户与组群管理.ppt
- 《Linux 基础及应用》 第六章 文件系统与文件管理.ppt
- 《Linux 基础及应用》 第七章 进程管理与系统监视.ppt
- 《Linux 基础及应用》 第八章 应用程序.ppt
- 《Linux 基础及应用》 第九章 网络基础.ppt