为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言例程 正文

[McugScript]真正的强类型易制脚本引擎,结构清晰,接口强大齐全

三叶资源网 2021-12-02 15:57:40 易语言例程 968 ℃ 1 评论

脚本解释码是作者独创的命令行式解释码,结构清洗可视,解释器写起来也简单方便

脚本引擎的一切代码都是作者独立编写,没有抄袭任何案例,创新引擎结构


开坑时间:2021年11月3日 (耗时将近一个月)

此脚本由作者之前开发的 至臻脚本引擎 作为草稿参考 写出来的真正强大的脚本,虽然至臻脚本引擎的成果并不怎么样,但是俗话说的话 失败是成功之母 有了第一次的经验第二次绝对不会输在同一个地方


脚本的运行效率还算可以接受:空循环比对(✓比他快,×比他慢) 无双脚本引擎× 至臻脚本引擎✓ 冰山脚本引擎✓ 自制脚本引擎✓


脚本是真正强类型脚本,并不是先前论坛上那些全部为文本模拟的脚本,它存在这几个数据类型{整数型,小数型,双精度小数型,文本型,逻辑型,日期时间型,字节集型}

这些数据类型全部都是真实的易语言变量,拥有真正的变量栈


脚本支持指针操作 $XXX(提取数据地址,可以是常量也可以是变量) @XXX(提取函数地址)  提取出来的指针是真实有效的内存指针地址



脚本的流程语句采用超高精度的逻辑判断完成,不会出现错误作用域执行,完成耗时(4天)

流程控制语句:if、else、else if、while、for、break、continue、return、goto

脚本的流程标记在解释码中主要为:slev(启动作用域)、elev(结束作用域)、judge(判断逻辑后寻找slev或else以及elseif)、stud(多级逻辑判断,并不会增长作用域级别,相当于易语言的判断)、jmp\slp(goto跳转 jmp为用户自己编写的跳转指令,slp为系统生成的循环语句跳转指令)


调用了 凌哥E编程模块

在源码中含有大量注释,以助于后者学习参考

编译器总共分为两个步骤:逐行检测语义编译代码 , 利用模拟栈来进行嵌套函数的占位式编译

解释器总共分为三个步骤:分配参数开始逐行运行解释码 , 数据提纯,将运行时表达式提取为常量(其中运算等全部为作者自创) , 嵌套函数取缔,根据当前的执行进度寻找对应的mov来执行函数并将返回值安顿到应有的位置


为了方便用户使用脚本,作者耗费大量时间编写标准库,基本包揽了易语言系统核心支持库中的函数


脚本内核结构创新,所以源码总体结构比较清晰,只需简单研究一下即可读懂脚本引擎的实现原理(简单且强大)


脚本运行时的临时数据全部可控,都会被解释器转换为比较特殊的指针 控制类:变量类


运算引擎是作者独创的数组操控式运算(可参考)


脚本解释码(命令行式)基本结构: 动作标签 主要参数 次要参数 ...


脚本引擎主要用到的易语言技术知识:文本操作,数组操作,递归运用,传址操作

脚本基本的语法规范:C系代码样式,驼峰式函数书写,Google代码规范,强类型

@咖啡胤sky


文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

已有1位网友发表了看法:

  • 访客

    访客  评论于 [2021-12-05 12:07:55]  回复

    6666666这个真的可以搞字节集

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
七天学会nodejsCharles微博引流火山视窗软件创建获取控制台应用返回值E2EEAPlayer模块源码复制组件黑月教程手势验证码资料RibbonUIFFmpeg定义数据类型Hp-Socket1置入汇编自动审核进群SmartQQCreateMutexA
最新评论