📌  相关文章
📜  PC相对和基址寄存器寻址模式之间的差异

📅  最后修改于: 2021-06-28 16:37:59             🧑  作者: Mango

先决条件–寻址模式

1. PC相对寻址方式:
PC相对寻址模式用于实现段内控制的传递,在这种模式下,有效地址是通过向PC增加位移来获得的。

EA = PC + Address field value
PC = PC + Relative value 

2.基址寄存器寻址模式:
基址寄存器寻址模式用于实现段间控制转移。在这种模式下,通过将基址寄存器值添加到地址字段值中来获得有效地址。

EA = Base register + Address field value
PC = Base register + Relative value 

PC相对寄存器和基址寄存器寻址模式之间的区别:

PC Relative Addressing Mode Base Register Addressing Mode
The content of program counter is added to the addressing field of the instruction i to obtain the effective address. The base register content is added to the addressing field of the instruction to obtain the effective address.
The addressing field of the instruction is mostly a signed number which can be either positive or negative. A base register holds a base address and the addressing field of the instruction gives displacement according to the base address.
A program counter always keeps track of the instructions of the program stored in its memory. A particular register has to be selected from the register set, according to the instruction.
Uses more bits as it has to specify a memory address directly. Uses less bits as it has to select a register from a register set.
A program counter always contains the address of the immediately next instruction to be executed. After fetching the address mentioned in the instruction, the program counter value immediately increases. In Base Register addressing mode the displacement value can be the same as the value required to reference the desired address as it does not immediately go to the next instruction. Effective address of the operand is obtained by adding the program counter content to the addressing field of instruction. Effective address of the operand is obtained by adding the base register content to the addressing field of instruction. EA = PC + Address field value
PC = PC + Relative value
EA = Base register + Address field value
PC = Base register + Relative value