CPU通用寄存器作为CPU体系架构的一部分,不可或缺。通用寄存器是CPU的算术逻辑运算操作最直接,频繁的位置。对于RISC体系的CPU,算术逻辑运算甚至只能够操作CPU通用寄存器中的数据。我们的目的不在于详尽的说明每一种CPU体系的寄存器情况,而在于将常用而且在不同CPU体系下容易混淆的寄存器做一个总结。下面就以8086处理器,ARM7内核,MIPS32内核为例说明。

8086处理器通用寄存器

8086处理器,是学习X86处理器的基础(严格意思上来说,8086处理器还不能够算作x86处理器。参考intel处理器发展历史了解更多),所以作为很多大学微机原理课程的教学内容。8086的通用寄存器分为通用数据寄存器和通用地址指针寄存器。

通用数据寄存器为AX,BX,CX,DX。这4个寄存器都是16位寄存器,每个寄存器可以分为高低8位寄存器使用,例如AX可以分为AH和AL两个8位寄存器。

通用地址指针寄存器为SP,BP,SI,DI。通用地址指针寄存器只能够使用16位,用于存放存储器段内16位偏移地址值。

和通用地址指针寄存器相对应,8086还有4个16位的段寄存器,分别为CS,DS,SS,ES。4个16位的段寄存器和4个地址指针寄存器产生20位的地址,用于存储器寻址。

然后就是标志寄存器FLAGS,也是16位。相当于ARM7中的程序状态寄存器cpsr。

最后,就是16位的指令指针寄存器IP,用于存放当前将要执行指令的16位偏移地址。相当于RISC处理器中的程序计数器PC寄存器。

2.CPU体系架构-寄存器相关推荐

  1. Linux 之八 完整嵌入式 Linux 环境、(交叉)编译工具链、CPU 体系架构、嵌入式系统构建工具

      最近,工作重心要从裸机开发转移到嵌入式 Linux 系统开发,由于之前对嵌入式 Linux 环境并不是很了解,因此,第一步就是需要了解如何搭建一个完整的嵌入式 Linux 环境.现在将学习心得记录 ...

  2. NVIDIA CUDA初级教程(P2-P3)CPU体系架构概述、并行程序设计概述

    文章目录 1.CPU体系架构概述 2.并行程序设计概述 1.CPU体系架构概述 现代CPU架构 CPU的定义 (1)执行指令.处理数据的器件:完成基本的逻辑和算术指令 (2)内存接口.外部设备接口 ( ...

  3. Linux 之八 完整嵌入式 Linux 环境及构建工具、(交叉)编译工具链、CPU 体系架构

      最近,工作重心要从裸机开发转移到嵌入式 Linux 系统开发,由于之前对嵌入式 Linux 环境并不是很了解,因此,第一步就是需要了解如何搭建一个完整的嵌入式 Linux 环境.现在将学习心得记录 ...

  4. CUDA基础(一):CPU体系架构概述

    1 冯·诺依曼体系架构   今天我们谈及CPU的架构,往往会说起X86架构,ARM架构,MIPS架构等等,其实这些CPU架构都属于冯·诺依曼体系架构(也称普林斯顿体系架构).   **从功能上看,一般 ...

  5. ARM、X86/Atom、MIPS、PowerPC四大CPU体系架构

    RISC(精简指令集计算机)是一种执行较少类型计算机指令的微处理器,起源于80年代的MIPS主机(即RISC机),RISC机中采用的微处理器统称RISC处理器.这样一来,它能够以更快的速度执行操作(每 ...

  6. 详谈四大主流CPU体系架构

    RISC(精简指令集计算机)是一种执行较少类型计算机指令的微处理器,起源于80年代的MIPS主机(即RISC机),RISC机中采用的微处理器统称RISC处理器.这样一来,它能够以更快的速度执行操作(每 ...

  7. ARM体系结构与编程(篇二):ARM体系架构与寄存器介绍

    文章目录 前言 一.ARM内核与架构 1.1 ARM芯片的组成 1.2 ARM指令集与架构 二.ARM处理器模式与寄存器 2.1 ARM处理器模式 2.2 ARM寄存器 前言 该文章是通过学习< ...

  8. x86 - CPU架构/寄存器详解 (三) 保护模式

    系列文章 x86 - CPU架构/寄存器详解 (一)x86.8086.i386.IA-32 是什么? x86 - CPU架构/寄存器详解 (二) 实模式(8086模式) x86 - CPU架构/寄存器 ...

  9. 计算机组成原理 — CPU — 指令集架构类型

    目录 文章目录 目录 主流 CPU 指令集架构 CISC(复杂指令集计算机) x86 系列处理器 RISC(精简指令集计算机) ARM 系列处理器 PowerPC 系列处理器 MIPS 架构 RISC ...

最新文章

  1. std::map char*做key
  2. qt中dll缺失以及无法启动程序的正确解决方法
  3. 「开源资讯」Apache Storm 2.2.0 发布,分布式实时计算
  4. Vc++安装包_Visual C++ 6.0中文版安装包下载及安装教程
  5. 10款最佳Python开发工具推荐,每一款都是神器!
  6. tilte和body标签
  7. 转载:技术大停滞——范式春梦中的地球工业文明4:范式春梦外的阴影
  8. 前端性能优化——字体文件压缩
  9. 最全UnityHub下载链接Unity2022~2017各版本+Unity5.x【间歇性更新】
  10. 深入理解Nginx 读书笔记
  11. 苹果系统itunes连iphone连不上服务器,itunes无法连接iphone的解决方法
  12. HTML5+CSS期末大作业:运动体育网站设计主题——体育铅球(5页)带注册 期末作业HTML代码
  13. vue大文件上传断点续传解决方案
  14. 雇用黑客 好处 坏处和弊端
  15. freemarker中的split字符串分割
  16. 纯原创最全Redis面试题整理
  17. GB28181协议开发介绍
  18. 测试用例方法---场景法(黑盒)
  19. 利用GDAL(python)读取Landsat8数据
  20. c语言逆值,C语言 n*n矩阵求值及求逆矩阵

热门文章

  1. 关闭/开启“此电脑”左边的导航栏win10
  2. Vue表单输入绑定(元婴中期)
  3. 重新编译Spark2.4.0 Parcels包
  4. AS使用自己的手机设备进行调试
  5. AI经典书单:入门人工智能该读哪些书?
  6. “法外狂徒”为什么那么多?用程序来告诉你!
  7. SSL证书7大常见错误及解决办法!
  8. python读取lst文件
  9. 好友克隆自助下单网站_可口可乐的成功可以这样复制!
  10. 抑郁症自我测试皮肤软件,以躯体症状为主的抑郁症患者的交感神经皮肤反应研究...