寄存器(CPU工作原理)

文章目录

  • 寄存器(CPU工作原理)
    • 1. 通用寄存器
    • 2. 字在寄存器中的存储
    • 3. 几条汇编指令
    • 4. 物理地址
    • 5. 16位结构的CPU
    • 6. 8086CPU给出物理地址的方法
    • 7. 段的概念
    • 8. 段寄存器
    • 9 . CS和IP
    • 10. 修改CS、IP的指令
    • 11. 代码段

寄存器(CPU工作原理)

一个典型的CPU由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连。

1. 通用寄存器

8086CPU所有的寄存器都是16位的,可以存放两个字节。

AX、BX、CX、DX 通常用来存放一般性数据被称为通用寄存器。

请添加图片描述

8086上一代CPU中的寄存器都是8位的;

为保证兼容性,这四个寄存器都可以分为两个独立的8位寄存器使用。

  • AX可以分为AH和AL;
  • BX可以分为BH和BL;
  • CX可以分为CH和CL;
  • DX可以分为DH和DL。

请添加图片描述

AX的低8位(0位~7位)构成了AL寄存器,高8位(8位~15位)构成了AH寄存器。

AH和AL寄存器是可以独立使用的8位寄存器。

请添加图片描述

请添加图片描述

2. 字在寄存器中的存储

一个字可以存在一个16位寄存器中,这个字的高位字节和低位字节自然就存在这个寄存器的高8位寄存器和低8位寄存器中。

3. 几条汇编指令

请添加图片描述

注:汇编指令不分大小写

4. 物理地址

CPU访问内存单元时要给出内存单元的地址。所有的内存单元构成的存储空间是一个一维的线性空间。

我们将这个唯一的地址称为物理地址。

5. 16位结构的CPU

概括的讲,16位结构描述了一个CPU具有以下几个方面特征:

  • 运算器一次最多可以处理16位的数据。
  • 寄存器的最大宽度为16位。
  • 寄存器和运算器之间的通路是16位的。

6. 8086CPU给出物理地址的方法

8086有20位地址总线,可传送20位地址,寻址能力为1M。

但8086内部为16位结构,它只能传送16位的地址,表现出的寻址能力却只有64K。

因此8086CPU采用一种在内部用两个16位地址合成的方法来形成一个20位的物理地址。

请添加图片描述

当8086CPU要读写内存时:

1)CPU中的相关部件提供两个16 位的地址,一个称为段地址,另一个称为偏移地址;

2)段地址和偏移地址通过内部总线送入一个称为地址加法器的部件;

3)地址加法器将两个16位地址合成为一个20位的物理地址;

4)地址加法器通过内部总线将20位物理地址送入输入输出控制电路;

5)输入输出控制电路将20位物理地址送上地址总线;

6)20位物理地址被地址总线传送到存储器。

地址加法器采用物理地址=段地址x16+偏移地址的方法用段地址和偏移地址合成物理地址。例如,8086CPU要访问地址为123C8H的内存单元,此时,地址加法器的工作过程如图所示(图中数据皆为十六进制表示)。

请添加图片描述

7. 段的概念

在编程时可以根据需要,将若干地址连续的内存单元看作一个段,用段地址×16定位段的起始地址(基础地址),用偏移地址定位段中的内存单元。

请添加图片描述

注意:

1)段地址×16 必然是 16的倍数,所以一个段的起始地址也一定是16的倍数;

2)偏移地址为16位,16 位地址的寻址能力为 64K,所以一个段的长度最大为64K。

8. 段寄存器

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

当8086CPU要访问内存时,由这4个段寄存器提供内存单元的段地址。

9 . CS和IP

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

CS为代码段寄存器;IP为指令指针寄存器。

在任何时候,CPU将CS、IP中的内容当作指令的段地址和偏移地址,用它们合成指令的物理地址,到内存中读取指令码,执行。

请添加图片描述

工作流程:

(1)从CS:IP指向内存单元读取指令,读取的指令进入指令缓冲器;

(2)IP = IP + 所读取指令的长度,从而指向下一条指令;

(3)执行指令。 转到步骤 (1),重复这个过程。

在 8086CPU 加电启动或复位后( 即 CPU刚开始工作时)CS和IP被设置为CS=FFFFH,IP=0000H。

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

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

10. 修改CS、IP的指令

在CPU中,程序员能够用指令读写的部件只有寄存器,程序员可以通过改变寄存器中的内容实现对CPU的控制。

