项目
一、实验内容
1.实验目的和意义
搭建复杂模型机,运用机器指令实现运算类、控制类、数据传送类指令的功能,运行机器指令综合运用所学计算机组成原理知识,设计并实现较为完整的计算机。
2.实验目标
搭建复杂模型机选择加法或减法,计算两数的和或差。
3.实验设备
PC机一台,TD-CMA实验系统一套。
二、实验原理
1.数据格式
模型机规定采用定点补码表示法表示数据,字长为8位,8位全用来表示数据(最高位不表示符号),数值表示范围是: 0≤X≤-1。
2.指令设计
模型机设计三大类指令共十五条,其中包括运算类指令、控制转移类指令,数据传送类指令。
运算类指令包含三种运算,算术运算、逻辑运算和移位运算,设计有6条运算类指令,分别为:ADD、AND、INC、SUB、OR、RR,所有运算类指令都为单字节,寻址方式采用寄存器直接寻址。
控制转移类指令有三条HLT、JMP、BZC,用以控制程序的分支和转移,其中HLT为单字节指令,JMP和BZC为双字节指令。
数据传送类指令有IN、OUT、MOV、LDI、LAD、STA共6条,用以完成寄存器和寄存器、寄存器和I/O、寄存器和存储器之间的数据交换,除MOV指令为单字节指令外,其余均为双字节指令。
(在这里我们只用到 IN、OUT、LAD、ADD、AND、SUB、HLT、BZC指令)
3.指令格式
有单字节指令(ADD、AND、INC、SUB、OR、RR、HLT和MOV)格式如下:
7654 |
32 |
10 |
OP-CODE |
RS |
RD |
其中,OP-CODE为操作码,RS为源寄存器,RD为目的寄存器,并规定:
RS或RD |
选定的寄存器 |
00 01 10 11 |
R0 R1 R2 R3 |