cl是什么元素| 垂体是什么| tdi是什么意思| 独守空房是什么意思| 翻来覆去是什么意思| 他达拉非片是什么药| geforce是什么牌子| 疯狂动物城闪电是什么动物| 梦见猫什么意思| 北京居住证有什么用| 芸豆是什么豆| 北属于五行的什么| 暑假是什么时候| 剧情是什么意思| 姜不能和什么一起吃| 鼻窦炎吃什么药效果好| 5月7号是什么星座| 跳蚤最怕什么药| 520是什么节日| ggdb是什么牌子| 溺水是什么意思| 黄色是什么意思| 新生儿ad滴剂什么时候吃最好| 什么样的大山| 夹腿有什么坏处吗| 女性尿道炎吃什么药| 纯钛对人体有什么好处| 办护照需要什么条件| 什么叫应届毕业生| 蜈蚣进家有什么预兆| 三栖明星是什么意思| 娃娃鱼吃什么| 下面痒是什么原因| 女人下嘴唇厚代表什么| 7.12什么星座| 骨质增生是什么原因引起的| 阳明病是什么意思| 腿没有劲是什么原因| 什么食物去湿气| 再三的意思是什么| 牙龈肿痛吃什么药最见效| 中位数是什么| 榴莲跟什么不能一起吃| 幼小衔接都学什么知识| 暹什么意思| 爆单是什么意思| 检查甲亢挂什么科| 牛肉粉是什么调料| 小受是什么意思| 山楂什么季节成熟| 唉声叹气是什么意思| supreme是什么牌子| 5.25是什么星座| 死心是什么意思| 吃什么雌激素会增多| 睡觉总是做梦是什么原因| 蛲虫吃什么药| 大便拉不干净是什么原因| 吃西瓜有什么好处| 痣挂什么科| 乌鸡放什么炖补气补血| 附骨疽在现代叫什么病| 原则上是什么意思| 乙肝吃什么药| 1963属什么| 喉咙痛不能吃什么| 今年为什么闰六月| 什么是医美| 甲亢多吃什么食物比较好| 过期的酸奶有什么用途| 今天开什么码| 什么叫遗精| 1893年属什么生肖| 梦见请客吃饭是什么意思| 水球是什么| 黄瓜片贴脸上有什么效果| 荔枝什么品种好吃| 蓝得什么| 95年什么生肖| 没有什么| 3个土念什么| 小猫什么时候可以洗澡| 安阳车牌号是豫什么| 八格牙路是什么意思| 男生适合学什么专业| 吃万艾可有什么副作用| 喝咖啡有什么好处| 胎儿肾盂分离是什么意思| 什么叫做流年| 胆囊萎缩是什么原因| 限高是什么意思| 济公是什么罗汉| 怀孕前三个月要注意什么| 12378是什么电话| 皮肤长癣是什么原因| 王字旁行念什么| 考试前不能吃什么| 七月有什么节日| 生殖激素常规检查是查什么的| 银装素裹什么意思| 梦见蛇蛋是什么意思啊| 瑜伽是什么意思| 吃辣椒有什么好处| 什么是线粒体| 什么是扁平足| 猪脚煲汤放什么材料好| 太阳星座是什么意思| 不还信用卡有什么后果| 副县长是什么级别干部| 四件套包括什么| 毛豆子炒什么好吃| 什么是文员| 骨质疏松吃什么钙片好| 专升本要考什么| 鹦鹉吃什么蔬菜| 胸前长痘痘是什么原因| 13太保是什么意思| 2月9日什么星座| 二月初十是什么星座| 便秘吃什么能马上排便| 副高是什么意思| 酵母是什么东西| 脖子上为什么会长丝状疣| 眼缘是什么意思| 江苏有什么特产| 九寨沟属于什么市| 博文是什么意思| 妇科炎症小腹坠痛吃什么药| 喝益生菌有什么好处| 口臭是什么原因引起| 新生儿吐奶是什么原因| 日文是什么字| 脑瘫是什么症状| 小孩眨眼睛是什么原因| 奇花异草的异什么意思| 无伤大雅是什么意思| 怀孕嗜睡什么时候开始| 晨起口干口苦是什么原因| 杭州吃什么| cea是什么意思| 乳头出血是什么原因| 女性下体长什么样| 什么的糯米| sa是什么| 有心火是什么症状| 老司机什么意思| 为什么会感染hpv| 毛新宇什么级别| 4级手术是什么意思| esp是什么意思| 起飞是什么意思| 夏天适合种什么菜| 冰鱼是什么鱼| 泥鳅吃什么| 过氧化氢浓度阳性是什么意思| 西席是什么意思| 胃溃疡吃什么水果| 湿疹用什么药膏好| 1月8号是什么星座| 为什么说冬吃萝卜夏吃姜| 眉梢有痣代表什么| 2023年是属什么生肖| 蒙脱石是什么| om什么意思| 喝什么粥降血糖| 硬盘是什么意思| 阴道镜活检是什么意思| 淋巴挂什么科| 宫颈病变有什么症状| 发烧吃什么| 一个叉念什么| 滔滔不绝的绝什么意思| 黄疸高有什么危害| 脑血栓是什么原因引起的| 梦见花生是什么意思| 小孩经常口腔溃疡是什么原因| 身上长癣是什么原因| 皮质醇是什么意思| 什么是辛辣食物| 梦见手链断了是什么意思| 什么办法退烧快| 为什么健身| 抗核抗体是什么意思| 肾结晶有什么症状| 梦见房子是什么意思| 三长两短是什么意思| 素面朝天什么生肖| 什么山| 世界上最多笔画的字是什么| 凌霄什么意思| 难以启齿是什么意思| 肺五行属什么| 丘疹性荨麻疹用什么药| 怀疑甲亢需要做什么检查| 脸颊长痘痘什么原因| 关羽的马叫什么名字| 什锦菜是什么菜| 中年男人遗精是什么原因| 经期延长是什么原因引起的| 1954年出生属什么| 环比是什么| 六十六大寿有什么讲究| 快递什么时候停运| 吃什么对肠胃好| 张姓五行属什么| 文工团是什么意思| 养肝吃什么好| 凌晨1点是什么时辰| 1970年五行属什么| 天神是什么意思| 熠熠生辉是什么意思| 玫瑰茄和洛神花有什么区别吗| 什么算高危性行为| 山茱萸的功效与作用是什么| 蝴蝶什么意思| 甲状腺用什么药| 为什么会尿血| 粉丝是什么做的| 巨峰葡萄为什么叫巨峰| 感冒发烧吃什么好| 考验是什么意思| 什么水什么龙| 知见是什么意思| 腰间盘突出吃什么药| 员级职称是什么意思| 天天睡觉做梦是什么原因| 醋泡脚有什么好处和坏处| 为什么是| 冲突是什么意思| 五大三粗是什么意思| 一月14号是什么星座| 阴阳和合是什么意思| 百白破是预防什么的| 战略支援部队是干什么的| 手上为什么会有小水泡| 子宫附件是什么| 保育是什么意思| 脚面浮肿是什么原因| 什么样的人容易高反| 植物神经是什么| 房间朝向什么方向最好| npc什么意思| 总胆汁酸是什么意思| 为什么越睡越困越疲惫| 什么叫眩晕| sos是什么意思| 北极有什么动物| 落枕吃什么药好得快| 什么花适合室内养| 吃什么都苦是什么原因| 9月30日是什么纪念日| 感化是什么意思| 1点到3点是什么时辰| 这句话是什么意思| 殷是什么意思| 垂体瘤是什么病| 98年属虎的是什么命| 乳腺囊性增生是什么意思| 足度念什么| 八月十五是什么节日| 仙茅配什么壮阳效果好| 老鼠和什么属相最配对| 一月十二号是什么星座| 臻字的意思是什么| 百度

