清风下载网

软件信息

  • 软件属性:简体中文 试用软件
  • 软件评分:8.00分
  • 软件大小:649 KB
  • 发布时间:2022-09-09 03:25:43
  • 运行平台:WinXP兼容软件
软件截图
CSM脚本语言编译器和虚拟机执行器 1.3.0004软件介绍

    CSM脚本语言是国人自主研发的,拥有自主知识产权(软件著作权证书号为2006SR16059)的,是世界上第一款也是迄今为止(2007年4月)唯一的一款嵌入型的,高性能的,工业强度级的,基于对象的,完全强类型的,基于寄存器虚拟机实现的静态编译型脚本语言.它是主流编译型宿主语言(C/C++/ C/Java)在脚本领域的自然延伸.也代表着这一领域的顶尖设计水平.CSM是C Sharp Minus的简称,其语法形式大部分取自于微软的c语言,但也有许多不同.而语义上基本与C/C++相同.CSM脚本语言有许多独特的特性使其成为最优秀的静态脚本语言之一.具体的介绍如下:
    CSM 脚本语言提供与主流编译型宿主语言(C/C++/C/Java)相同或相似的语法形式和思维习惯.
    CSM 脚本最终生成字节码,以二进制的方式嵌入到宿主环境中,这防止了脚本文本本身的直接暴露,保护了编写者的利益.而且编译器和脚本源程序无须随应用宿主程序一同分发.
    CSM 编译器提供精确到某行某列的,详尽的,完全中文化的编译出错信息显示.
    CSM 编译器内部大量使用了虚拟内存,内存映射文件和嵌入式汇编技术,使编译速度更加快速.
    支持预编译处理中的条件编译功能.(由def / undef / if / ifdef /endif等预处理指令提供的一组预处理功能).这使脚本程序像VC++那样可以提供debug和release版本.
    天生就是Unicode,所以支持中文的类名,变量名,常量名,函数名,属性(property)名.
    支持sbyte,byte,short,ushort,int,uint,long,ulong整型类型,以及float,double浮点类型,和bool,char等强类型数据.
    从形式语法上彻底取消了指针的使用(但是语义上还是保留的),但又不失指针操作的灵活性,CSM脚本语言在这方面作出了不小的努力.
    支持类和对象的概念,并同时支持全局常量,枚举成员,常量成员,静态成员,实例成员。以及静态构造方法,静态析构方法,实例构造方法,实例析构方法,普通静态成员方法,普通实例成员方法,静态和实例属性,以及==和!=操作符重载方法. 可在方法中定义out类型的参数.并支持方法重载(method overload)功能.
    支持类中成员的1,2,4,8,16字节对齐属性,这为与C/C++宿主语言进行通讯,提供了相同的内存布局结构,能够以更加直接而快速的方式操控数据.
    像Java或C那样,支持静态和实例成员的初始化表达式.
    支持各种算术,逻辑,布尔运算,复合运算及强制类型转换功能.
    支持各种语句,包括声明语句,表达式语句,循环语句,跳转(goto)语句,以及switch语句,特别是switch语句,采用了和编译型宿主语言一样的技术.内部实现通过使用平衡树建立跳转表的方式,大大提高比较速度,使得在1000个分支的最坏情况下比较十次,加快了运行速度.
    支持静态和实例方法的回调机制(这在c/c++中被称为函数指针,而C中被称作代理delegate),能提供一定程度上的多态特性,并且通过这种方式可实现Event机制.
    支持作用域和局部对象(或称栈对象)的概念,当局部对象退出其所在的作用域时,将自动调用其析构方法,且调用的次序正好与构造的次序相反,这是最典型的C++特征.
    提供快速高效的算子功能.
    提供局部堆和全局堆对象的分配功能.
    对堆对象实行手工的new/delete分配和释放功能,做到与宿主语言C/C++一致.
    有对系统调用的跟踪功能,一旦程序发生崩溃,能自动给出崩溃的语句点,以及此时的方法调用堆栈.这有点像我们在Windows系统中常见的崩溃对话框.
    CSM脚本语言编译成字节码后由CSMachine虚拟机执行,CSMachine虚拟机上执行的汇编语言被称作是CSMasm汇编语言.而CSMachine虚拟机也是当今独一无二的强大的虚拟机实现之一:
    CSMachine虚拟机是一种完全强类型的32位虚拟机,它支持约2500条虚拟机指令,每条虚拟机指令均以嵌入式汇编语言实现,以求达到最高的运行效率.
    由于CSMasm具有庞大的指令集,所以对脚本的逆向工程能起到很强的遏制作用.使得反编译CSM字节码的工作很困难,这在很大程度上保护了脚本编写者的经济利益.
    利用虚拟内存和内存映射技术对CSM执行映像进行分段,如数据段,代码段,堆栈段,局部堆,全局堆,对代码段实施只读保护,这起到了沙箱保护的功能.
    CSMachine的堆栈尺寸可根据实际情况自动而灵活地扩大和收缩,无须象其它的脚本语言那样时刻去留意是否引发堆栈溢出.
    是基于寄存器的实现方式,这种方式比嵌入型栈式虚拟机速度稍快.
    是开放式虚拟机设计,只须通过Wrap/Unwrap操作对指针进行坐标系调整,不像封闭式虚拟机那样必须使用Marshal/Unmarshal进行数据块复制.
    提供载入多个脚本以及一个脚本的多个副本的功能,为脚本程序的团队化开发和多线程应用提供了强而有力的技术保障.

无病毒无广告
展开全部
用户评论
评论
发 布

相关软件
最新推荐