计算机组成原理-指令系统-指令格式及寻址方式

news/2024/11/23 2:36:32/

目录

一、指令的定义

1.1 扩展操作码指令格式

 二、指令寻址方式

2.1 顺序寻址 

2.2 跳跃寻址

三、 数据寻址

 3.1 直接寻址

 3.2 间接寻址

 3.3 寄存器寻址

​ 3.4 寄存器间接寻址

 3.5 隐含寻址

3.6 立即寻址

 3.7 偏移地址

3.7.1 基址寻址

3.7.2 变址寻址

3.7.3 相对寻址

 2.8 堆栈寻址


一、指令的定义

指示计算机执行某种操作的命令,是计算机运行的最小功能单位(X86架构,ARM架构两种指令)

指令包含:操作码(OP)+地址码(A)

一条指令可能包含0个、1个、2个、3个、4个地址吗...

根据地址码数目划分为零地址指令、一地址指令、二地址指令、三地址指令、四地址指令......

1.1 扩展操作码指令格式

 设计扩展码指令格式时,必须注意两点:
         ①:不允许短码是长码的前缀。即短操作码不能与长操作码前面部分相同  (类似哈夫曼编码)

        ②:各指令操作码一定不能重复

        通常情况,对使用频率高的指令,分配较短操作码(地址码就长),频率低分配长操作码,从而尽可能减少指令译码和分析时间

另一种扩展码设计方法

 二、指令寻址方式

pc计数器:下一条欲执行指令的地址         

2.1 顺序寻址 

pc+1

2.2 跳跃寻址

 执行了转移指令,直接执行转移地址指向的指令

三、 数据寻址

 3.1 直接寻址

指令字中的形式地址A就是操作数的真实地址EA。即EA=A

指令执行过程:取指令访存1次,执行指令访存一次,暂不考虑存结果,共访存2次

 3.2 间接寻址

指令的地址字段给出的形式地址不是真实的地址,而是操作数有效地址所在的地址,也就是操作数地址的地址,即EA=(A)

 3.3 寄存器寻址

指令字中给的是操作数所在的寄存器编号,即EA=R_i,其操作数在由R_i所在寄存器中

 3.4 寄存器间接寻址

寄存器R_i给是不是一个操作数,而是主存单元的地址,即时EA=(R_i)       <上面2种寻址套娃>

 3.5 隐含寻址

不是明显给出操作数地址,而是指令中隐含操作数的地址

加法另一个操作数在ACC中

3.6 立即寻址

形式地址A就是操作数本身,又称立即数,一般补码形式

 3.7 偏移地址

3.7.1 基址寻址

以程序的起始存放地址作为起点        EA=(BR)+A

3.7.2 变址寻址

程序员自己决定从哪开始为起点        EA=(IX)+A

3.7.3 相对寻址

以程序计数器pc所指地址为起点        EA=(PC)+A

 2.8 堆栈寻址

操作数存放在堆栈中,隐含使用堆栈指针(SP)作为操作数地址

 

 


http://www.ppmy.cn/news/91653.html

相关文章

大数据框架-Hadoop

大数据框架-Hadoop 1.什么是大数据 大数据是指由传统数据处理工具难以处理的规模极大、结构复杂或速度极快的数据集合。这些数据集合通常需要使用先进的计算和分析技术才能够处理和分析&#xff0c;因此大数据技术包括了大数据存储、大数据处理和大数据分析等方面的技术和工具…

Elasticsearch扫盲篇

1. 什么是搜索&#xff1f; 在日常的工作和学习中&#xff0c;当我们说想找查询任何的信息的时候&#xff0c;可能第一时间会想到上百度或者谷歌去搜索一下。比如说找一部自己喜欢的电影&#xff0c;或者说找一本喜欢的书&#xff0c;或者找一条感兴趣的新闻。但是百度和谷歌不…

【前端面试知识点】- 大厂面试(三)

目录 1.JS垃圾回收机制2.form表单的使用以及相应的属性值3.vue中的双向数据绑定原理&#xff08;重点深入学习&#xff09;4.vue单向数据流5.undefined、null、NaN有什么区别&#xff1f;7.如何获取安全的undefined 值&#xff1f;8.Object.is() 与比较操作符 “ ” 、 “” 的…

随机森林Proximity实现及应用

随机森林Proximity实现及应用 1 算法1.1 随机森林Proximity简介1.2 RF-GAP1.3 实现代码 2 应用2.1 离群点(outlier)检测2.1.1 原理和实现2.1.2 实验结果 附录 项目主页&#xff1a;randomforest C implementation of random forests classification, regression, proximity and…

总线系统 - 总线带宽 计算

文章目录 1 概述2 总线带宽2.1 衡量计算机系统的指标2.2 计算公式 3 扩展3.1 GB、MB、KB、B 换算公式 1 概述 #mermaid-svg-PlQh8E6rS0IQvpEb {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-PlQh8E6rS0IQvpEb .erro…

selenium UI自动化中文件上传的两种方式

前言 文件上传是自动化中很常见的一个功能&#xff0c;那么对于文件上传你又有多少了解呢&#xff1f;请往下看 1、被测产品中文件上传的功能非常普遍&#xff0c;一般情况下需要将准备好的文件放在预定的路径下&#xff0c;然后在自动化测试的脚本中&#xff0c;去预置的路径…

深入探索: 对象构造的隐藏功能与技巧

&#x1f9d1;‍&#x1f4bb;CSDN主页&#xff1a;夏志121的主页 &#x1f4cb;专栏地址&#xff1a;Java基础进阶核心技术专栏 目录 &#x1f383; 一、重载 &#x1f384; 二、默认字段初始化 &#x1f386; 三、无参数的构造器 ✨ 四、显式字段初始化 &#x1f38a; 五…

Oracle数据库从入门到精通系列之四:重做日志文件

Oracle数据库从入门到精通系列之四:重做日志文件 一、重做日志文件二、重做日志文件主要用处三、在线重做日志1.数据库高速缓存2.数据块写入器DBWn3.设置重做日志大小的参考因素四、归档重做日志一、重做日志文件 重做日志文件(redo log file):数据库的事物日志。通常情况下…