- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
80X86汇编语言程序设计 8086 8088寻址方式和指令系统
80X86汇编语言程序设计
第二章 8086/8088寻址方式和指令系统(3~20)
一.8086/8088寄存器组:
(14个16位寄存器,8个8位寄存器)
1.数据寄存器:AX(AH.AL). AX和AL是累加器。用累加器进行计算操作时间最短。
BX(BH.BL). BX又叫基址寄存器。唯一作为存储器指针的寄存器。
CX(CH.CL). CX控制循环的次数。CL保存移位的位数。
DX(DH.DL). DX用于做32位乘除法时,存放被除数或保留余数。
2.指针寄存器:SP堆栈指针. 保存堆栈指针栈顶地址。
BP基址指针.
3.变址寄存器:SI源地址.
DI目的地址.
变址和指针寄存器主要用于存放某个存储单元地址的偏移,或某组存储单元开始地址的偏移,即作为存储器指针使用。通用寄存器由数据寄存器.指针寄存器.变址寄存器构成。
4.控制寄存器:IP指令指针. 指令指针IP给出接着要执行的指令在代码段中的偏移。
FLAG标志寄存器.包含了9个标志,主要用于反映处理器的状态和运算结果的某些特征。
(1)运算结果标志
进位标志CF(Carry F);零标志ZF(Zero F);符号标志SF(Sign F);溢出标志OF(Over F);奇偶标志PF(1的个数为偶数,则PF被置1);辅助进位标志AF;
(2)状态控制标志
方向标志DF;中断允许标志IF;跟踪标志TF。
5.段寄存器: CS代码段.
DS数据段.
SS堆栈段.
ES附加段.
二. 存储器分段和地址的形成:
1.存储单元的地址和内容
地址是用二进制数来表示的,它是无符号整数,书写格式为十六进制数。
16位二进制数可以表示2的16次方,也就是0~65535的地址范围。65536个字节单元的存储容量是64K。一个存储单元中存放的信息成为该存储单元的内容。
字单元的地址采用它的低地址来表示,并采用“高高低低”的原则。四个连续的字节单元就构成了一个双字单元。
2.存储器地址的分段及物理地址的形成
8086/8088 CPU有20根地址线,可直接寻址的物理地址为2的20次方也就是1M字节(用16进制数表示1M字节的地址范围是00000~FFFFF)。所以,要访问1M字节空间的存储器必须有20位地址。
CPU采用存储器地址分段的办法来提供20位地址。从0地址开始,每16个字节为一小段(16的倍数)。
IBMPC机对段的起始地址有所限制,段不能起始于任意地址,而必须从任一小段的首地址开始。
在16进制表示的地址中,最低位是0(即20位地址的低4位为0)。{00000,00010,00020,00030,…000F0,…FFFE0,FFFF0,}
- 在1M字节的存储器里,每一个存储单元都有一个唯一的20位地址。称为:该存储单元的物理地址。
把存储单元的地址与所在段的起始地址的差称为段内偏移,称为偏移。
在整个1M地址空间中,存储单元的物理地址等于段起始地址加上偏移。
物理地址=段*16+偏移
20位物理地址=16位段地址+16位偏移地址。
指令中不使用物理地址,而是使用逻辑地址,由总线接口单元BIU按需要根据段值和偏移自动形成20位物理地址。
3.段寄存器的引用
计算机在取指令的时候,自动引用代码段寄存器CS,再加上由IP所给出的16位偏移,得到要取指令的物理地址。
当涉及到一个堆栈操作时,则自动引用堆栈寄存器SS,再加上由SP所给出的16位偏移,得到堆栈操作所需要的物理地址。当偏移涉及BP寄存器时,缺省引用段寄存器SS。
在存取一个普通存储器操作数时,则自动选择数据寄存器DS或附加段寄存器ES,再加上16位偏移,得到存储器操作数的物理地址。
三.8086/8088的寻址方式:
计算机是通过执行指令序列来解决问题的,因而每种计算机都有一组指令集提供给用户使用,这组指令集就称为计算机的指令系统。计算机中的指令由操作码字段和操作数字段两部分组成。
汇编语言是一种符号语言,它用助记符来表示操作码,用符号或符号地址来表示操作数或操作数地址。它与机器指令一一对应。
寻址方式:表示指令中用于说明操作数所在的地址的方法
8086/8088有七种基本的寻址方式,下面介绍这七种寻址方式:
1.立即寻址方式
操作数就包含在指令中,它作为指令的一部分,跟在操作码后存放在代码段。(源操作数)这种操作数称为立即数。
例如:指令:mov ax,1234H
mov
您可能关注的文档
- 第10章 80X86到Pentium汇编语言程序设计.ppt
- 第2章第1讲 linux文件目录与属性.ppt
- new_ch6-6.1文件6.2文件目录6.3文件组织和数据存储.ppt
- 《微积分(上)》目录.ppt
- 电子杂志目录制作流程11.ppt
- 第一章汇编语言程序设计.ppt
- 2.windows server 2003安装和管理活动目录.ppt
- Java实验2011.ppt
- 汇编语言程序设计08.ppt
- 中医古籍书目检索.ppt
- 英语人教PEP版八年级(上册)Unit4+writing+写作.pptx
- 人美版美术四年级(上册)8 笔的世界 课件 (1).pptx
- 人美版美术七年级(上册)龙的制作.pptx
- 英语人教PEP版六年级(上册)Unit 2 第一课时.pptx
- 数学苏教版三年级(上册)3.3 长方形和正方形周长的计算 苏教版(共12张PPT).pptx
- 音乐人教版八年级(上册)青春舞曲 课件2.pptx
- 音乐人教版四年级(上册) 第一单元 音乐知识 附点四分音符|人教版.pptx
- 英语人教PEP版四年级(上册)Unit 6 Part B let's learn 1.pptx
- 道德与法治人教版二年级(上册)课件-3.11大家排好队部编版(共18张PPT).pptx
- 人美版美术七年级(上册)《黄山天下奇》课件1.pptx
文档评论(0)