CPU从何处执行指令是由CS、IP中的内容决定的,程序员可以通过改变CS、IP中的内容来控制CPU执行目标指令。

同时修改CS、IP的内容:

jmp 段地址:偏移地址

jmp 2AE3:3

jmp 3:0B16

功能:用指令中给出的段地址修改CS,偏移地址修改IP。

仅修改IP的内容:

jmp 某一合法寄存器

jmp ax (类似于 mov IP,ax)

jmp bx

功能:用寄存器中的值修改IP。

案例分析:

内存中存放的机器码和对应汇编指令情况: (初始:CS=2000H,IP=0000H)

请添加图片描述

(1)mov ax,6622

(2)jmp 1000:3

(3)mov ax,0000

(4)mov bx,ax

(5)jmp bx

(6)mov ax,0123H

(7)转到第(3)步执行

11. 代码段

对于8086PC机,在编程时,可以根据需要,将一组内存单元定义为一个段。

可以将长度为 N( N≤64KB )的一组代码,存在一组地址连续、起始地址为 16的倍数的内存单元中,这段内存是用来存放代码的,从而定义了一个代码段。

当我们要执行该代码段时,只需将CS:IP指向所定义的代码段中的第一条指令的首地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/730120.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【好书推荐-第十期】《AI绘画教程:Midjourney使用方法与技巧从入门到精通》

😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公众号:洲与AI。 🎈 本文专栏:本文收录…

005-事件捕获、冒泡事件委托

事件捕获、冒泡&事件委托 1、事件捕获与冒泡2、事件冒泡示例3、阻止事件冒泡4、阻止事件默认行为5、事件委托6、事件委托优点 1、事件捕获与冒泡 2、事件冒泡示例 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /…

VUE Element例子学习

参考:【前端】VueElement UI案例&#xff1a;通用后台管理系统-项目总结_vue elementui 管理系统-CSDN博客 之前参考的el-admin-web太复杂了&#xff0c;不是纯净的demo. 所以找了一圈资料&#xff0c;找到了这个博客&#xff0c;很合适&#xff0c;有例子的代码&#xff0c;…

【redis】模拟抢红包

1.使用的数据结构 思路是需要将指定数量的红包提前压栈&#xff0c;然后当用户来“抢红包”的时候&#xff0c;将红包取出来。 规定每个用户只能抢一次&#xff0c;并且最小金额是1块钱。 选择redis中的list结构模拟。 2.模拟发红包。 GetMapping("/give-red-packets&…

SpringCloudAlibaba微服务之Nacos架构及基础概念梳理

SpringCloudAlibaba微服务之Nacos架构及基础概念梳理 文章目录 SpringCloudAlibaba微服务之Nacos架构及基础概念梳理1. 官网介绍1. 简介2. Naocs是什么3. Nacos 地图4. Nacos 生态图 2. Nacos 架构1. 基本架构及概念1. 服务 (Service)2. 服务注册中心 (Service Registry)3. 服务…

投标中项目组织结构的设置以及调整(样式表,多级列表)

投标中项目组织结构的设置以及调整&#xff08;样式表&#xff0c;多级列表&#xff09;&#xff1a; 投标项目中需要处理大规模的文字排版&#xff0c;就是需要用到样式表&#xff08;解决层级关系&#xff09;&#xff0c;多级列表&#xff08;解决自动编号的问题&#xff0…

看一看阿里云,如何把抽象云概念,用可视化表达出来。

云数据库RDS_关系型数据库 云数据库RDS_关系型数据库 专有宿主机 云数据库RDS_关系型数据库_MySQL源码优化版 内容协作平台CCP-企业网盘协同办公-文件实时共享

学习与学习理论 - 2024教招 - test

一 方向 方向性很重要&#xff0c;像学投篮一样关注发力顺序才是关键出发点&#xff0c;如果这个出发点没确定下来&#xff0c;会走许多弯路。所有学习理论大的观点&#xff0c;到某个人物个人的观点。被干掉之前&#xff08;不能被干掉&#xff09;&#xff0c;掌握所需的知识…

01、python_爬虫的相关概念

一、什么是爬虫&#xff1f; 爬虫是网络爬虫的简称&#xff0c;指的是一种自动化程序&#xff0c;用于在互联网上抓取信息。爬虫的核心工作包括爬取网页、解析数据和存储数据。 通俗来说就是&#xff1a;通过一个程序&#xff0c;根据url(http://taobao.com)进行爬取网页&…

浏览器是如何渲染页面的?

