请问汇编中ax,bx,cx,dx这几个寄存器有什么不同?

来源:百度知道 编辑:UC知道 时间:2024/04/19 16:02:01

他们都是通用寄存器,但是又有各自的特殊用法,列在下面供参考。
其实刚开始学习寄存器,这些东西不需要记忆,只要有大概的印象就行了。因为在后面的学习过程中,会在相应的指令学习时详细介绍的。

AX(AL):
(1)在乘法指令中存放乘数和乘积
(2)在除法指令中存放被除数和商
(3)用在非组合型BCD码运算的调整中
(4)用在某些串操作指令(LODS,STOS,SCAS)中
(5)在输入/输出指令中作数据寄存器
AH:在LAHF指令中作目的寄存器
AL:
(1)用在组合型BCD码的加减法调整指令中
(2)在XLAT指令中,作目的寄存器

BX:
(1)在XLAT指令中,作基址寄存器
(2)还可以作为存放地址的寄存器构成寄存器间接寻址或者基址寻址

CX:在循环指令和重复前缀中,作循环次数计数器
CL:在移位指令中,做移位次数计数器(移位指令执行后,CL中内容不变)

DX:
(1)在字乘法和除法指令中,作辅助累加器(即存放乘积或被除数的高16位)
(2)在输入输出指令中存放16位的端口地址