#23 构建超标量CPU之编写汇编器:指令解析
合集 · 从零构建超标量 CPU (34)
-
#1 构建超标量CPU之系列开篇与核心概念
8:14
-
#2 构建超标量CPU之单步时钟
11:40
-
#3 构建超标量CPU之可调时钟
5:26
-
#4 构建超标量CPU之时钟选择器
10:41
-
#5 构建超标量CPU之复位同步器
9:46
-
#6 构建超标量CPU之程序计数器
14:58
-
#7 构建超标量CPU之实现逐条执行指令
23:08
-
#8 构建超标量CPU之实现指令相对跳转
14:05
-
#9 构建超标量CPU之实现选择下一步要执行的指令
14:22
-
#10 构建超标量CPU之重置程序计数器
12:48
-
#11 构建超标量CPU之添加程序存储器
15:23
-
#12 构建超标量CPU之定义初始指令集
23:14
-
#13 构建超标量CPU之如何从8位内存中获取16位数据
27:15
-
#14 构建超标量CPU之升级至16位指令集
15:23
-
#15 构建超标量CPU之程序计数器PCB
1:01:38
-
#16 构建超标量CPU之寄存器堆工作原理
29:20
-
#17 构建超标量CPU之如何访问寄存器?
50:31
-
#18 构建超标量CPU之打造属于你自己的逻辑分析仪
56:33
-
#19 构建超标量CPU之使用Python进行电路测试
1:00:29
-
#20 构建超标量CPU之寄存器PCB
49:40
-
#21 构建超标量CPU之扩展寄存器堆
41:28
-
#22 构建超标量CPU之我的CPU现在能16位跳转了
18:30
-
#23 构建超标量CPU之编写汇编器:指令解析
48:12
-
#24 构建超标量CPU之编写汇编器:内存布局
19:05
-
#25 构建超标量CPU之编写汇编器:指令编码
19:30
-
#26 构建超标量CPU之编写汇编器:输出二进制文件
17:20
-
#27 构建超标量CPU之计算机如何做加法?
45:35
-
#28 构建超标量CPU之教我的CPU“学会”加法
46:12
-
#29 构建超标量CPU之计算机如何实现负数运算?
47:01
-
#30 构建超标量CPU之进位标志
51:28
-
#31 构建超标量CPU之实现算术逻辑单元的位移功能
32:25
-
#32 构建超标量CPU之添加位移指令
55:35
-
#33 构建超标量CPU之解码ALU微操作
42:29
-
#34 构建超标量CPU之实现布尔代数运算
35:13
Description
https://www.youtube.com/watch?v=AA1o0UPDqAE 视频总结 本视频详细记录了为自研的8位超标量乱序处理器开发一款定制汇编器的全过程。视频始于对原有繁琐、易出错的手动编程流程(文本指令->查表->转十六进制/二进制->烧录)的痛点分析,进而提出了自动化解决方案的目标。 视频核心内容脉络: 需求与设计: 定义了汇编器需要支持的汇编语言格式,包括指令(如LDI, MV, JMP)、伪指令(如 .org)、寄存器操作数、立即数(支持十进制、十六进制、二进制、八进制及_分隔符)以及单行/多行注释。 解析器开发: 使用Python和正则表达式,一步步构建了词法分析器,能够有效跳过空白字符和注释,并精准识别指令和操作数。视频重点演示了如何解析复杂结构,如连续的16位寄存器对(如R0R1)。 错误处理机制: 实现了一套强大的错误报告系统,能精确定位错误发生的文件、行号、列号,并高亮显示错误行和具体位置,极大提升了开发调试效率。 中间表示(IR): 将解析后的指令和操作数封装成结构化的对象(如Instruction、Operand类),为后续的代码生成阶段做好准备。 成果展示: 最终,汇编器成功解析了一个完整的测试程序(test.s),包含了立即数加载、寄存器移动、相对跳转、绝对跳转等多种指令,并将解析结果以清晰的结构化格式输出。 通过本视频,观众不仅能学习到汇编器的工作原理和开发技巧,还能深入理解指令集架构(ISA)如何映射到具体的软件工具链开发中。 视频标签 #自制CPU, #汇编器, #编译器, #计算机体系结构, #Python编程, #正则表达式, #指令集架构, #ISA, #8位处理器, #超标量, #乱序执行, #硬件编程, #软件开发, #从零开始, #技术教程, #硬核科技, #编程实战, #词法分析, #错误处理