当前位置: 首页 > news >正文

程序寄存器与指令寄存器

1、程序存储器(program storage)
在计算机的主存储器中专门用来存放程序、子程序的一个区域。


2、指令寄存器(IR ):用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器(DR)中,然后再传送至IR。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器就是做这项工作的。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。

 

指令内容


3、程序计数器(PC):为了保证程序(在操作系统中理解为进程)能够连续地执行下去,CPU必须具有某些手段来确定下一条指令的地址。而程序计数器正是起到这种作用,所以通常又称为指令计数器。在程序开始执行前,必须将它的起始地址,即程序的一条指令所在的内存单元地址送入PC,因此程序计数器(PC)的内容即是从内存提取的第一条指令的地址。当执行指令时,CPU将自动修改PC的内容,即每执行一条指令PC增加一个量,这个量等于指令所含的字节数,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC加1。
当程序转移时,转移指令执行的最终结果就是要改变PC的值,此PC值就是转去的地址,以此实现转移。有些机器中也称PC为指令指针IP(Instruction Pointer)

 

指令地址

相关文章:

  • 测试管理之工作流程及技能!!!
  • 一致性哈希算法
  • web api 初体验 解决js调用跨域问题
  • 用 zotero 管理文献和个人知识库
  • 新功能:在负载均衡SLB控制台上查看DDoS安全防护阈值
  • JavaScript 基础知识 - 入门篇(一)
  • xz文件如何解压
  • 超越NLP:构建聊天机器人面临的8个挑战
  • 运维学python之爬虫基础篇(二)urllib模块使用
  • 作为java初学者,适合看《java编程思想》这本书吗?
  • Is your JDeveloper Slow? - It shouldn't be!(转)
  • javascript面向对象系列第四篇——OOP中的常见概念
  • Java密码体系结构简介:Java Cryptography Architecture (JCA) Reference Guide
  • android下使用https协议发请求
  • 【转】Android开发之线程池使用总结
  • 自己简单写的 事件订阅机制
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • jdbc就是这么简单
  • Magento 1.x 中文订单打印乱码
  • MySQL几个简单SQL的优化
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • python大佬养成计划----difflib模块
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • underscore源码剖析之整体架构
  • XForms - 更强大的Form
  • 百度小程序遇到的问题
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 聊聊flink的TableFactory
  • 一个项目push到多个远程Git仓库
  • - 转 Ext2.0 form使用实例
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • kubernetes资源对象--ingress
  • 容器镜像
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • ​力扣解法汇总946-验证栈序列
  • #includecmath
  • ${ }的特别功能
  • (12)Hive调优——count distinct去重优化
  • (14)Hive调优——合并小文件
  • (16)Reactor的测试——响应式Spring的道法术器
  • (2015)JS ES6 必知的十个 特性
  • (33)STM32——485实验笔记
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (分享)自己整理的一些简单awk实用语句
  • (九)信息融合方式简介
  • (三)Honghu Cloud云架构一定时调度平台
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转)项目管理杂谈-我所期望的新人
  • .bat批处理(一):@echo off
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • .Net的C#语言取月份数值对应的MonthName值
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
  • []新浪博客如何插入代码(其他博客应该也可以)
  • [1204 寻找子串位置] 解题报告
  • [2018-01-08] Python强化周的第一天