单片机PC PC+1 PC+2 什么意思

PC和PC+1,PC+2是不同的吗,我看书上PC是操作码,然后两者是操作数

单片机的PC是程序地址寄存器,每执行一条指令,都会根据该指令所占字节数,自动调整PC内容,由于PC设计程序地址,都是自动处理的,所以不需要人为干预。

在单片机指令系统中,有有关程序存储区数据操作的指令,如:MOVC A, @A+PC; A+PC构成ROM地址,将该地址内的数据送累加器A内,PC+1就是在当前指令地址PC基础上+1,即指向下一字节的地址。

扩展资料:

控制器由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成,是发布命令的“决策机构”,即协调和指挥整个微机系统的操作。其主要功能有:

(1) 从内存中取出一条指令,并指出下一条指令在内存中的位置。

(2) 对指令进行译码和测试,并产生相应的操作控制信号,以便于执行规定的动作。

(3) 指挥并控制CPU、内存和输入输出设备之间数据流动的方向。

微处理器内通过内部总线把ALU、计数器、寄存器和控制部分互联,并通过外部总线与外部的存储器、输入输出接口电路联接。外部总线又称为系统总线,分为数据总线DB、地址总线AB和控制总线CB。通过输入输出接口电路,实现与各种外围设备连接。

参考资料来源:百度百科-单片机



温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-15
单片机的PC是程序地址寄存器,每执行一条指令,都会根据该指令所占字节数,自动调整PC内容,由于PC设计程序地址,都是自动处理的,所以不需要人为干预。
在单片机指令系统中,有有关程序存储区数据操作的指令,如:
MOVC A, @A+PC; A+PC构成ROM地址,将该地址内的数据送累加器A内

PC+1就是在当前指令地址PC基础上+1,即指向下一字节的地址。
PC+2就不用解释了。追问

还是不太理解立即数怎么和操作码混在一起?

追答

立即数和操作码混在一起不是为了混吃混喝,是指令系统拉他来的,因为这样执行时间最快。其实这号是好理解的,32位单片机有的立即数是混在操作码里边的。

就你贴的图说,操作码90H有且只有一个,这个操作码的地址是PC,那么执行到他就自动把PC+1送到DPH,PC+2送到DPL,然后跳步,下一个操作码地址是PC+3。
顺便说一句,单片机应该按部就班就这样执行程序,也就是PC的步调是固定的,但有时干扰信号会让PC失步,这就是程序跑飞。

追问

谢谢

现在最大的问题是看不懂寻址示意图

本回答被提问者和网友采纳
第2个回答  2015-04-20
执行程序的过程中,会有PC PC+1 PC+2。
PC 总是指向下一条指令的地址。
第3个回答  推荐于2017-09-17
单片机中PC是程序计数器,表示程序当前运行所在的地址。PC+1是下一个将要执行的程序地址,PC+2是再下一个将要执行的程序地址。
在单片机中有两个地址指针,分别是程序地址指针PC和数据地址指针DPTR。都是64K的地址空间,DPTR可以用MOVC和MOVX两个指令来方法,PC只能用MOVC访问。
相似回答