目录
1. 基址寻址 EA = (BR) + A
基址寄存器可以是 专用寄存器 和 通用寄存器
区别:
使用专用寄存器的时候,不需要在指令中指出寄存器编号,而是将编号隐含的放在操作码中;只要进行基址寻址这个操作,就自动去寻找相应的专用寄存器;
使用通用寄存器的时候,因为通用寄存器除了要进行基址寻址任务外,还有很多其它任务。所以当某条指令用到它的时候需要给出它的一个编号,编号就填写到指令字的一个字段中。
基址寄存器是面向操作系统的,意思是 其内容只能由操作系统来修改,或者专门设置一个管理程序来修改。
在程序执行过程中,这个内容是不改的(基地址)。通过调整形式地址(偏移量)定位到程序中的不同指令。
使用通用寄存器作为基址寄存器时,用户可以决定由哪个寄存器作为基址寄存器,但是寄存器的内容仍由操作系统确定
这样做的优势是:有利于多道程序设计。(独特优点)
扩大寻址范围的原理是:基址寄存器的位数大于 形式地址A 的位数。(这个是偏移寻址的一个公共优点,后面不赘述。)
LDA 是数据传送类指令 (从一个地方到另一个地方)
LDA D 这条机器指令只有一个地址,说明隐含了一个地址,隐含的地址就是ACC <