程序执行前:
指令和数据都事先存放在存储器中,每条指令和数据都有地址,指令按序存放,指令有op,ADDR字段组成,程序起始位置置PC
开始执行程序:
第一步: 根据PC取指令,首先去cache(高速缓存中)找,再去内存找。
第二步: 指令译码,对操作码译码,比如0001表示加法操作,0010表示减法操作。并且要对寻址方式译码,也就是你这条指令的内容在操作码里面还是内存单元里面。
第三步: 取操作数,根据寻址方式去内存单元或者寄存器中去取操作数
第四步: 指令执行,做加法减法或者传送等等运算
第五步: 回写结果,做到这,这条指令就执行完了
第六步: 取下一条指令,PC值+"1"继续执行下一条指令,注意,这个pc+1,这个1是下一条指令长度
网友评论