已知TEC-8模型计算机可用控存空间中11H、2FH、3FH共3个单元空闲,试根据现有控存结构、微操作控制信号和机器时序,尝试进行指令扩展,扩展岀一条新指令。要求给岀该指令对应的微程序,列岀每一拍所需的微操作控制信号,分配控存空间,并验证其功能。
时间: 2024-03-15 17:44:37 浏览: 12
根据题目给出的条件,我们可以尝试进行一条新指令的设计。为了方便起见,我们将该指令命名为STOREM,并规定其功能为:将寄存器中的数据存储到指定的内存单元中。
1. 首先,我们需要规定STOREM指令的操作码,假设将其规定为"001100"。
2. 接下来,需要设计STOREM指令对应的微程序。根据指令的功能,STOREM指令应该包含以下微操作:
(1) 从IR中取出操作数
(2) 将操作数送入MAR中
(3) 将寄存器中的数据送入MBR中
(4) 发出写存储器的请求,将MBR中的数据写入指定的内存单元中
(5) 执行下一条指令
具体的微操作控制信号如下:
微操作 | 控制信号
-------|---------
取指令 | 0000
操作数到MAR | 0100
寄存器到存储器 | 1010
执行下一条指令 | 0001
3. 然后,需要分配控存空间。由于STOREM指令的操作码为"001100",因此可以将其存放在控存空间的第12单元。另外,为了便于验证,我们可以将可以使用的空闲单元空间分别存放在控存空间的第13、14、15单元。
4. 最后,需要进行功能验证。假设要将寄存器中的数据存放到内存的地址为11H处,我们可以编写以下程序进行测试:
```
MOV A, #5 ; 将数值5存入寄存器A中
STRM 11H ; 将寄存器A中的数值存放到内存地址11H处
HLT ; 停机指令
```
将该程序存入指令存储器中,并将PC的初始值设置为程序的起始地址。运行程序后,应该可以看到内存地址为11H处存放的是数值5。这表明STOREM指令的设计和实现是正确的。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)