浏览器是如何渲染页面的&#xff1f; 1. 解析 HTML2. 样式计算 Computed Style3. 布局 Layout4. 分层 Layer5. 绘制 Paint6. 分块 Tiling7. 光栅化 Raster8. 画 draw完整过程面试题什么是 reflow&#xff08;回流/重排&#xff09;?什么是 repaint &#xff08;重绘&#xff0…

用于回归的概率模型

机器学习中的回归方法&#xff1a; 机器学习中的概率模型 机器学习&#xff5c;总结了11种非线性回归模型&#xff08;理论代码可视化&#xff09; 高斯过程回归&#xff1a; Gaussian Processes for Machine Learning GPML——Datasets and Code Gaussian Processes 学…

根据xlsx文件第一列的网址爬虫

seleniumXpath 在与该ipynb文件同文件下新增一个111.xlsx&#xff0c;第一列放一堆需要爬虫的同样式网页 然后使用seleniumXpath爬虫 from selenium import webdriver from selenium.webdriver.common.by import By import openpyxl import timedef crawl_data(driver, url)…

洗地机热门品牌测评:石头/希亦/顺造/云鲸洗地机哪个好?哪个牌子最值得入手

大家好&#xff0c;博主是一个热爱生活和科技的居家测评博主。在过去的三年多时间里&#xff0c;我专注于清洁家电——洗地机。我深入测评了三十多款洗地机&#xff0c;现在我将用简单易懂的语言来分享洗地机的选购技巧和热门洗地机机型推荐。 洗地机选购技巧&#xff1a; 看…

免费域名证书的优势及申请

免费域名证书的优势 经济实惠&#xff1a;免费域名证书的最大优势在于其零成本。对于那些预算紧张的小型网站和个人开发者来说&#xff0c;这无疑是一个巨大的福音。他们无需支付任何费用&#xff0c;即可获得与付费证书相媲美的安全保护。简单易用&#xff1a;免费域名证书的…

智慧城市如何助力疫情防控:科技赋能城市安全

目录 一、引言 二、智慧城市与疫情防控的紧密结合 三、智慧城市在疫情防控中的具体应用 1、智能监测与预警系统 2、智慧医疗与健康管理 3、智能交通与物流管理 4、智慧社区与基层防控 四、科技赋能城市安全的未来展望 五、结论 一、引言 近年来&#xff0c;全球范围内…

二维码门楼牌管理系统应用场景:商业与零售业发展的助推器

文章目录 前言一、二维码门楼牌管理系统的基本功能二、商业和零售业中的应用场景三、二维码门楼牌管理系统的优势分析四、结论 前言 在数字化时代的浪潮中&#xff0c;二维码门楼牌管理系统凭借其独特的优势&#xff0c;正在逐步成为商业和零售业发展的新宠。它不仅能够为商家…

测试环境搭建整套大数据系统(九:docker学习)

一&#xff1a;为什么学习dockder&#xff1f; 对于组件的搭建和部署&#xff0c;可以简化。 二&#xff1a;什么是docker&#xff1f; docker是一个平台。 三&#xff1a;怎么使用docker&#xff1f; 1. 安装&#xff0c;切换仓库。 安装 curl -fsSL https://test.docke…

家用洗地机哪个型号好用?介绍几个值得考虑的品牌

作为家里的主要清洁工&#xff0c;我一直以来都是负责家里的清洁工作。我经常使用吸尘器和扫地机器人来轮流清洁&#xff0c;虽然效果还不错&#xff0c;但是这种方式太费时间和精力了。特别是在脸上厨房里做完饭和孩子吃完饭后留下的残渣时&#xff0c;我总是需要用传统的拖多…

文献学习-13-机器人顶刊IJRR近期国人新作(2024.3)

一、IJRR简介 The International Journal of Robotics Research&#xff08;IJRR&#xff09;是机器人领域的高水平学术期刊&#xff0c;专注于发布关于机器人技术和相关领域的最新研究成果。IJRR创刊于1982年&#xff0c;是该领域的第一本学术刊物&#xff0c;2022-2023最新影…

掼蛋的牌型与规律(上篇)

掼蛋是一项配合类的棋牌竞技游戏&#xff0c;掼蛋的最大魅力以及最集中的特点在于变化&#xff0c;在于组牌的变数。有的掼蛋新手往往先把牌配死&#xff0c;并且直接决定好出牌计划&#xff0c;然后守株待兔。掼蛋的取胜之道在于静态组合加上动态变化。本文主要介绍一下掼蛋的…