计算机组成原理之指令微操作(简化总结)

一、符号标记含义

  • IR:指令寄存器,其功能是存放当前正在执行的指令
  • PC:程序计数器,其功能是存放当前欲执行的指令地址,并可自动计数形成下一条指令地址
  • ALU:算术逻辑运算单元,为运算器核心部件,其功能是进行算术和逻辑运算
  • ACC:累加器,是运算器中既能存放运算前的操作数,又能存放运算结果后的寄存器
  • MAR:存储器地址寄存器,在主存中用来欲访问的存储单元的地址
  • MDR:存储器数据缓冲寄存器,在主存中用来存放某从某单元读出,或要写入某存储单元的数据

二、例题为例

1.根据汇编指令写出其微操作

1.以单微指令步骤运行下列指令,分析每一步微操作的相同
与不同。有PC+1操作的指令字长与没有的有区别吗?
ADD A,#12H
MOV A,#20H
MOV R0,#60H
MOV @R0,A
SUB A,60H
MOV R1,#30H
SUB A,R1
MOV A,#00H
ADDC A,R1
END

  • 答:
    首先有PC+1操作的指令字长与没有的是有区别的,有PC+1的是双字指令,没有PC+1的是单字指令。
    第一条指令 ADD A,#12H(这是一条加法指令)
    操作码是ADD 表示加法,
    取指令阶段:1> M[PC]=IR
    执行指令:2>PC+1,M[PC]→W,(W用来表示工作寄存器,因为加法运算,所以要用到运算器,注意这里的M[PC]可以理解为代表操作数本身)
    3>A+W→D→A(即将结果通过直通门D后,存放在运算器中的A累加器寄存器中)
    第二条指令MOV A,#20H(这是一条数据传送指令)
    取指令阶段:1> M[PC]=IR
    执行指令:2>PC+1,M[PC]→A
    第三条指令MOV R0,#60H(这是一条数据传送指令)
    取指令阶段:1> M[PC]=IR
    执行指令:2>PC+1,M[PC]→R0
    第四条指令MOV @R0,A(这是一条数据传送指令,但不同的是这里采用的间接寻址,同时是一条单字指令)
    取指令阶段:1> M[PC]=IR
    执行指令:2>(R0)→MAR(这一步就是将R0寄存器的地址内容传递给MAR,‘即相当于间接寻址中的第一次寻址’)
    3>A→D→M[MAR] (这一步即是将A里的数据通过直通门D传给M[MAR] 最终的地址操作数)
    第五条指令SUB A,60H(这是一条减法操作的指令,采用的是直接寻址方式)
    取指令阶段:1> M[PC]=IR
    执行指令:2>PC+1,M[PC]→MAR
    3>M[MAR]→W(因为涉及减法指令运算,所以需要把60所在的地址的内容放到运算器中的工作寄存器W中)
    4>A-W→D→A
    第六条指令MOV R1,#30H(这是一条数据传送指令,采用的是立即数寻址方式)
    取指令阶段:1> M[PC]=IR
    执行指令:2>PC+1,M[PC+1]→R1
    第七条指令SUB A,R1(这是减法指令,同时也是单字指令)
    取指令阶段:1> M[PC]=IR
    执行指令:2>(R1)→W(因为涉及减法指令运算,所以需要把R1寄存器地址所在的内容放到运算器中的工作寄存器W中)
    3>A-W→D→A
    第八条指令MOV A,#00H(这是一条数据传送指令采用的是立即数寻址)
    取指令阶段:1> M[PC]=IR
    执行指令:2>PC+1,M[PC]→A
    第九条指令ADDC A,R1(这是一条将带进位的加法指令,同时也是一条单字指令)
    取指令阶段:1> M[PC]=IR
    执行指令:2>(R1)→W
    3>A+W+Rcy → D → A

2、由微操作指令写出其汇编指令格式

在这里插入图片描述

注意:(指令执行顺序从左至右!累加器A
初值00H,立即数和地址都是20H )根据上面的四条微操作流程图做出其汇编指令格式

  • 看第一条:有PC+1,是双字指令,且不涉及运算,只有两步,故为数据传送指令
    即MOV R1,#20H
  • 看第二条:无PC+1,故为单字指令,涉及减法运算,又第二步R1→W,所以R1为最右变操作数
    故SUB A,R1
  • 看第三条:有PC+1,是双字指令,且不涉及运算,只有三步,故为数据传送指令,又看第二步,M[PC]→MAR,这是采用直接寻址
    故MOV A,20H
  • 看第四条:无PC+1,故为单字指令,又看第二步,R1→W,说明R1寄存器充当最右边的操作数,而第三步,含Rcy参与加法,故为带进位的加法运算充当操作码
    即ADDC A,R1

三、写在后面

文章如有错误地方,请读者朋友们评论指正,其次总结码字不易,如对你有收获,可随机支持博主哈,谢谢。

在这里插入图片描述

  • 20
    点赞
  • 181
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-希冀-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值