VM 设计 > 幽灵变量
当你从零开始构建自己的编程语言时,测试套件就是你的镜子。在编写像计算第 10 个斐波那契数这样的经典基准测试之前,一切在独立的单元测试中似乎都能正常运行——然后解释器要么立刻崩溃,要么输出一个错得理直气壮的结果。
分类「代码 & 开发」下的所有文章。
当你从零开始构建自己的编程语言时,测试套件就是你的镜子。在编写像计算第 10 个斐波那契数这样的经典基准测试之前,一切在独立的单元测试中似乎都能正常运行——然后解释器要么立刻崩溃,要么输出一个错得理直气壮的结果。
词法分析器(Lexer) — 源文本 → token 流 解析器(Parser) — token 流 → AST 代码生成(Codegen) — AST → 汇编(或直接求值)
我还清晰记得,初二的那年暑假,我跟着《第一行代码》这本书一步步地认真地学习了Android的四大组件,最终写了一个天气预报应用和一个记录阅读的APP。之后我便开始了Android应用开发之旅。或者说一切编程的启蒙。
本项目是基于 STM32 + 树莓派 的智能车视觉感知与运动控制系统,采用上下位机分层架构,融合了 计算机视觉(OpenCV)、嵌入式、前后端可视化与AI目标检测 等技术栈。可以做到线路识别、闭环控制、陌生人物检测与上传统计。
在 VSCode 中通过 OpenOCD 实现对 STM32 的远程调试与烧录,利用树莓派 5 作为调试桥接设备,连接 DAPLink 调试器与目标板。文章详细说明了在树莓派上配置 OpenOCD 以监听所有网络接口,并在 PC 端使用 ARM GNU Toolchain 提供的 GDB 与 Cortex-Debug...
clangd 是基于 Clang 编译器的 C/C++/Objective-C 语言服务器。 它提供类似 IDE 的功能,例如代码补全、跳转导航、重构和诊断,并可在支持 LSP(语言服务器协议)的编辑器中使用,如 VSCode、Neovim、Sublime 等。
enableirq 和 disableirq 控制的是PRIMASK寄存器值。
在VIVO手机中的开发者选项,启用蓝牙 HCI 信息手机日志。