【计算机组成原理】 “运算器”典型例题

一、前言

因为疫情原因,开学在家上网课。所学是慕课哈工大的国家精品课程计算机组成原理(上),教材是唐朔飞老师《计算机组成原理》第二版教材。根据学习进度,我会写一些专题笔记,这次写一下 “运算器部分的”典型例题。第一次学,有什么不足希望大家批评指正。

二、第一次作业(习题1.9)

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

标准答案:

(1) STA M指令:
取指令:PC→MAR,MAR→MM,MM→ MDR,MDR→IR,
分析指令:OP(IR) →CU,
执行指令:Ad(IR) →MAR,MAR→MM, ACC→MDR,MDR→MM,WR
【计算机组成原理】 “运算器”典型例题_第1张图片
(2) ADD M指令:
取指令:PC→MAR,MAR→MM,MM→ MDR,MDR→IR,
分析指令:OP(IR) →CU,
执行指令:Ad(IR) →MAR, RD,MM→MDR,MDR→X,ADD,ALU→ACC,
ACC→MDR,WR
(主机框图参照第一问)

(3) 假设主存容量 256M*32 位,在指令字长、存储字长、机器字长相等的条件下, ACC、X、IR、MDR寄存器均为 32 位, PC和 MAR寄存器均为 28 位.

补(笔记):

(1)常用简写:
MM:主存储器
WT:发送窗口,WR:接收窗口
RS:源寄存器,RD:目的寄存器

(2)一般情况下,取指令部分所有操作指令都是:PC→MAR,MAR→MM,MM→ MDR,MDR→IR,

(3)运算器
ACC和X作为输入,ACC也用于存储,由于像乘法除法之类的运算,运算长度增加一倍,把多出来的存储在MQ中。
存储规则:
【计算机组成原理】 “运算器”典型例题_第2张图片
乘法操作:ACC//MQ表示乘积高位放在ACC中,低位放在MQ中。
【计算机组成原理】 “运算器”典型例题_第3张图片

除法操作:
【计算机组成原理】 “运算器”典型例题_第4张图片
(4) 主存容量 = 存储单元个数 × 存储字长
如 MAR × MDR 容量
10 × 8 => 1K×8位
16 × 32 => 64K×32位
拿第三问为例,假设主存容量 256M*32 位:
由1M = 2^10K,
1K = 2^10 B,
1B = 2^3 b,
得 256M = 2 ^28 B。
=>在指令字长、存储字长、机器字长相等的条件下, ACC、X、IR、MDR寄存器均为 32 位, PC和 MAR寄存器均为 28 位。

你可能感兴趣的:(计算机组成原理)