MY-BASIC 应用(二):安装与运行
MY-BASIC 解释器的安装与运行:Windows/macOS 预编译二进制直接使用,或通过 Visual Studio、Xcode、makefile 源码编译;掌握交互模式、文件执行与 -e 表达式计算三种运行方式。
MY-BASIC 应用(二):安装与运行
一、项目背景
上一篇介绍了 MY-BASIC 这个轻量级嵌入式 BASIC 解释器的设计目标与语言特性。本篇进入实战:如何安装 MY-BASIC,并掌握它的三种运行模式。无论你是想快速体验脚本语法,还是准备把它嵌入到自己的项目中,都需要先让解释器跑起来。
二、技术方案:获取方式
MY-BASIC 提供两种获取方式:
- 预编译二进制:仓库包含 Windows 和 macOS 的预编译可执行文件,下载即可直接使用("Happy" 直接体验);
- 源码编译:从源码构建,适合 Linux 或需要定制编译选项的场景。
三、系统架构:三种运行模式
独立解释器支持三种运行模式:
| 模式 | 启动方式 | 用途 |
|---|---|---|
| 交互模式 | 不带参数执行二进制 | 逐行输入 BASIC 语句,即时执行,适合语法练习 |
| 文件执行 | 传递 .bas 源文件路径 | 加载并运行完整的 BASIC 源码程序 |
| 计算器模式 | -e "表达式" | 立即计算并打印表达式结果,如 -e "2 * (3 + 4)" |
# 交互模式:直接进入 REPL
./my_basic
# 交互模式下输入 HELP 查看用法
HELP
# 文件执行
./my_basic hello.bas
# 计算器模式
./my_basic -e "2 * (3 + 4)" # 输出 14
四、实施过程:源码编译
4.1 各平台构建方式
Windows : 使用 Visual Studio 工作区 my_basic.sln 构建可执行文件
macOS : 使用 Xcode 工作区 my_basic_mac.xcodeproj 构建可执行文件
*nix : 使用 makefile 构建可执行文件
4.2 手动编译(任意平台)
1. 检索 core 和 shell 文件夹下的所有内容,以获得最小构建;
2. 设置用于编译和链接的工具链;
3. 编译 core/my_basic.c 和 shell/main.c(同时包含 core/my_basic.h),然后链接成可执行文件。
Linux 下的最小构建示例:
# 下载源码后,进入仓库根目录
gcc -O2 -o my_basic core/my_basic.c shell/main.c -Icore
./my_basic # 进入交互模式
五、应用价值
- 零成本试玩:Windows/macOS 直接下载二进制即可体验,无需搭建任何环境;
- 快速验证:
-e计算器模式可当作命令行计算器使用,也可快速验证语言语法; - 嵌入路径清晰:手动编译的最小构建方式与"嵌入现有工程"的集成方式一致,学会编译即学会了集成;
- 跨平台一致:同一套源码在 Windows/macOS/Linux 均可构建,适合多平台产品统一脚本方案。
六、SEO关键词
MY-BASIC、安装教程、BASIC解释器、源码编译、Visual Studio、makefile、交互模式、嵌入式脚本、my_basic、运行方式
推荐阅读
更多工业 AI、智能制造与技术实践文章
PLCOpen 运行环境测试与搭建(Beremiz 开源软 PLC)
在 Ubuntu 18.04 实时内核上搭建 PLCOpen(Beremiz)开源软 PLC 运行环境:依赖安装、MatIEC/CanFestival/modbus/BACnet/EtherCAT 源码编译,以及 IDE 与 Runtime 的启动调试全流程。
Linux系统篇(三)——指令篇(三):轻松拿捏入门级指令
基础指令收官篇:详解head、tail、date、find、grep、zip、tar、sz/rz、uname、su等12组高频命令,覆盖查看、查找、压缩、传输与身份切换全场景。
AGV小车的运动是怎么控制的呢?一文讲清导航与定位原理
AGV 小车如何在没有驾驶员的情况下精准完成搬运任务?本文从酒店送餐机器人场景切入,系统讲解 AGV 的四大主流导航方式(激光、视觉、GPS、惯性),并深入介绍「北斗 RTK + UWB + 视觉融合」的室内外一体化定位方案与作业调度控制,帮助读者理解 AGV 运动控制的核心原理。
七通道工业打印机测色与墨量分配:从 CMYK+LC+LM+W 到 ICC 色彩管理
针对 CMYK+LC+LM+W 七通道工业喷墨打印系统,本文系统讲解如何通过标准化测色与数据拟合建立打印机自身的颜色响应模型:从单通道响应测试、CMY/CMYK 组合测试、GCR 灰成分替代、Total Ink Limit 总墨量限制到白墨测色,并介绍结合 LittleCMS 与 ICC 色彩管理实现七通道墨量分配、LC/LM 浅墨分色与颜色闭环校正的完整技术路径。
RAG 实战教程(二):向量相似度、向量数据库与 Chroma 实战
本文讲解RAG索引与召回的本地方案:用Ollama运行BGE-M3生成向量,用Chroma保存文本、向量与元数据,基于HNSW近邻索引完成Top K检索。涵盖余弦相似度/欧氏距离/点积的区别与对比表、Chroma Collection常用操作、BGE-M3批量向量化、数据入库与查询的完整Python代码,以及换模型、漏存原文等常见坑点。
手把手做ROS2机器人系统开发(一):开发环境搭建
机器人操作系统(ROS2)是当前机器人应用开发的主流平台,凭借分布式节点架构、丰富的生态组件和良好的实时性支持,被广泛用于工业机器人、移动机器人和智能装备的研发。本系列教程将带领大家从零开始,完成一套完整的ROS2机器人系统开发:以驱动常用工业机器人(SCARA)实现动态抓取目标为最终目标,既支持实
