汇编-寄存器(CPU工作原理)

本文详细介绍了8086CPU的内部结构,包括运算器、控制器、寄存器和总线,特别强调了16位寄存器的使用和段地址与偏移地址的组合方式来形成物理地址。CPU通过CS和IP寄存器定位内存中的指令,JMP指令用于修改这两个寄存器的内容,实现程序流程的控制。此外,还讨论了8086CPU如何利用段寄存器进行内存分段管理。
摘要由CSDN通过智能技术生成

一个典型的CPU由运算器,控制器,寄存器等器件组成,这些器件靠内部总线相连
区别:
内部总线实现CPU内部各个器件之间的联系,
外部总线实现CPU和主板上其它器件的联系

8086CPU有14个寄存器,它们的名称为:
AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,PSW
后面是x的寄存器都是16位
一个16位寄存器所能存储的数据最大值为 2**16 -1
超过16位的值会被抛掉
单独计算高位寄存器或者地位寄存器超过8位也是会抛掉
抛掉指的是超出的进制位不能在寄存器中保存,但是CPU不是真的抛弃进制位

AX,BX,CX,DX通常用来存放一般性数据被称为通用寄存器
16位的寄存器为了保证兼容性可以分为两个单独的8位寄存器
AX可以分为AH和AL,H是高位,L是地位

2.4物理地址

CPU访问内存单元是给出内存单元的地址,所有内存单元构成的存储空间是一个以为的线性空间,我们把这个唯一的地址成为物理地址

16位结构CPU

  1. 运算器一次最多处理16位的数据
  2. 寄存器最大宽度是16位
  3. 寄存器和运算器之间的通路是16位的

8086CPU给出物理地址的方法:
在这里插入图片描述

8086CPU读取内存时:

  1. CPU中的相关部件提供两个16位地址,一个为段地址,另一个为偏移地址
  2. 段地址和偏移地址通过内部总线送入一个称为地址加法器的部件
  3. 地址加法器将两个16位地址合并成一个20位地址
    在这里插入图片描述

2.8段的概念

内存没有分段,段的划分来自于CPU,由于80806CPU用,(段地址*16)+偏移地址=物理地址的方式给出内存单位的物理地址,使我们可以用分段方式管理内存

2.9段段寄存器

段寄存器就是提供段地址的
8086CPU有4个段寄存器
CS,DS,SS,ES

2.10 CS和IP

CS和IP是8086CPU中关键的寄存器,它们只是了CPU当前要读取指令的地址

CS为代码寄存器
IP为指令指针寄存器

8086PC互作过程:

  1. 从CS:IP只想内存单元读取指令,读取的指令进入指令缓冲器
  2. IP=IP+所读取指令的长度,从而只想下一条指令
  3. 执行命令,转到步骤1
    在8086CPU加电启动或复位后(即CPU刚开始工作时)CS和IP被设置为SC=FFFFH,IP=0000H

即在8086PC机刚启动是,CPU从内存FFFF0H单元中读取指令执行

FFFF0H单元中的指令是8086PC机开始后执行的第一条指令

2.11 修改CS,IP的指令

JMP指令,用指令中给出的短地址修改CS,偏移地址修改IP
JMP段地址:偏移地址
JMP 2AE3:3
JMP 3:0B16

JUM 某一合法寄存器
功能:用寄存器中的值修改IP
JMP AX (类似于mov IP,AX)
JMP BX

2.12 代码段

对于8086PS机,在编程时,可以根据需要,将依据内存单元定义位一个段

CPU只认被CS:IP指向的内存单位中的内容为指令

小节:

  1. 从CS:IP指向内存单位读取指令,读取的指令进入指令缓冲器
  2. IP指向下一条指令
  3. 执行命令,转到步骤一
  4. 8086CPU提供转移指令修改CD,IP的内容
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
08-10
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值