8-bit custom CPU assembler & assembly source code, self-designed RISC architecture simulation project. 自制8位RISC CPU配套汇编器与汇编源码,CPU硬件仿真工程。(一个莫名其妙的汇编器)
使用方法:
python <main.py_address> <file_name.asm>
基于 Python 实现的自研 8 位 RISC CPU 专属汇编器,配套 Logisim-Evolution 硬件仿真电路使用,完整支持汇编语法、常量、标签、伪指令以及标准化彩色错误提示,适配自研 16 位定长指令集架构。
本项目是为自研 16 位定长指令集、8 位 RISC 架构 CPU 开发的专用汇编器,主要配合 Logisim-Evolution 数字电路仿真平台完成整套 CPU 软硬件调试工作。汇编器采用经典两遍扫描编译架构,第一遍扫描会完成伪指令预处理、全局标签地址收集,第二遍扫描执行常量替换、全量语法语义校验、指令翻译以及最终机器码生成,能够将标准汇编代码转换为 CPU 可识别的 16 位二进制机器码,输出文件可直接导入仿真电路运行,完整覆盖从汇编编码到硬件仿真的全流程使用场景。
- 多进制立即数兼容:原生支持十进制、
0x开头十六进制、0b开头二进制三种数值格式,满足不同场景下的数值编写需求; - 完善常量系统:支持全局常量定义、代码内自动替换,内置常量重复定义检测、使用顺序校验,编译完成后还会主动告警未被使用的常量,方便代码优化清理;
- 标签与智能跳转:支持行标签定义,分支指令可直接引用标签作为跳转目标,汇编器会自动计算指令偏移量,并根据跳转方向区分正向、反向跳转指令;
- 实用伪指令扩展:内置多款高频简化伪指令,使用时会自动展开为底层原生指令,大幅降低汇编代码编写成本;
- 类GCC彩色错误提示:精准定位错误所在行号、出错字符位置,同时附带错误原因与修复建议,语法错误、语义错误、数值错误等均可清晰展示;
- 多编码自适应:自动识别 UTF-8 与 GBK 两种主流文件编码,兼容 Windows、Linux、macOS 不同系统编辑器生成的汇编文件;
- 多格式输出能力:支持二进制文本、十六进制文本、原始二进制文件三种输出格式,适配不同仿真与二次开发需求;
- 跨平台运行:Python 源码可在 Windows、Linux、macOS 全平台运行,同时单独编译了 Windows 平台独立可执行文件,无需部署 Python 环境即可使用。
要求 Python 3.6 及以上版本,项目仅使用 Python 标准库,无需额外安装任何第三方依赖包,可直接在 Windows、Linux、macOS 系统中执行。
使用项目内提供的 asm.exe 可执行文件,脱离 Python 环境,双击或在命令行直接调用即可完成编译操作。