第2号一般性意见:第九条:无障碍(2014年)

百度 但许多航班依然继续使用这条航线,因为其航程短,所需燃料更少,因此成本更低。

The program counter (PC),[1] commonly called the instruction pointer (IP) in Intel x86 and Itanium microprocessors, and sometimes called the instruction address register (IAR),[2][1] the instruction counter,[3] or just part of the instruction sequencer,[4] is a processor register that indicates where a computer is in its program sequence.[5][nb 1]

Front panel of an IBM 701 computer introduced in 1952. Lights in the middle display the contents of various registers. The instruction counter is at the lower left.

Usually, the PC is incremented after fetching an instruction, and holds the memory address of ("points to") the next instruction that would be executed.[6][nb 2]

Processors usually fetch instructions sequentially from memory, but control transfer instructions change the sequence by placing a new value in the PC. These include branches (sometimes called jumps), subroutine calls, and returns. A transfer that is conditional on the truth of some assertion lets the computer follow a different sequence under different conditions.

A branch provides that the next instruction is fetched from elsewhere in memory. A subroutine call not only branches but saves the preceding contents of the PC somewhere. A return retrieves the saved contents of the PC and places it back in the PC, resuming sequential execution with the instruction following the subroutine call.

Hardware implementation

edit

In a simple central processing unit (CPU), the PC is a digital counter (which is the origin of the term "program counter") that may be one of several hardware registers. The instruction cycle[8] begins with a fetch, in which the CPU places the value of the PC on the address bus to send it to the memory. The memory responds by sending the contents of that memory location on the data bus. (This is the stored-program computer model, in which a single memory space contains both executable instructions and ordinary data.[9]) Following the fetch, the CPU proceeds to execution, taking some action based on the memory contents that it obtained. At some point in this cycle, the PC will be modified so that the next instruction executed is a different one (typically, incremented so that the next instruction is the one starting at the memory address immediately following the last memory location of the current instruction).

