某32位字长计算机采用扩展操作码结构,指令字长固定为32位。主存按字节编址,现有以下指令执行情况:在执行某单字长指令时,累加器ACC的值被更新为内存地址3000H处存储的数据。已知该指令的操作码占8位,寻址特征部分占4位,形式地址A占20位。若采用基址寻址方式,基址寄存器BR的值为1000H,形式地址A的值为2000H,且内存地址3000H中存储的数据为5000H。则该指令执行后,ACC的值应为多少?
答案解析
核心考点说明:本题考察扩展操作码结构下基址寻址方式的理解,需要综合指令格式、主存编址方式、有效地址计算等多个知识点。解题的关键在于理解基址寻址的有效地址计算方式以及主存按字节编址对地址计算的影响。
解题思路分析:
1. 首先确定指令格式:操作码8位 + 寻址特征4位 + 形式地址20位
2. 根据寻址方式计算有效地址:基址寻址的有效地址EA = (BR) + A = 1000H + 2000H = 3000H
3. 根据主存编址方式确定数据位置:主存按字节编址,指令字长为32位(4字节),因此每个指令占用4个存储单元。但数据访问时,32位字长意味着每次访存会读取连续4个字节的数据。
4. 查找内存地址3000H处的数据:根据题干描述,内存地址3000H中存储的数据为5000H,因此ACC的值应为5000H。
每个选项的详细分析:
A. 2000H:这是形式地址A的值,不是有效地址也不是数据内容,属于对寻址方式理解错误。
B. 1000H:这是基址寄存器BR的值,不是有效地址也不是数据内容,属于对寻址方式理解错误。
C. 3000H:这是有效地址EA的计算结果,但题目明确说明该地址处的数据为5000H,因此这个选项混淆了地址和数据的概念。
D. 5000H:正确选项,准确反映了基址寻址方式下有效地址3000H处存储的数据内容。
易错点提醒:
1. 容易混淆地址计算和数据读取两个步骤
2. 可能忽略主存按字节编址但数据按字长读取的特点
3. 需要区分形式地址A和有效地址EA的不同
4. 要注意扩展操作码结构不影响寻址方式的计算逻辑
正确答案:D