ISA – instruction set architecture 指令集架构

date: April 10, 2023 8:33 PM
Content: Notes
Category: Computer, ComputerOrganization
tags: The Essentials of Computer Organization and Architecture
Link: https://herbidog.cc/isp/
Completion: 100
Blog: To be posted
Status: Done

指令格式

小端 vs. 大端

小端存储:低位放在低地址
大端存储:高位放在低地址

换字节顺序 而不是数字位

大端易于读取十六进制数(用于位图bitmap和网络) 小端易于快速实现高精度算数运算

小端在字节对齐的情况下存储方式更高效

Untitled

字节对齐

一个字节存储两位十六进制数

数据的存储位置需要考虑以字节为单位进行对齐 可能是多个字节一对齐 方便一次取多个字节的数据

可以确保数据对象在内存上连续

指令长度

Untitled

指令集所代表的计算模型

Untitled

MARIE是累加器型架构

Untitled

GPR

Most systems today are GPR systems

Untitled

逆波兰式

堆栈架构使用 (后缀表达式)RPN reverse polish notation

波兰式(前缀表达式)

算数优先级顺序 先乘除后加减 但仍然要从左到右 看好顺序一步步来

指令:push, pop. mult, add, sub,div, store

扩展操作码

注意关注指令字长是多少

Untitled

指令字长为8bit时:

Untitled
  1. 先计算各种指令的数目 判断
  2. 列编码 写出中间的转义操作码是哪些个

寻址方式

  • ⽴即寻址(Immediate Addressing)
  • 直接寻址(Direct Addressing)
  • 间接寻址(Indirect Addressing)
  • 变址寻址(Indexed Addressing)
  • 基址寻址(Based Addressing)
  • 堆栈寻址(Stack Addressing)
Untitled

指令流水线

ILP – Instruction Level Parallelism 指令集并行

指令流水线用于实现ILP

每一个步骤是一个流水线阶段

Untitled

k个阶段 n条指令 ⇒ 共需时钟周期k+n-1个

Untitled

不是所有的指令都要经过流水线的每一阶段 如操作数少的情况

流水线冲突:

  1. 资源冲突(结构冒险):同时读写内存
  2. 数据依赖:前一个执行结果没产生时就被取为下一条指令的操作数 Untitled

About the Author

XFishalways

Fisher不钓鱼 川大21级在读 网络空间安全专业 7年前的围棋业余5段 素描彩铅水粉国画书法童子功拥有者 Hala Madrid Letsgo Pat Self-Commentator Analyzer ing 七年前的业余5段 AI Skipper nparadigm申工智能yyds 飞禽岛少年Lee Sedol

View All Articles