Like other processor registers, the PC may be a bank of binary latches, each one representing one bit of the value of the PC.[10] The number of bits (the width of the PC) relates to the processor architecture. For instance, a “32-bit” CPU may use 32 bits to be able to address 232 units of memory. On some processors, the width of the program counter instead depends on the addressable memory; for example, some AVR microcontrollers have a PC which wraps around after 12 bits.[11]

If the PC is a binary counter, it may increment when a pulse is applied to its COUNT UP input, or the CPU may compute some other value and load it into the PC by a pulse to its LOAD input.[12]

To identify the current instruction, the PC may be combined with other registers that identify a segment or page. This approach permits a PC with fewer bits by assuming that most memory units of interest are within the current vicinity.

Consequences in machine architecture

edit

Use of a PC that normally increments assumes that what a computer does is execute a usually linear sequence of instructions. Such a PC is central to the von Neumann architecture. Thus programmers write a sequential control flow even for algorithms that do not have to be sequential. The resulting “von Neumann bottleneck” led to research into parallel computing,[13] including non-von Neumann or dataflow models that did not use a PC; for example, rather than specifying sequential steps, the high-level programmer might specify desired function and the low-level programmer might specify this using combinatory logic.

This research also led to ways to making conventional, PC-based, CPUs run faster, including:

  • Pipelining, in which different hardware in the CPU executes different phases of multiple instructions simultaneously.
  • The very long instruction word (VLIW) architecture, where a single instruction can achieve multiple effects.
  • Techniques to predict out-of-order execution and prepare subsequent instructions for execution outside the regular sequence.

Consequences in high-level programming

edit

Modern high-level programming languages still follow the sequential-execution model and, indeed, a common way of identifying programming errors is with a “procedure execution” in which the programmer's finger identifies the point of execution as a PC would. The high-level language is essentially the machine language of a virtual machine,[14] too complex to be built as hardware but instead emulated or interpreted by software.

However, new programming models transcend sequential-execution programming:

  • When writing a multi-threaded program, the programmer may write each thread as a sequence of instructions without specifying the timing of any instruction relative to instructions in other threads.
  • In event-driven programming, the programmer may write sequences of instructions to respond to events without specifying an overall sequence for the program.
  • In dataflow programming, the programmer may write each section of a computing pipeline without specifying the timing relative to other sections.

See also

edit

Notes

edit
  1. ^ For modern processors, the concept of "where it is in its sequence" is too simplistic, as instruction-level parallelism and out-of-order execution may occur.
  2. ^ In a processor where the incrementation precedes the fetch, the PC points to the current instruction being executed. In some processors, the PC points some distance beyond the current instruction; for instance, in the ARM7, the value of PC visible to the programmer points beyond the current instruction and beyond the delay slot.[7]

References

