File tree Expand file tree Collapse file tree 4 files changed +34
-0
lines changed
Expand file tree Collapse file tree 4 files changed +34
-0
lines changed Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ title: 碎碎念
88
99#
1010
11+ - 2025-11-16: [ 凹语言RISC-V汇编器支持中文指令名] ( st0095.md )
1112- 2025-11-12: [ 凹语言中文版NOIP 2024真题详解第1题] ( st0094.md )
1213- 2025-11-07: [ 凹语言中文版CSP-J 2025真题详解第2题] ( st0093.md )
1314- 2025-11-02: [ 凹语言版CSP-J 2025真题详解] ( st0092.md )
Original file line number Diff line number Diff line change 1+ # 凹语言RISC-V汇编器支持中文指令名
2+
3+ - 时间:2025-11-16
4+ - 撰稿:凹语言开发组
5+ - 转载请注明原文链接:[ https://wa-lang.org/smalltalk/st0095.html ] ( https://wa-lang.org/smalltalk/st0095.html )
6+
7+ ---
8+
9+ RISC-V是当前流行的开源CPU架构,然而当前主流的RISC-V工具链依然基于GCC/LLVM等国外的架构。因此,中文编程语言和英文编程语言之争,从RISC-V指令集层面就开始处于不利地位。为了改变中文编程语言长期被歧视的现状,凹语言开发组希望从CPU指令集层面实现中文汇编器、在高级语言层面彻底实现中英文编程语言的技术平权。而凹语言RISC-V汇编器也是在此背景下诞生的,目前已经完成对RISC-V中文指令集的定义和支持。
10+
11+ ## 1. 中文RISC-V汇编器例子
12+
13+ 以下是RISC-V裸机输出中文字符串的一个例子:
14+
15+ ![ ] ( /st0095-01.png )
16+
17+ 需要说明的是,这并不是GNU As汇编语法,而是凹语言开发组从头设计实现的汇编语言。其中关键字有:` 常量 ` 、` 全局 ` 、` 函数 ` 、` 变量 ` 等,同时配套了对应的英文关键字的翻译以方便国际友人学习。特别是RISC-V的寄存器和指令也全部有完整定义的中文名字。
18+
19+ ## 2. 中文RISC-V指令集名字
20+
21+ 只有从寄存器和指令集彻底中文化,才能从根源上实现中英文编程语言的平权。以下是RV32I基础指令部分的中文名字:
22+
23+ ![ ] ( /st0095-02.png )
24+
25+
26+ 完整的中文指令列表:https://gitcode.com/wa-lang/wa/blob/master/internal/native/riscv/anames.go#L527
27+
28+ ## 3. 本地化和本土化并不矛盾
29+
30+ 如果从中文编程语言角度看,中文编程语言的lexer和英文的有很大差别。但是因为国内对此探索太少,没多少有价值的沉淀。其实在词法解析这一步就已经被英文思维带歪了,类似要从汇编语言层平权一样,编译器也需要从词法分析阶段就开始深入匹配中文的特点。
31+
32+ 本土化的编程语言发展之路虽然充满荆棘和曲折,但是同样也充满乐趣,我们会继续探索下去。
33+
You can’t perform that action at this time.
0 commit comments