- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8086指令集结构
8086指令集结构
一.8086 的寄存器结构
8086CPU中具有14个程序员可以访问的16位寄存器(如图1.1所示),按其功能可分为通用寄存器、段寄存器、指令指针寄存器及标志寄存器。
图1.1 8086寄存器结构框图
(1) 通用寄存器
8086CPU共有8个16位寄存器,它们可以作为一般的通用寄存器存放数据 。按照相应的用途又可以分为两组:一组是数据寄存器(AX,BX,CX,DX),可以按照字(16位)形式访问,也可按照字节(8位)形式访问。主要 用来暂时存放在计算过程中需要用到的操作数、操作运算结果。另一组是地址指针寄存器(SP,BP,SI,DI),只能按照字形式访问。主要存放访问主存时所需的偏移地址。
AX(Accumulator) 称作累加器,在乘、除法等指令运算中指定存放操作数及运算结果。
BX(Base) 称作基址寄存器,在计算主存地址时可以用作基址寄存器。
CX(Count) 称作计数寄存器,在循环指令及串处理等指令中作为隐含的计数器使用。
DX(Data) 称作数据寄存器,在字(16位)乘、除法等指令中用于存放双倍字长结果的高16位数据;在I/O指令中存放I/O的端口地址。
以上四个16位寄存器均可分为两个独立的8位寄存器使用。如AX分为AH和AL
SP(Stack Pointer) 称作堆栈指针寄存器,存放堆栈段首地址到栈顶单元的偏移量。
BP(Base Pointer) 称作基址指针寄存器,通常用于存放需要访问的、位于堆栈段数据的一个基地址或该段的某个字单元到堆栈段首地址的偏移量。
SI(Source Index) 称作源变址寄存器,主要用于存放需要访问的(源)操作数所在主存单元相对于该段首地址的偏移量。在串操作指令中,用作隐含的源变址寄存器。
DI(Destination Index) 称作目的变址寄存器,主要用于存放需要访问的(目的)操作数所在主存单元相对于该段首地址的偏移量。在串操作指令中,用作隐含的目的变址寄存器。
(2) 段寄存器
8086支持访问最多1MB的主存空间,主存按段结构进行管理,在主存中存放的段的类型一共有4种(代码段、数据段、附加段、堆栈段)。主存地址的表示形式为:段寄存器:段内偏移。
CS(Code Segment) 称作代码段寄存器,指定当前正在运行的代码段。
DS(Data Segment) 称作数据段寄存器,指定当前访问的数据段。
EX(Extra Segment) 称作附加段寄存器,指定当前的附加段。附加段主要为当前运行程序所处理的存储器操作数提供所需的辅助存储空间。
SS(Stack Segment) 称作堆栈段寄存器,指定当前的堆栈段,堆栈段可以根据需要在其中存放暂存的各种数据。
(3) 指令指针寄存器
IP(Instruction Pointer) 是一个16位的专业寄存器,存放需要访问的指令在代码段中的偏移量(类似于通常所说的程序计数器PC)。多数情况下,CS:IP指向下一条即将执行的指令地址。
(4)标志寄存器
8086CPU中设置了一个16位的标志寄存器FLAGS,但只有其中的9位有效,每一位指示机器当前的某个状态特征或控制信息。包括6位状态标志位和3位控制标志位。
状态标志位
状态标志位主要由CPU根据指令执行的结果自动设置。这些标志位通常作为某个条件转移指令的测试条件。
CF(Carry Flag) 进位标志,记录运算时最高位产生的进位。
PF(Parity Flag) 奇偶标志,反映操作结果的低8位中1的个数,如果1的个数为偶数,则PF置1,否则PF置0。PF主要用来检测在机器中传送信息时是否出错。
AF(Auxiliary Carry Flag) 辅助进位标志,记录运算结果的第3位(即低半字节)向高位(第4位)产生的进位或借位。该标志通常用于十进制算术运算的调整。
ZF(Zero Flag) 零标志,运算结果为零,则ZF置1,否则置0。
SF(Sign Flag) 符号标志,记录运算结果的符号,若非负则置0,否则置1。
OF(Overflow Flag) 溢出标志,反应带符号数的运算结果是否超出机器所能表示的数值范围,超出该范围则为溢出,OF置1,否则置0。
控制标志位
控制标志位主要用于串操作方向的控制、中断的屏蔽以及程序的调试。
TF(Trap Flag) 陷阱标志,也可称为单步标志或跟踪标志,用于程序的调试。当TF为1,CPU执行完一条指令后便产生单步中断,然后转去执行单步中断服务程序。
IF(Interrupt Flag) 中断标志,或称为中断允许标志。当IF置1则允许CPU响应中断请求,当IF置0,则禁止CPU响应可屏蔽中断请求。
DF(Direction Flag) 方向标志,用于串操作指令,控制串的处理方
您可能关注的文档
最近下载
- 2024大学生人文知识竞赛题库及参考答案.docx VIP
- 2025三年级上册道德与法治 第5课《走近科学家》(第二课时)教学课件.pptx
- 四年级上册道德与法治课件第四课时与家务活“签约”人教部编版.ppt VIP
- 第三次全国土壤普查耕地质量等级评价技术规范.pdf VIP
- UVmini-1240使用指南 岛津紫外可见光分光光度计.pdf VIP
- 【2024】人教鄂教版科学六年级上册每课教学反思(带目录) .pdf VIP
- 教学-高中物必修一、二、三基本知识背记检查清单大傻B.ppt VIP
- 2025年新能源太阳能光伏产业发展白皮书.docx VIP
- 设备管理成熟度(星级)评价准则.pdf VIP
- GB50231-2009 机械设备安装工程施工及验收通用规范.docx VIP
文档评论(0)