程序计数器模拟器
使用 loop: 这样的标签、LOAD 或 ADD 等顺序指令、BR label 或 BR +8 等分支,以及 JMP、CALL、RET 和 HALT。
这款教学模拟器为每个非空指令行分配地址,并跟踪简化的程序计数器(PC)变化。它不是代码行数、语句或 token 计数器,也不会编译或执行任何编程语言。
如何跟踪指令清单
-
1
输入简短清单
每行使用一条定长指令,并可添加 loop: 这样的 ASCII 标签。
-
2
选择地址模型
设置起始地址、1、2、4 或 8 字节指令大小、16/24/32 位宽度与显示格式。
-
3
设置跟踪方式
统一将所有已识别分支视为跳转或不跳转,选择 1–80 步并查看每次 PC 变化。
支持的模型
| 清单项目 | 模拟行为 |
|---|---|
LOAD、ADD 等其他 opcode |
按所选定长指令大小前进 |
BR、BRA、BRANCH、BEQ、BNE、BGT、BGE、BLT、BLE、BZ、BNZ、JZ、JNZ |
使用全局“跳转/不跳转”选项 |
JMP、JUMP、GOTO |
跳到标签或数字地址 |
CALL、JSR、BL / RET、RETURN |
压入 / 弹出模拟返回地址 |
HALT、HLT、STOP |
停在当前 PC |
目标可以是 ASCII 标签、十进制地址或带 0x 的十六进制地址。+8 这类带符号目标相对于下一个顺序 PC;无符号数字则是绝对地址。地址会按所选位宽回绕。// 和 ; 开始注释。操作数只显示,不参与运算。
限制与隐私
- 输入最多保留 1,800 个字符,解析在 200 条指令后停止。
- 跟踪限制为 1–80 步;所有条件分支共用同一个全局选项。
- 不模拟寄存器、内存、标志位、流水线、延迟槽、指令编码或变长指令。
- 标准模式将清单发送到本站;分步模式还会把清单写入网址。请勿粘贴机密代码。
常见问题
不会。它为指令行分配地址并跟踪 PC,不统计源代码行、语句或 token。
不支持。它只识别一小组通用控制流 opcode。其他 opcode 只让 PC 前进,操作数不会执行。
偏移量加到下一个顺序 PC 上。当前 PC 为 0x1000、指令大小为 4 字节时,目标是 0x100C。
清单会发送到本站并由服务器渲染,分步模式还会将其放入网址。本站不调用外部代码分析 API,但仍请避免机密代码。
相关工具
Webpack 配置生成器
为纯 JavaScript、React 或 Vue 项目生成 webpack 5 的 webpack.config.js:支持 TypeScript、Babel、CSS 或 Sass、图片、HtmlWebpackPlugin、开发服务器,并给出 npm install 命令。
PHP 格式化工具
为简单的 PHP 代码片段添加换行和 2 或 4 个空格的缩进。请检查结果:本工具不是 PHP 解析器,也不会执行 PSR-12 规范。
OpenAPI 验证器
将 OpenAPI 或 Swagger 文档以 JSON 或 YAML 粘贴进来,检查其核心结构:版本字段、info 对象和 paths,并给出清晰的错误和警告。
ASCII 表参考
完整 ASCII 表,覆盖 0 到 127;列出每个代码的十进制、十六进制、八进制、二进制值和 HTML 数字字符引用写法,包括 NUL、LF、DEL。
CSS 加载动画生成器
用纯 CSS 创建圆形旋转图标:设置直径、边框粗细、强调色和旋转速度,实时预览后一键复制可直接使用的 CSS。无需 SVG 或 JavaScript。
Protocol Buffers 解码器
在浏览器中解码 hex、Base64、Base64URL、文本或文件中的 Protobuf 线格式字节,准确检查字段候选解释并导出私密报告。
此工具还提供其他语言版本
- เครื่องจำลองตัวนับโปรแกรม [TH]
- Simulator program counter [ID]
- Programmzähler-Simulator [DE]
- Trình mô phỏng bộ đếm chương trình [VI]
- محاكي عدّاد البرنامج [AR]
- 프로그램 카운터 시뮬레이터 [KO]
- Symulator licznika rozkazów [PL]
- Simulador de contador de programa [PT]
- Simulator för programräknare [SV]
- プログラムカウンターシミュレーター [JA]
- Simulador del contador de programa [ES]
- Simulateur de compteur de programme [FR]
- Programmatellersimulator [NL]
- Program Counter Simulator [EN]
- Simulatore del program counter [IT]
- Симулятор счётчика команд [RU]
- Program sayacı simülatörü [TR]