BP (Base Pointer) 基址指针用于存放内存的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中。 SP (Stack Pointer 堆栈指针用于存放栈顶的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中
BP(Base Pointer) 基址指针用于存放内存的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中。 SP(Stack Pointer ) 堆栈指针用于存放栈顶的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中
寄存器的特殊用途和隐含性质 在指令中没有明显的标出,而这些寄存器参 加操作,称之为“隐含寻址”。 具体的:在某类指令中,某些通用寄存器有指 定的特殊用法,编程时需遵循这些规定,将某些 特殊数据放在特定的寄存器中,这样才能正确的 执行这些指令。采用“隐含”的方式,能有效地 缩短指令代码的长度
寄存器的特殊用途和隐含性质 在指令中没有明显的标出,而这些寄存器参 加操作,称之为“隐含寻址”。 具体的:在某类指令中,某些通用寄存器有指 定的特殊用法,编程时需遵循这些规定,将某些 特殊数据放在特定的寄存器中,这样才能正确的 执行这些指令。采用“隐含”的方式,能有效地 缩短指令代码的长度
寄存器名 特殊用途 隐含性质 在输入输出指令中作数据寄存器用 不能隐含 AX,AL 在乘法指令中存放被乘数或乘积,在除法指令中存放被除数或商 隐含 AH 在LAHF指令中,作目标寄存器用 隐 含 在十进制运算指令中作累加器用 AL 隐含 在XLAT指令中作累加器用 隐 含 在间接寻址中作基址寄存器用 不能隐含 BX 在XLAT指令中作基址寄存器用 隐含 CX 在串操作指令和LOOP指令中作计数器用 隐 含 CL 在移位/循环移位指令中作移位次数计数器用 不能隐含 在字乘法/除法指令中存放乘积高位或被除数高位或余数 隐 DX 含 在间接寻址的输入输出指令中作地址寄存器用 不能隐含 在字符串运算指令中作源变址寄存器用 SI 隐含 在间接寻址中作变址寄存器用 不能隐含 》 在字符串运算指令中作目标变址寄存器用 DI 隐含 在间接寻址中作变址寄存器用 不能隐含 BP 在间接寻址中作基址指针用 不能隐含 SP 在堆栈操作中作堆栈指针用 隐含
寄存器名 特殊用途 隐含性质 在输入输出指令中作数据寄存器用 不能隐含 AX, AL 在乘法指令中存放被乘数或乘积,在除法指令中存放被除数或商 隐 含 AH 在LAHF指令中,作目标寄存器用 隐 含 在十进制运算指令中作累加器用 隐 含 AL 在XLAT指令中作累加器用 隐 含 在间接寻址中作基址寄存器用 不能隐含 BX 在XLAT指令中作基址寄存器用 隐 含 CX 在串操作指令和LOOP指令中作计数器用 隐 含 CL 在移位/循环移位指令中作移位次数计数器用 不能隐含 在字乘法/除法指令中存放乘积高位或被除数高位或余数 隐 含 DX 在间接寻址的输入输出指令中作地址寄存器用 不能隐含 在字符串运算指令中作源变址寄存器用 隐 含 SI 在间接寻址中作变址寄存器用 不能隐含 在字符串运算指令中作目标变址寄存器用 隐 含 DI 在间接寻址中作变址寄存器用 不能隐含 BP 在间接寻址中作基址指针用 不能隐含 SP 在堆栈操作中作堆栈指针用 隐 含
2、段寄存器 总线接口部件BIU设有4个16位段寄存器 CS(Code Segment),代码段寄存器中存放程 序代码段起始地址的高16位。 > DS(Data Segment),数据段寄存器中存放数 据段起始地址的高16位。 > SS(Stack Segment),堆栈段寄存器中存放堆 栈段起始地址的高16位 。 > ES(Extended Segment).,扩展段寄存器中存 放扩展数据段起始地址的高16位
2、段寄存器 总线接口部件BIU设有4个16位段寄存器 CS(Code Segment),代码段寄存器中存放程 序代码段起始地址的高16位。 DS(Data Segment),数据段寄存器中存放数 据段起始地址的高16位。 SS(Stack Segment),堆栈段寄存器中存放堆 栈段起始地址的高16位。 ES(Extended Segment),扩展段寄存器中存 放扩展数据段起始地址的高16位
3、标志寄存器FR 标志寄存器FR中共有9个标志位,可分成 两类: >状态标志 表示运算结果的特征,它们是 CF、PF、AF、ZF、SF和OF >控制标志 控制CPU的操作,它们是IF、 DF和TF
3、标志寄存器FR 标志寄存器FR中共有9个标志位,可分成 两类: 状态标志 表示运算结果的特征,它们是 CF、PF、AF、ZF、SF和OF 控制标志 控制CPU的操作,它们是IF、 DF和TF