VSM Syntax 0.1.3
VSM语法:配置、特性与示例详解VSM是一种强大的编程语法,旨在为开发者提供简洁而高效的编程体验。本文将详细介绍如何配置VSM语法,以及其主要特性和实用示例。配置指南:要在您的开发环境中使用VSM语法,请在setting.json文件中添加以下配置:"code-runner.executorMap":{"vsm":"cd$dir&&vsm$fileName"}此外,您还可以
分类: 下载/工具 · 工具软件 | 来源: 点击进入 | 版本: 0.1.3 |
日期: 2025-06-11 | 人气: | 大小: |
标签: __web_extension snippet __ext_vsm vsm |
功能介绍
VSM语法:配置、特性与示例详解
VSM是一种强大的编程语法,旨在为开发者提供简洁而高效的编程体验。本文将详细介绍如何配置VSM语法,以及其主要特性和实用示例。
配置指南:
要在您的开发环境中使用VSM语法,请在setting.json
文件中添加以下配置:
"code-runner.executorMap": {
"vsm": "cd $dir && vsm $fileName"
}
此外,您还可以自定义VSM语法的颜色高亮,具体配置如下:
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "keyword.operator.vsm",
"settings": {
"foreground": "#41af62"
}
},
{
"scope": "keyword.control.vsm",
"settings": {
"foreground": "#fc6b6b"
}
},
{
"scope": "keyword.other.vsm",
"settings": {
"foreground": "#fce770"
}
},
{
"scope": "support.function.vsm",
"settings": {
"foreground": "#fc70e2"
}
},
{
"scope": "support.variable.vsm",
"settings": {
"foreground": "#a5ff50"
}
},
{
"scope": "entity.name.function.vsm",
"settings": {
"fontStyle": "italic"
}
},
{
"scope": "entity.name.section.vsm",
"settings": {
"foreground": "#7d7d7d"
}
},
{
"scope": "storage.type.baal.vsm",
"settings": {
"foreground": "#af68cfb7",
"fontStyle": "bold underline"
}
},
{
"scope": "storage.type.vsm",
"settings": {
"foreground": "#d8d8d8"
}
},
{
"scope": "markup.bold.vsm",
"settings": {
"fontStyle": "bold"
}
}
]
}
主要特性:
VSM语法支持丰富的代码片段和基本模式,包括但不限于:
- 条件判断(IF、IFELSE)
- 循环控制(WHILE)
- 变量操作(SLV、INCV、DECV)
- 输入输出(GETI、PUTI、PUTC)
- 函数定义与调用(METHOD、CALLMETHOD)
- 基本运算(ADD、SUB、MUL、DIV、MOD)
以下是VSM支持的部分代码片段:
代码 | 支持 | 代码 | 支持 |
---|---|---|---|
LC | ◯ | LA | ◯ |
LV | ◯ | LI | ◯ |
SV | ◯ | SI | ◯ |
DUP | ◯ | ISP | ◯ |
GETC | ◯ | GETI | ◯ |
PUTC | ◯ | PUTI | ◯ |
ADD | ◯ | SUB | ◯ |
MUL | ◯ | DIV | ◯ |
MOD | ◯ | INV | ◯ |
EQ | ◯ | NE | ◯ |
GT | ◯ | LT | ◯ |
GE | ◯ | LE | ◯ |
B | ◯ | BZ | ◯ |
SB | ◯ | ||
CALL | ◯ | RET | ◯ |
EXIT | ◯ |
实用示例:
以下是一个简单的VSM代码示例,展示了基本的语法使用:
ISP 2
LA 0 0
LC 2
SI
LA 0 1
GETI
SI
LC 10
LC 2
ADD
LC 1
SUB
LV 0 0
ADD
LV 0 1
MOD
PUTI
EXIT
常用模式:
IF条件判断:
[条件式] BZ [相対アドレス] [true時の処理]
IFELSE条件判断:
[条件式] BZ [Bへの相対アドレス] [true時の処理] B [false時の処理終わりへの相対アドレス] [false時の処理]
WHILE循环:
[条件式] BZ [Bへの相対アドレス] [true時の処理] B [条件式への相対アドレス]
输出换行符:
LC 10 PUTC
输出全局变量:
LV 0 [グローバル変数の番号] PUTI
输出本地变量:
LV 1 [ローカル変数の番号] PUTI
变量自赋值:
LA [0|1] [変数の番号] LV [0|1] [変数の番号] SI
变量加一:
LA [0|1] [変数の番号] LV [0|1] [変数の番号] LC 1 ADD SI
变量减一:
LA [0|1] [変数の番号] LV [0|1] [変数の番号] LC 1 SUB SI
设置全局变量:
LA 0 [グローバル変数の番号] SI
设置本地变量:
LA 1 [ローカル変数の番号] SI
返回方法结果:
LA 1 0 SI RET
定义方法:
ISP (3 [引数の個数] [ローカル変数領域の大きさ]) RET
调用带参数的方法:
ISP 3 [引数をスタック] ISP -(3 [引数の個数]) CALL [実行したいメソッドの絶対アドレス]
main函数:
ISP [グローバル変数の個数] LC [グローバル変数の個数] SB 1 CALL [mainの絶対アドレス] EXIT
通过以上配置、特性和示例的详细介绍,希望能帮助您更好地掌握VSM语法,提升编程效率。
版本声明
本文转载于:https://marketplace.visualstudio.com/items?itemName=wwwshinh0707.vsm 如有侵犯,请联系study_golang@163.com删除
更多
相关下载
查看更多
课程推荐
-
- Golang云原生架构师课程
- Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
- 204次学习
-
- MySQL数据管理之备份恢复案例解析视频教程
- 《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
- 160次学习
-
- MySQL索引优化解决方案
- 本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
- 182次学习
-
- 极客学院Docker视频教程
- Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
- 243次学习
-
- Golang进阶实战编程
- 本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
- 127次学习
-
- JavaScript极速入门
- 本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......
- 431次学习
查看更多
相关文章
-
- Golangmap实践及实现原理解析
- 2022-12-28 505浏览
-
- GoLand调式动态执行代码
- 2023-01-13 502浏览
-
- 试了下Golang实现try catch的方法
- 2022-12-27 502浏览
-
- 用Nginx反向代理部署go写的网站。
- 2023-01-17 502浏览
-
- MySQL主从切换的超详细步骤
- 2023-01-01 501浏览
-
- Mysql-普通索引的 change buffer
- 2023-01-25 501浏览