107.计组--四章

news/2025/10/26 9:59:43/文章来源:https://www.cnblogs.com/gaodiyuanjin/p/19164664

指令系统

终于有个简单的一掌让我整整了 学习周期很短结束
image

一.指令系统概述

指令系统:指令集体系结构(ISA)中最核心的部分 其完整定于了硬件和软件之间的接口

ISA规定内容:
1.指令格式 指令寻址方式 操作类型
2.操作数类型 寻址方式 大小端方式对齐
3.可访问的寄存器编号 个数和位数 存储空间大小和编址方式
4.执行过程的控制方式

指令的基本格式
image

一条指令就是机器语言的一个语句 一组二进制代码
指令字长指一条指令所包含的二进制代码位数 其和机器字长无固定关系
定长指令字结构:所有指令长度相等
变长指令字结构:指令长度有异
单字长指令:指令长度=机器字长
半字长指令:指令长度=半个机器字长
指令字长通常为字节的整数倍

然后我们来划分几个地址指令

零地址指令
image

一地址指令
image

二地址指令
image

理论上,指令地址的数量可以非常多,但在实际设计中,我们通常只讨论0地址、1地址、2地址、3地址指令,偶尔会提到4地址指令

指令操作类型
1.数据传送指令
mov 进出栈
2.算术和逻辑运算
加减乘除 与或取反
3.移位
算术逻辑移位
4.转移操作(程序控制类指令)
无条件转移 调用 返回等
5.输入输出操作

看题:

CPU执行指令过程中 指令地址由PC(程序计数器)给出

程序控制类指令功能是改变程序执行顺序

image

某指令系统有200条指令 对操作码采用固定长度二进制编码 最少用几位
image

image

image


二.寻址方式

就是找有效地址 确定本条指令地址及下一条指令地址

1.指令寻址
  • 顺寻寻址 PC+1(按字编址) 自动形成下一条指令地址
  • 跳跃寻址 转移指令实现 执行结果修改PC值
2.数据寻址

表示一个操作数的地址或计算出操作数地址
位数决定了寻址方式的种类

搞懂几个概念 然后重点就是寻址方式的规则算法
A 形式地址
EA 有效地址
(A) A的内容即数值

不同寻址方式 为的是缩短指令字长 扩大寻址空间 提高编程的灵活性

隐含地址
image

立即寻址
地址字段就是操作数本身(立即数) 最快能找到操作数

直接寻址
image

间接寻址
image

寄存器寻址
原理同直接寻址一样 把主存换成寄存器 速度快

寄存器间接寻址
image

相对寻址(偏移寻址)
image

基址寻址(偏移寻址)
image
主要用于解决程序逻辑空间与存储器物理空间的无关性

变址寻址(偏移寻址)
image

变址寻址 基址寻址 相对寻址如出一辙 共属于偏移寻址

堆栈寻址
后进先出原则管理的存储区 读写单元用堆栈指针(SP)给出
硬堆栈(寄存器堆栈) 成本高 软堆栈适合大容量堆栈

题目中将理解以上寻址方式的作用

简化地址结构基本方法尽量采用 隐含地址

缩短指令中某个地址段位数 采用寄存器寻址

寻址方式中 最快获得操作数的方式 立即寻址

相对寻址方式的相对地址实质上是一种 以下条指令在内存中首地址为基准位置的偏移量

下面两道题同种类型

image
image
注意主存按字编址还是按字节编址

image
image

求范围同类型题
image
image
image
image

求LSB(最低有效字节)
image
image
image

image

image


三.机器代码

机器代码就是0和1组成的 但可读性差
我们学过高级语言java c啥的 这节考点是汇编语言 一种低级语言
一条汇编语言对应一个机器代码

主要寄存器
image

汇编指令分为Intel格式和AT&T格式
区别:
image
当然还有很多区别 但考试内容注重X86汇编指令 所以看这个Intel的

<reg> 任意寄存器
<mem> 内存地址
<con> 常数
dword ptr[] 32bit
word ptr[] 16bit
byte ptr[] 8bit

常用的一些指令:

image

image

image

image

image

image

选择
#include <stdio.h>
int main(void) {int a = 7, b = 6, c;if (a > b) {c = a;} else {c = b;}
}
实现过程:
mov eax,7  ---a
mov ebx,6  ---b
cmp eax.ebx 比较a和b
jg Next  如果a>b 跳到Next执行
mov ecx,ebx 就是不满足a>b 把b赋给c
jmp End 跳到END
Next:
mov ecx,eax 把a赋给c
End:
循环
不再举列子 就说其特殊的
loop:循环体
goto 跳转到
调用

参考:image

过程调用:
eb10ff63e514fe84e6ad574ba339d86c

题目:

image

image
记得加上jle指令字节


四.CISC RISC

简言之就是:
CISC 复杂指令系统计算机
RISC 精简指令系统计算机
然后对比:
74ce80afd27a920acd61b0db0df89162

到此结束 然后计组最后一个强大敌人CPU 攻克之后 基本总线和IO一路平坦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/946620.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LazyLLM学习:使用提示词工程+RAG创建AI女友

LazyLLM学习:使用提示词工程+RAG创建AI女友 背景 本篇文章为了1024lazyLLM的200元京东e卡 昨天学习了LazyLLM,一款很棒的AI流开发工具,而且想看看他的Langchain有什么不一样的地方,但是捣鼓半天有点迷糊,最后使用…