edit
  1. ^ a b Hayes, John P. (1978). Computer Architecture and Organization. McGraw-Hill. p. 245. ISBN 0-07-027363-4.
  2. ^ Mead, Carver; Conway, Lynn (1980). Introduction to VLSI Systems. Reading, USA: Addison-Wesley. ISBN 0-201-04358-0.
  3. ^ Principles of Operation, Type 701 and Associated Equipment (PDF). IBM. 1953.
  4. ^ Harry Katzan (1971), Computer Organization and the System/370, Van Nostrand Reinhold Company, New York, USA, LCCCN 72-153191
  5. ^ Bates, Martin (2011). "Microcontroller Operation". PIC Microcontrollers. Elsevier. pp. 27–44. doi:10.1016/b978-0-08-096911-4.10002-3. ISBN 978-0-08-096911-4. Program Counter (PC) is a register that keeps track of the program sequence, by storing the address of the instruction currently being executed. It is automatically loaded with zero when the chip is powered up or reset. As each instruction is executed, PC is incremented (increased by one) to point to the next instruction.
  6. ^ Silberschatz, Abraham; Gagne, Greg; Galvin, Peter B. (April 2018). Operating System Concepts. United States: Wiley. pp. 27, G-29. ISBN 978-1-119-32091-3.
  7. ^ "ARM Developer Suite, Assembler Guide. Version 1.2". ARM Limited. 2001. Retrieved 2025-08-06.
  8. ^ John L. Hennessy and David A. Patterson (1990), Computer Architecture: a quantitative approach, Morgan Kaufmann Publishers, Palo Alto, USA, ISBN 1-55860-069-8
  9. ^ B. Randall (1982), The Origins of Digital Computers, Springer-Verlag, Berlin, D
  10. ^ C. Gordon Bell and Allen Newell (1971), Computer Structures: Readings and Examples, McGraw-Hill Book Company, New York, USA
  11. ^ Arnold, Alfred (2020) [1996, 1989]. "E. Predefined Symbols". Macro Assembler AS – User's Manual. V1.42. Translated by Arnold, Alfred; Hilse, Stefan; Kanthak, Stephan; Sellke, Oliver; De Tomasi, Vittorio. p. Table E.3: Predefined Symbols – Part 3. Archived from the original on 2025-08-06. Retrieved 2025-08-06. 3.2.12. WRAPMODE […] AS will assume that the processor's program counter does not have the full length of 16 bits given by the architecture, but instead a length that is exactly sufficient to address the internal ROM. For example, in case of the AT90S8515, this means 12 bits, corresponding to 4 Kwords or 8 Kbytes. This assumption allows relative branches from the ROM's beginning to the end and vice versa which would result in an out-of-branch error when using strict arithmetics. Here, they work because the carry bits resulting from the target address computation are discarded. […] In case of the abovementioned AT90S8515, this option is even necessary because it is the only way to perform a direct jump through the complete address space […]
  12. ^ Walker, B. S. (1967). Introduction to Computer Engineering. London, UK: University of London Press. ISBN 0-340-06831-0.
  13. ^ F. B. Chambers, D. A. Duce and G. P. Jones (1984), Distributed Computing, Academic Press, Orlando, USA, ISBN 0-12-167350-2
  14. ^ Douglas Hofstadter (1980), G?del, Escher, Bach: an eternal golden braid, Penguin Books, Harmondsworth, UK, ISBN 0-14-005579-7
庙是什么意思 凤凰男什么意思 派大星是什么动物 打粉是什么意思 红枣和枸杞一起泡水喝有什么作用
令公子车祸隐藏了什么 鸟大了什么林子都有 什么是鸡胸病症状图片 孕妇上火了吃什么降火最快 蒲公英和玫瑰花一起泡有什么功效
瀹是什么意思 身在其位必谋其职是什么意思 五蕴皆空是什么意思 孕妇的尿液有什么用途 身体游走性疼痛什么病
随波逐流什么意思 吃什么可以流产 红细胞分布宽度偏低是什么原因 大马士革是什么意思 刑事拘留意味着什么
检查肝挂什么科hcv7jop9ns6r.cn 海关锁是什么意思hcv9jop7ns1r.cn 血糖高一日三餐吃什么东西最适合hcv8jop6ns3r.cn xmm是什么意思hcv7jop7ns0r.cn 6.10号是什么星座hcv8jop6ns0r.cn
obsidian什么意思hcv8jop6ns0r.cn 心肌缺血吃什么食物好hcv9jop3ns9r.cn 乙基麦芽酚是什么hcv9jop4ns2r.cn 看嗓子去医院挂什么科hcv8jop3ns3r.cn 什么叫更年期hcv7jop6ns6r.cn
蚂蚁最怕什么hcv8jop3ns9r.cn 牙齿疼吃什么药hcv8jop4ns3r.cn 婴儿老打嗝是什么原因hcv8jop1ns8r.cn 十一月是什么星座的啊hcv9jop5ns8r.cn p53野生型是什么意思hcv8jop6ns4r.cn
拧巴是什么意思hcv7jop9ns1r.cn 小猫的胡须有什么作用hkuteam.com 为什么眼睛会肿而且痛hcv7jop4ns7r.cn 梦见老公出轨了是什么征兆hcv8jop1ns1r.cn 油性头发用什么洗发水imcecn.com
百度