Initial commit: Oraset3 programming language with OS-level features

This commit is contained in:
JGZSunShineMod1.0.3
2026-05-22 12:19:05 +08:00
commit 1205365f32
27 changed files with 4191 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
// 简单测试指针操作
x := 100;
ptr := &x;
*ptr = 200;
println(x);
+22
View File
@@ -0,0 +1,22 @@
// Generated by Oraset3 Compiler
#include <iostream>
#include <string>
#include <vector>
#include <map>
using namespace std;
int main();
void println(int value);
int main() {
int x = 42 ;
int y = 18 ;
int sum = (x + y) ;
println(sum) ;
}
void println(int value) {
((std::cout << value) << std::endl) ;
}
+8
View File
@@ -0,0 +1,8 @@
// 测试位操作符
a := 10;
b := 12;
println(a & b);
println(a | b);
println(a ^ b);
println(a << 1);
println(a >> 1);
+3
View File
@@ -0,0 +1,3 @@
num := 3.14;
intNum := (int)num;
println(intNum);
+11
View File
@@ -0,0 +1,11 @@
// 测试枚举
enum Color {
RED,
GREEN,
BLUE = 10,
YELLOW
};
c := RED;
println(c);
println(BLUE);
+10
View File
@@ -0,0 +1,10 @@
enum Color {
RED,
GREEN,
BLUE = 10,
YELLOW
};
c := RED;
println(c);
println(BLUE);
+81
View File
@@ -0,0 +1,81 @@
// Oraset3 操作系统级编程特性测试
println("=== Oraset3 操作系统级编程特性 ===");
// 1. 位操作符测试
println("");
println("1. 位操作符测试:");
a := 10; // 0b1010
b := 12; // 0b1100
println("a = 10 (0b1010)");
println("b = 12 (0b1100)");
println("a & b =");
println(a & b); // 位与: 0b1000 = 8
println("a | b =");
println(a | b); // 位或: 0b1110 = 14
println("a ^ b =");
println(a ^ b); // 位异或: 0b0110 = 6
println("a << 1 =");
println(a << 1); // 左移: 20
println("a >> 1 =");
println(a >> 1); // 右移: 5
// 2. 枚举测试
println("");
println("2. 枚举测试:");
enum Color {
RED,
GREEN,
BLUE = 10,
YELLOW
};
c := RED;
println("Color.RED =");
println(c);
println("Color.BLUE =");
println(BLUE);
// 3. 联合体测试
println("");
println("3. 联合体测试:");
union Data {
i: int;
f: float;
b: bool;
};
var data Data;
data.i = 42;
println("data.i =");
println(data.i);
// 4. 指针操作测试
println("");
println("4. 指针操作测试:");
x := 100;
ptr := &x; // 取地址
println("x =");
println(x);
println("*ptr =");
println(*ptr); // 解引用
*ptr = 200; // 通过指针修改值
println("修改后 x =");
println(x);
// 5. 类型转换测试
println("");
println("5. 类型转换测试:");
num := 3.14;
intNum := (int)num;
println("(int)3.14 =");
println(intNum);
println("");
println("=== 操作系统级特性测试完成 ===");
+1
View File
@@ -0,0 +1 @@
enum Test { A };
+8
View File
@@ -0,0 +1,8 @@
union Data {
i: int;
f: float;
};
var data Data;
data.i = 42;
println(data.i);