出主机框图,分别以存储指令“STA M”和加法指令“ADD M”(M均为主存地址)为例,在图中按序标出完成该指令(包括取指阶段)的信息流程。假设主存容量为256M×32位,在指令字长、存储字长、机器字

前期知识点介绍:
在这里插入图片描述

主机框图如图1.11所示。在这里插入图片描述

存数指令

STA M指令:

  1. 取指令:
    PC→MAR,
    MAR→ M,
    M →MDR,
    MDR→IR,

  2. 分析指令:
    OP(IR)→CU,

  3. 执行指令:
    Ad(IR)→MAR
    MAR→ M,
    ACC→MDR,
    MDR→ M,
    WR

(2)ADD M指令:

  1. 取指令:
    PC→MAR,
    MAR→M ,
    M →MDR,
    MDR→IR,
  2. 分析指令:
    OP(IR)→CU
  3. 执行指令:
    Ad(IR)→MAR,
    M→MDR,
    MDR→X,
    ADD,
    ALU→ACC,
    ACC→MDR,
    WR

指令字长=存储字长=机器字长

主存容量是256×32位,得2的28次方=256M。故MAR=28,PC=28,MDR=32;又指令字长=存储字长=机器字长,则IR=ACC=MQ=X=32。

(1)常用简写:
M:主存储器
WT:发送窗口,WR:接收窗口
RS:源寄存器,RD:目的寄存器
(2)一般情况下,取指令部分所有操作指令都是:
PC→MAR,MAR→M ,M→ MDR,MDR→IR

已知某顺序执行程序中有一条取数指令,该指令保存在内存23H单元中。以取数指令为例,分析指令执行过程:

取指令阶段:PC→MAR→存储体→MDR→IR
分析指令阶段︰ OP(IR)→CU
执行指令阶段︰Ad(IR)→MAR→存储体→MDR→ACC

同时,形成下一条指令的地址,即PC(或者23H)+1→PC

码文不易,如果帮助到您,希望您可以点赞支持,与您无害,与我有益,谢谢!

为了帮助您理解主机框图,我会简要描述并绘制一个基本示意。在这个示例,我们考虑的是一台简单的单地址指令计算机架构,主要包括以下几个部分: 1. **指令输入** (I): 这里通常是一个8位或16位指令寄存器(Instruction Register, IR),用于存放当前执行的指令。 2. **指令译码** (D): 当接收到STA M 或 ADD M 指令时,会有一个译码部件解析指令,可能包含一个7位地址字段(因为256MB = 2^28 字节,所以地址宽度为28 - log2(256) ≈ 7位)。 3. **操作数地址生成** (A): 根据指令的内容,从IR生成相应的内存地址。例如,对于STA M,地址直接来自IR;而对于ADD M,可能需要额外的立即寻址字段或者PC值加上偏移量。 4. **数据总线** (Bus): 连接到主存和算术逻辑单元(ALU),传输数据。 5. **主存** (Memory): 容量256MB × 32位,每条数据线32位。 6. **ALU** (Arithmetic Logic Unit): 执行加法存储操作。如果采用双操作数模式,它可能有自己的通用寄存器(比如32位的运算结果寄存器)。 7. **通用寄存器组** (R): 可能包括若干32位通用寄存器,如程序计数器(PC), 状态寄存器等。 8. **数据缓存** (Cache, 如果有的话): 通常对高速访问提供辅助存储空间,这里暂不画细节。 9. **控制逻辑** (Control): 决定何时从主存读取数据,何时写回结果,以及下一条指令的获取等。 完成指令过程大致如下: ``` IR -> 指令译码 -> 地址生成 -> 数据总线 -> 主存(读取或写入)-> ALU -> 寄存器或数据缓存 -> 控制逻辑 -> 更新PC -> 下一条指令 STA M 和 ADD M 示例: IR -> [解码] -> M[7:0] -> Data Bus -> [读取或写入] M[M[7:0]] -> ALU (读取寄存器内容,无操作) -> R[对应位置] -> 控制逻辑更新R IR -> [解码] -> M[7:0] -> Data Bus -> [读取] M[M[7:0]] -> ALU (+ R[对应位置]) -> R[对应位置] -> 控制逻辑更新R ``` 每个寄存器的位数取决于系统设计,但通常IR、地址字段和ALU结果寄存器为32位,其他可能为16或32位,具体取决于硬件规格。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值