概述
1、通用寄存器组
(1)数据寄存器(字或字节):AX、BX、CX、DX
AX:作为累加器使用,算术运算的主要寄存器,在乘、除等指令中指定用来存放操作数。
BX:计算存储器地址时,用作基址寄存器。
CX:保存计数值,移位指令、循环和串指令中用作隐含的计数器。
DX:作双字长运算时,把DX和AX组合在一起存放一个双字长数,DX用来存放高位字;对某些I/O操作,DX用来存放I/O的端口地址。
(2)指针寄存器:SP(堆栈指针)、BP(基址指针)
SP、BP与堆栈段寄存器SS联用来确定堆栈段中的某一存储单元的地址。
SP用来指示段顶的偏移地址,BP作为堆栈区的一个基地址以便访问堆栈中的信息。
(3)变址寄存器:SI(源变址寄存器)、DI(目的变址寄存器)
SI、DI一般与数据段寄存器DS联用,用来确定数据段中某一存储单元的地址。(有自动增量和减量的功能)
在串处理指令中,SI和DI作为隐含的源变址和目的变址寄存器,此时SI和DS联用,DI和附加段寄存器ES联用,分别达到在数据段和附加段中寻址的目的。
(4)段寄存器:CS(代码段)、DS(数据段)、ES(附加段)、SS(堆栈段)
只有四个指针和变址寄存器以及BX寄存器可以存放偏移地址。
2、专用寄存器
(1)指令指针寄存器:IP(存放代码段中的偏移地址)
在程序运行过程中,它始终指向下一条指令的首地址,与段寄存器CS联用确定下一条指令的物理地址。
(2)堆栈指针寄存器:SP(存放栈顶的偏移地址)
(3)标志寄存器:FLAGS(PSW,程序状态寄存器)
3、条件码
①OF:溢出标志。溢出,OF置1,否则置0.
②SF:符号标志。结果为负时置1,否则置0.
③ZF:零标志。运算结果为0时,ZF置1,否则置0.
④CF:进位标志。最高有效位有进位时置1,否则置0.
控制标志位为方向标志(DF),在串处理指令中控制信息的方向用。当DF为1时,每次操作后使变址寄存器SI和DI减小,这样就使串处理从高地址向低地址方向处理。当DF为0时,每次操作后使变址寄存器SI和DI增大,这样就使串处理从低地址向高地址方向处理。
4、实模式存储器寻址
每个存储单元有20位物理地址,由16位段地址和16位偏移地址组成。把段地址左移4位再加上偏移地址就形成物理地址。
最后
以上就是鳗鱼野狼为你收集整理的汇编知识点之寄存器组、存储器的全部内容,希望文章能够帮你解决汇编知识点之寄存器组、存储器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复