计算机组成与系统结构实验-基于微程序控制的CPU设计

本文详述了一次计算机组成实验,重点在于微程序控制的CPU设计。实验涉及使用Dais-CMStudio软件,包括用汇编语言编写源程序,实现数据输入、存储、计算和输出功能,并新增了减法和寄存器加法指令。通过添加微程序,实现了SUB和ADR指令,解析了微地址计算和微指令的编写方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文章主要是为了通俗的解释计算机组成实验的微程序汇编的实现方法:


实验目的

在掌握部件单元电路实验的基础上,初步了解如何基于微程序控制进行CPU设计。


实验软件

Dais-CMStudio


实验要求

1、学习教材3.1,3.2节,熟悉联机方式下的开发环境。

2、完成以下内容:


任务1:用汇编语言编写一个源程序,完成以下功能:

从I/O输入56h,并存入内存的18号单元;

从I/O输入78h,存入寄存器R0;

将两者相加,存入19号单元;

将19号单元的内容输出到I/O显示。


任务2:增加一条减法指令,指令格式如下:

指令格式:SUB  R0, [addr]

机器指令码:11000000  XXXXXXXX  XXXXXXXX

说明:R0 - [addr]→R0


任务3:增加一条寄存器加法指令,指令格式如下:

指令格式:ADR  Rd, Rs

机器指令码:1110RdRs  

说明:Rd + Rs→Rd


任务实现


任务1:因为软件内已经含有了5条基本指令助记符等的内容了,我们直接使用进行汇编即可(打开CMX16文件的MXJ6.ASM)

            具体实现的汇编代码如下:                                                

            IN  R0,IOL          (将IO低位的数据存入R0通用寄存器)

            STA 0018h,R0    (将R0中的数据存入内存的18号单元)

            IN  R0,IOL          

            ADD R0,0018h   (将0018h号单元的内存数据与R0相加存入R0)

    &n

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值