2025 年 10 月铝合金切削液厂家最新推荐,高性能与可靠性兼具的优质品牌

铝合金因轻量化、高强度特性,广泛应用于航空航天、汽车、3C 电子等领域,但加工时易产生积屑瘤、表面划伤,且铝合金表面氧化膜易被切削液破坏,对切削液的润滑性、清洁性及防氧化能力要求极高。当前市场部分切削液因…

详细介绍:K8s StorageClass配置实战:从入门到精通

详细介绍:K8s StorageClass配置实战:从入门到精通pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas"…

2025 年 10 月硬质合金切削液厂家最新推荐,精准检测与稳定性能深度解析

硬质合金因高硬度、高耐磨性,广泛应用于刀具制造、模具加工、航空航天构件等领域,但加工时切削温度可达 800-1200℃,易导致刀具磨损加剧、工件表面烧伤,对切削液的极压抗磨性、高温稳定性及冷却性能要求严苛。当前…

2025 年 10 月钛合金切削液厂家最新推荐,聚焦高端定制需求与全案交付能力

钛合金因高强度、低密度及优异耐腐蚀性,广泛应用于航空航天、医疗等高端领域,但加工时易产生高温粘连、刀具磨损快等问题,对切削液的极压润滑性、抗高温氧化能力及生物相容性(医疗领域)要求极高。当前市场上多数切…

2025 年 10 月铜材切削液厂家最新推荐,精准检测与稳定性能深度解析

铜材因良好的导电性与导热性,广泛应用于电子、电器、卫浴等领域,但加工时易出现氧化变色、表面精度下降等问题,对切削液的抗铜腐蚀性能、润滑冷却性及环保性要求严苛。当前市场部分切削液因缓蚀剂配比不当,导致铜材…

实用指南:proxy_pass和location匹配路径的拼接逻辑

实用指南:proxy_pass和location匹配路径的拼接逻辑pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas"…

【System Beats!】第四章 处理器体系结构

ISA指令集架构(ISA)是连接计算机软件与硬件的一座桥梁,定义了程序如何与底层硬件进行交互。 ISA的设计覆盖从应用程序到物理芯片的整个软硬件协作过程。 即Application → Compiler → OS → ISA → CPU → Circuit…

申威 SW-64 架构安装 MySQL 8.0.18 (KY10系统 RPM包) 步骤指南

申威 SW-64 架构安装 MySQL 8.0.18 (KY10系统 RPM包) 步骤指南​ 这是一个在采用申威SW-64处理器的服务器上,安装特定版本 ​MySQL 8.0.18 数据库的简单教程。使用的安装包是专门为申威架构和麒麟KY10操作系统适配的R…

java learning

public class Demo {public static void main(String[] args){for(int i = 1988; i< 2019; i++) {if ((i%4==0 && i%100 != 0) || i%400 ==0) {System.out.println(i);}}} }public class Demo1 {public sta…

【11】C实战篇——C语言 【scanf、printf、fprintf、fscanf、sprintf、sscanf】的区别 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

读AI赋能10助手

读AI赋能10助手1. GPS 1.1. 地图1.1.1. 在21世纪初之前,​“纸质地图”这个词并不存在,它们当时只是被称为“地图”​1.1.2. 物理世界缩小至我们的掌心,我们的视野却因此变得更加开阔1.2. 1973年,美国国防部启动了…

P13518 [KOI 2025 #2] 镜子

解题思路 核心观察:每次使用镜子相当于进行一次对称变换,位置从 a 变为 2b - a。经过数学推导可以发现,最终的终点位置可以表示为: 终点 = 2(某些镜子的位置) - 2(另一些镜子的位置) + ... + (-1)^N 初始位置 关键…

Correlation inequality小记

定义\(n\)元函数\(f\)单调递增:如果对于所有 \(x,y\), 如果\(x_i\leq y_i\)对于\(i=1...n\)成立,那么\(f(x)\leq f(y)\)。 如果\(f,g\)单调递增,那么\(E(fg)\geq E(f)E(g)\)(\(f,g\)的定义域相同) 证明:考虑归纳…

实用指南:TimescaleDB 超表 物理表解释

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

使用Prodfiler优化eBPF编译器性能:从内存分配到向量化的全面调优

本文详细介绍了如何利用Prodfiler性能分析工具对eBPF优化编译器K2进行深度优化,通过替换内存分配器、优化数据结构、应用PGO和LTO等技术,最终实现1.4-1.9倍的性能提升。使用Prodfiler优化eBPF优化编译器 如何在不修改…

详细介绍:JMeter接口测试

详细介绍:JMeter接口测试pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &…

深入解析:GESP25年9月编程题解析

深入解析:GESP25年9月编程题解析pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…

Anthropic Agent Skills 技术解析与实践

Anthropic Agent Skills 技术解析与实践2025-10-26 09:16 姜 萌@cnblogs 阅读(0) 评论(0) 收藏 举报前言 Anthropic 在 2025 年 10 月推出了 Agent Skills 框架,这是一个让通用 AI 获得专业技能的机制。本文通过分…

d40: vue杂项问题 - 详解

d40: vue杂项问题 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &q…