什么是通用寄存器? 您所在的位置:网站首页 si寄存器几位 什么是通用寄存器?

什么是通用寄存器?

2024-01-23 23:22| 来源: 网络整理| 查看: 265

通用寄存器:这类寄存器在处理器中数量较多、使用频度较高,具有多种用途。例如它们可用来存放指令需要的操作数据,又可用来存放地址以便在主存或I/O接口中指定操作数据的位置。 8086的内部结构 8086的寄存器 通用寄存器(General-Purpose Register)一般是指处理器最常使用的整数通用寄存器,可用于保存整数数据、地址等。8086处理器只有8个通用寄存器,数量有限。

8086 处理器的 8 个 16 位通用寄存器,分别被命名为:AX、BX、CX、DX、SI、DI、BP和SP。其中前4个通用寄存器AX、BX、CX和DX还可以进一步分成高字节H(High)和低字节L(Low)两部分,这样又有了8个8位通用寄存器:AH和AL、BH和BL、CH和CL、DH和DL。前4个通用寄存器在编程中,可以整个使用16位寄存器(例如:AX),也可以分成两个8位使用:D15~D8(例如:AH)和D7~D0(例如:AL),对其中某8位的操作,并不影响另外对应8位的数据。

通用寄存器的用途很多,可以保存数据、暂存运算结果,也可以存放存储器地址、作为变量的指针。但在 8086 处理器中每个寄存器又有它们各自的特定作用,并因而得名。程序中通常也按照其含义使用它们 在这里插入图片描述 许多指令需要表达两个操作数(操作对象,例如加法指令的被加数以及加法结果):

源操作数是指被传送或参与运算的操作数(例如:加法的被加数)。目的操作数是指保存传送结果或运算结果的操作数(例如:加法的和值结果)。

SI和DI是变址寄存器,常通过改变寄存器表达的地址指向数组元素。SI常用于指向源操作数,而DI常用于指向目的操作数。

堆栈(Stack)是一个特殊的存储区域,它采用先进后出FILO(First In Last Out)、也称为后进先出LIFO(Last In First Out)的操作方式存取数据。它用于调用子程序时暂存数据、传递参数、存放局部变量,也可以用于临时保存数据。BP和SP是指针寄存器,用于指向堆栈中的数据。其中,SP堆栈指针会随着处理器执行有关指令自动增大或减小,所以SP不应该再用于其他目的,实际上可归类为专用寄存器;但是 SP 又可以像其他通用寄存器一样灵活地改变。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有