《计算机组成原理》报告微程序设计Word格式.docx
- 文档编号:16616818
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:26
- 大小:1.12MB
《计算机组成原理》报告微程序设计Word格式.docx
《《计算机组成原理》报告微程序设计Word格式.docx》由会员分享,可在线阅读,更多相关《《计算机组成原理》报告微程序设计Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
GRS:
寄存器组;
IB:
总线;
WD:
写;
RD:
读;
PSW:
程序状态标志位;
XXoe:
出口;
XXce:
入口。
此阶段第二步是熟悉基本的微指令,取指令,取源操作数,取目的操作数,执行指令,保存数据。
以汇编指令MOV#0001H,0033H为测试
(1)取指令的微程序
微地址(H)
微指令(H)
微命令
微指令运行效果
000
20080001
PCoe,ARoe
PC送出信号0030到AR
001
00069002
ARoe’,RD,DRce’,PCinc
主存读出地址0030的内容即测试汇编指令到DR
002
CC000003
DRoe,IRce
DR把指令送到IR
003
00000404
BM=2
BM=2是多分支转移,取源操作数入口为004,所以转向004H。
(2)取源操作数微程序
004
00000A08
BM=5
取源操作数入口
BM=5,NA=008H为寄存器寻址,立即寻址入口为00BH。
00B
20080012
PCoe,ARce
PC送出信号0031到AR
012
00069016
主存读出地址0031的内容即源操作数到DR
016
D000006
DRoe,TRce
立即寻址直接把立即数放入TR
取出的源操作数放在TR中,转到取目的操作数的微程序入口006H
(3)取目的操作数微程序
006
00000A28
取目的操作数入口
BM=5,NA=028H为寄存器寻址,直接寻址入口为02CH。
02C
20080033
PC送出信号0032到AR
033
00069034
主存读出地址0032的内容即目的操作数到DR
034
C0080035
DRoe,ARce
直接寻址把地址从DR送到AR
035
00061036
ARoe’,RD,DRce’
直接寻址中没用
036
D4000007
取出的目的操作数放在A中,转到执行指令的微程序入口007H
(4)执行阶段微程序
双操作数赋值指令MOV的微程序入口地址为041H
007
00000800
NOP
跳转到MOV的微指令
041
94000040
TRoe,Ace
把TR中保存的数据送入A
040
00300E50
SVce,BM=7
把A中的数据送入SHIFTER
将结果保存在主存中,依Md转移,所以转到051H
051
60030052
Soe,DRce
把SHIFTER中的数据送入DR
052
00052200
ARoe,DRoe’,WR
数据0001写入地址0033里
指令执行结果:
把0001写入0033地址中。
(1)取指令的微程序配图
(2)取源操作数微程序配图
(3)取目的操作数微程序配图
(4)执行阶段微程序配图
前面使用了立即寻址以及直接寻址,以下为其他寻址方式的微程序。
(1)寄存器寻址
取源操作数阶段
008
D0000006
GRSoe,TRce
取目的操作数阶段
028
(2)寄存器间接寻址
50000006
54000007
GRSoe,Ace
(3)寄存器自增间接寻址
00A
54080010
GRSoe,Ace,ARce
010
02700011
INC,SVce
011
68000015
Soe,GRSce
02A
54080030
030
02700031
031
68000035
(4)立即寻址
02B
00000007
(5)直接寻址
00C
20080013
013
00069014
014
C0080015
015
00061016
DRoe,Tce
DRoe,Ace
(6)间接寻址
00D
20080017
017
00069018
018
C0080019
019
00061014
02D
20080037
037
00069038
038
C0080039
039
00061034
(7)变址寻址
00E
2008001A
01A
0006901B
01B
D400001C
01C
40700020
GRSoe,ADD,SVce
020
60080015
Soe,ARce
02E
2008003A
03A
0006903B
03B
D400003C
03C
40700032
032
60080035
(8)相对寻址
00F
2008001D
01D
0006901E
01E
D400001F
01F
20700020
PCoe,ADD,SVce
02F
2008003D
03D
0006903E
03E
D400003F
03F
20700035
2了解算术,逻辑,移位,程序控制等基本常用指令阶段
汇编指令
MOV(赋值)
TRoe,ace
MOV
ADD(加)
042
98700E50
TRoe,ADD,SVce,PSWce,BM=7
ADDC(带进位加)
043
98B00E50
TRoe,ADDC,SVce,PSWce,BM=7
SUB(减)
044
98F00E50
TRoe,SUB,SVce,PSWce,BM=7
SUBB(带进位减)
045
99300E50
TRoe,SUBB,SVce,PSWce,BM=7
AND(与)
046
99700E50
TRoe,AND,SVce,PSWce,BM=7
OR(或)
047
99B00E50
TRoe,OR,SVce,PSWce,BM=7
XOR(异或)
048
9A300E50
TRoe,XOR,SVce,PSWce,BM=7
CMP(比较)
049
98C00200
TRoe,SUB,PSWce,BM=1
TEST(测试)
04A
99400200
TRoe,AND,PSWce,BM=1
SAR(算术右移)
061
不会
SHL(逻辑左移)
062
18200E50
PSWce,SLce,BM=7
SHR(逻辑右移)
063
18100E50
PSWce,SRce,BM=7
ROL(循环左移)
064
00200E50
SLce,BM=7
ROR(循环右移)
065
00100E50
SRce,BM=7
RCL(进位循环左移)
066
RCR(进位循环右移)
067
JC(CF=1跳)
068
00000626
BM=3
JNC(CF=0跳)
069
JO(OF=1跳)
06A
JNO(OF=0跳)
06B
JZ(ZF=1跳)
06C
JNZ(ZF=0跳)
06D
JS(SF=1跳)
06E
JNS(SF=0跳)
06F
J(条件不满足)
026
00000200
BM=1
J(条件满足)
027
A4000200
ARoe,PCce,BM=7
JMP(跳转)
070
ARoe,PCce,BM=1
INC(自增)
071
1A700E50
PSWce,INC,SVce,BM=7
DEC(自减)
072
1AB00E50
PSWce,DEC,SVce,BM=7
NOT(取反)
073
19F00E50
PSWce,NOT,SVce,BM=7
HALT(停机)
058
00000058
NOP(空)
059
部分指令配图
MOV指令1
MOV指令2
ADD指令
CMP指令
SHR指令
INC指令
3尝试堆栈与中断有关指令阶段
1)堆栈
入栈PUSH
078
0030009B
SVce
把A中的目的操作数放入SHFTER
09B
6003009C
Soe,DRce
把SHFTER中的目的操作数放入DR
09C
F400009D
SPoe,Ace
把栈顶指针地址放入A中
09D
02B0009E
DEC,SVce
把栈顶指针地址减一放入SHFTER
09E
7C080052
Soe,ARce,SPce
把减了1的栈顶地址放入AR和SP
入栈配图1
入栈配图2
出栈POP
079
B000009F
ARoe,TRce
AR把取到的目的操作数放入TR
0A0
02C610A1
SPinc,ARoe’,DRce’,RD
读出栈内的内容到DR
0A1
D40000A2
DR把栈内的信息送到A
0A2
003000A3
A把栈内的信息送到SHFTER
0A3
80080051
TRoe,ARce
TR把保存的目的操作数送回AR
出栈配图1
出栈配图2
出栈配图3
测试汇编指令(如上图)
MOV#0051H,R2
PUSHR2
PUSH0050H
POP0053H
POP(R2)
CALL指令
07A
B00000A4
0A4
230300A5
SPdec,PCoe,DRce
PC送到DR,栈顶指针减1
0A5
E00800A6
SPoe,ARce
栈顶指针送到AR
0A6
84000052
TRoe,PCce
TR把取到的目的操作数放入PC
RET指令
05A
E00800A7
SP把栈顶指针送到AR
0A7
02C610A8
主存读出栈中内容DR
0A8
C4000000
DRoe,PCce
DR把保存的内容送到PC
2)中断
EI开中断
05C
00005200
STI,BM=1
开中断,BM=1,依中断转移
DI关中断
05D
00006200
CLI,BM=1
关中断,BM=1,依中断转移
中断隐指令
080
F4000081
081
22B30082
PCoe,DEC,SVce,DRce
把A中的栈顶指针地址自减1放入移位寄存器中,PC送到DR
082
74080083
Soe,Ace,ARce
把移位寄存器栈顶指针地址放入A和AR中
083
00052084
ARoe’,DRoe’,WR
把PC写入栈中
084
02B33085
DEC,SVce,DRce,PWSoe
栈顶指针自减1放入移位寄存器,PSW送到DR
085
7C080086
Soe,SPce,ARce
把移位寄存器栈顶指针地址放入A和SP中
086
00052087
把PSW写入栈中
087
00027088
Droe’,INTA
中断
088
C0080089
取到中断向量表放入AR
089
0006108A
ARoe’,DRoe’,RD
主存读出中断地址
08A
C4006000
DRoe,PCce,CLI
中断地址送到PC
RETI中断返回
05B
E00800A9
把栈顶指针地址放入AR中
0A9
02C610AA
栈顶指针自减1,读出栈中保存的PSW信息到DR
0AA
C00040AB
DRoe,PSWce’
把PSW信息从DR放回PSW
0AB
E00800AC
0AC
02C610AD
栈顶指针自减1,读出栈中保存的PC信息到DR
0AD
C4005000
DRoe,PCce,STI
把PC信息从DR放回PC
测试汇编指令
MOV#0050H,0000H
MOV#FFFEH,FF00H
EI
AD:
MOV#0003H,R1
NOP
DECR1
JNZFFCH(PC)
NOTFF02H
JMPAD
0050H:
MOVFF08H,R4
RETI
中断隐指令配图1
中断隐指令配图2
RETI指令配图1
RETI指令配图2
报告完毕
鸣谢:
肖铁军老师,赵蕙老师以及帮助过我的同学们
参考书籍:
《计算机组成原理》主编肖铁军清华大学出版社
《计算机组成原理实践教程》肖铁军赵蕙等编著清华大学出版社目录
附录:
1、****发改局《关于*******迁建工程项目建议书的批复》
2、****村镇建设管理所《*******迁建项目用地红线》
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机组成原理 计算机 组成 原理 报告 微程序 设计