在有些指令中,不需要明确指出使用的寄存器名,即 隐念使用了某寄存器,称为隐含使用。 例如,在循环指令LOOP中,CX被隐含指定作循环次数计 数用。 个别指令对寄存器有特定的使用,并且又必须在指令中 指明它的名字,这类寄存器的使用称为特定使用。 例如,移位指令 SHL AX,CL CL被固定用作移位次数。 2.指针寄存器 指针寄存器有堆栈指针SP和基址指针BP 它们一般被用来存放16位地址,在形成20位的物理地 址时常被作为偏移量使用。 16
16 在有些指令中,不需要明确指出使用的寄存器名,即 隐念使用了某寄存器,称为隐含使用。 例如,在循环指令 LOOP中,CX被隐含指定作循环次数计 数用。 个别指令对寄存器有特定的使用,并且又必须在指令中 指明它的名字,这类寄存器的使用称为特定使用。 例如,移位指令 SHL AX,CL CL被固定用作移位次数。 2. 指针寄存器 指针寄存器有堆栈指针SP和基址指针BP 它们一般被用来存放16位地址,在形成20位的物理地 址时常被作为偏移量使用
SP指针——在进行堆栈操作时,被隐含使用,被用来指向 堆栈顶部单元 BP指针—被用来指向堆栈段内某一存储单元。BP除用 作地址指针外也可以象数据寄存器一样,存放参加运算的 操作数和运算的结果。 3.变址寄存器 有两个16位的变址寄存器SI和DI,一般被用来作地址指针。 SI源变址寄存器D目的变址寄存器 同BP寄存器一样,SI和DI也可以用作通用数据寄存 器存放操作数和运算结果。 17
17 SP指针——在进行堆栈操作时,被隐含使用,被用来指向 堆栈顶部单元。 BP指针——被用来指向堆栈段内某一存储单元。BP除用 作地址指针外也可以象数据寄存器一 样,存放参加运算的 操作数和运算的结果。 3. 变址寄存器 有两个16位的变址寄存器SI和DI,一般被用来作地址指针。 SI——源变址寄存器 DI——目的变址寄存器 同BP寄存器一样,SI和DI也可以用作通用数据寄存 器存放操作数和运算结果