个人对408计算机组成原理中PC(程序计数器)位数的理解

首先PC程序计数器的位数与主存的容量有关系也和要获取下一条要执行的指令也有关系。

假设PC要获取完主存中所有的指令那么PC要持续+“1”直到获取完最后一条指令,这里的“1”指的是PC指令的条数,PC+"1"等于下一条指令,而不代表指令长度。

根据408真题中2016年的选择题

某计算机主存空间为4GB,字长为32位,按字节编址,采用32位定长指令字格式,若指令按字边界对齐存放,则程序计数器(PC)和指令寄存器(IR)的位数至少为()。

那么以下用三种情况去理解

1.每一条指令字长刚好等于主存中的存储字长,且按字边界对齐存放

那么PC每次+1就代表刚好指到下一条指令的实际存放地址,同时也刚好对应下一条指令,指令有2^30次方条那么对应PC一共要加上2^30个1,所以需要30位来表示

 

2.指令分成份放在不同行存储单元,这时要获取每条指令就需要PC+2才能对应到相应的指令地址,有2^30次方条指令,那么要获取完所有指令那么PC一共要加上2^30个2,所以对应2^31,因此需要31位来表示

 

3.一条指令字长等于存储字长的四倍,那么一条指令需要四个单元去存储,所以PC要一次性+4才能获取到一条完整的指令,同理有2^30次方条指令,那么要4*2^30共需要32位才行。

 

综上其实可以知道,PC具体有多少位要看PC加几才能获取到下一条指令同时也要知道指令有多少条二者相乘即可得到PC的位数。

以上是本人最近初学计组对PC位数的理解,有很多不足之处,有错误的话希望大家能帮我指出。

  • 8
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
计算机组成原理实验书程序计数器实验是一项关于计算机基本组件的实验内容。程序计数器(Program Counter,PC)是一种存储器元件,用于保存即将被执行的指令的地址。在计算机的工作过程,指令的执行是按照一定的顺序进行的,指令的地址会逐步增加。程序计数器实验的目的就是实现程序计数器的基本功能,并通过实验验证其正确性。 在实验过程,我们可以通过设计电路来实现程序计数器的功能。该电路主要由计数器、控制逻辑和时钟信号组成计数器用于存储地址,并在每一个时钟周期内增加其值;控制逻辑用于根据信号控制计数器的工作方式;时钟信号用于提供计时脉冲,使计数器能够按照时序进行计数。 实验的具体操作步骤包括:设计并连接程序计数器电路的各个部分,如计数器、控制逻辑和时钟信号;编写一个简单的程序,包含一段指令序列,用于测试程序计数器电路的功能;通过时钟信号的不断驱动,观察程序计数器是否能够按照预期的顺序递增;在实验过程,我们可以使用示波器或其他工具来观察各个信号的波形、频率和占空比,以验证实验结果的正确性。 通过完成这个实验,我们可以更好地理解程序计数器计算机的作用和原理,同时也能够加深对计算机组成原理知识的理解。这个实验还能培养我们对于电路设计和信号处理的能力,并提高我们的实验操作技能。希望通过这个实验,我们能够更深入地了解和掌握计算机组成原理的相关知识。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值