递归下降分析法一、实验目的:根据某一文法编制调试递归下降分析程序,以便对任意输入的符号串进行分析。
本次实验的目的主要是加深对递归下降分析法的理解。
二、实验说明1、递归下降分析法的功能词法分析器的功能是利用函数之间的递归调用模拟语法树自上而下的构造过程。
2、递归下降分析法的前提改造文法:消除二义性、消除左递归、提取左因子,判断是否为LL(1)文法,3、递归下降分析法实验设计思想及算法为G的每个非终结符号U构造一个递归过程,不妨命名为U。
U的产生式的右边指出这个过程的代码结构:(1)若是终结符号,则和向前看符号对照,若匹配则向前进一个符号;
否则出错。
(2)若是非终结符号,则调用与此非终结符对应的过程。
当A的右部有多个产生式时,可用选择结构实现。
三、实验要求(一)准备:1.阅读课本有关章节,2.考虑好设计方案;
3.设计出模块结构、测试数据,初步编制好程序。
(二)上课上机:将源代码拷贝到机上调试,发现错误,再修改完善。
第二次上机调试通过。
(三)程序要求:程序输入/输出示例:对下列文法,用递归下降分析法对任意输入的符号串进行分析:(1)E->eBaA(2)A->a|bAcB(3)B->dEd|aC(4)C->e|dc输出的格式如下:(1)递归下降分析程序,编制人:姓名,学号,班级(2)输入一以#结束的符号串:在此位置输入符号串例如:eadeaa#(3)输出结果:eadeaa#为合法符号串注意:1.如果遇到错误的表达式,应输出错误提示信息(该信息越详细越好);
2.对学有余力的同学,可以详细的输出推导的过程,即详细列出每一步使用的产生式。
(四)程序思路0.定义部分:定义常量、变量、数据结构。
1.初始化:从文件将输入符号串输入到字符缓冲区中。
2.利用递归下降分析法分析,对每个非终结符编写函数,在主函数中调用文法开始符号的函数。
2025/2/10 19:45:51 39KB 编译原理 语法 递归下降
1
(1)输入任意文法,消除左递归和公共左因子;  (2)打印文法的First和Follow集;  (3)判断是否是LL(1)文法,如果是则打印其分析表;  (4)输入一个句子,如果该句子合法则输出与句子对应的语法树;
  能够输出分析过程中每一步符号栈的变化情况。
  如果该句子非法则进行相应的报错处理。
2025/2/9 18:42:25 3.33MB 语法分析 C语言 报告
1
按照《GA∕T74-2017安全防范系统通用图形符号》标准做的CAD图库,做好不同系统的图层分层,块命名与设备名称统一。
此外补充了部分国家建筑标准设计图集以及弱电系统常用的设备图标。
适合弱电设计师画图出图。
2025/2/8 8:45:21 11.19MB 图标设计
1
第1章绪论1.1什么是SystemC?1.2为何采用SystemC?1.3设计方法1.4设计能力1.5SystemCRTL1.6本书的组织结构1.7练习第2章SystemC入门2.1基础知识2.2再看一个2*4译码电路示例2.3描述层次关系2.4验证功能2.5练习第3章数据类型3.1值保持器3.2类型概述3.3位类型3.4任意位宽的位类型3.5逻辑类型3.6任意位宽的逻辑类型3.7有符号整型3.8无符号整型3.9任意精度的有符号整型3.10任意精度的无符号整型3.11解析式类型3.12用户定义的数据类型3.13推荐采用的数据类型3.14练习第4章组合逻辑建模4.1SC-MODULE4.1.1文件结构4.2示例4.3读写端口和信号4.4逻辑算符4.5算术算符4.5.1无符号算术4.5.2有符号算术4.6关系算符4.7向量与位区间4.7.1常量下标4.7.2不是常量的下标4.8if语句4.9switch语句4.10循环语句4.11方法4.12结构体类型4.13多个进程的△延迟4.14小结4.15练习第5章同步逻辑建模5.1触发器建模5.2多个进程5.3带异步预置位和清零的触发器5.4带同步预置位和清零的触发器5.5多个时钟与多相位时钟5.6锁存器建模5.6.1if语句5.6.2switch语句5.6.3避免产生锁存器5.7小结5.8练习第6章其他逻辑6.1三态驱动器6.2多个驱动器6.3无关值处理6.4层次结构6.5模块的参数化6.6变量和信号的赋值6.7练习第7章建模示例7.1可参数化的三态输出寄存器7.2存储器模型7.3有限状态机建模7.3.1Moore有限状态机7.3.2Mealy有限状态机7.4通用移位寄存器7.5计数器7.5.1模N计数器7.5.2约翰逊计数器7.5.3格雷码可逆计数器7.6约翰逊译码器7.7阶乘模型7.8练习第8章测试平台8.1编写测试平台8.2仿真控制8.2.1sc_clock8.2.2sc_trace8.2.3sc_start8.2.4sc_stop8.2.5sc_time_stamp8.2.6sc_simulation_time8.2.7sc_cycle和sc_initialize8.2.8sc_time8.3波形8.3.1任意波形8.3.2复杂的重复波形8.3.3派生时钟的生成8.3.4从文件中读取激励8.3.5反应式激励8.4监听行为8.4.1断言正确的行为8.4.2将结果转储至文本文件8.5其他示例8.5.1触发器8.5.2同步输出的多路选择器8.5.3全加器8.5.4周期级仿真8.6sc_main函数内的语句次序8.7记录聚合类型8.8练习第9章系统级建模9.1SC_THREAD型进程9.2动态敏感9.3构造函数的参数9.4其他示例9.4.1最大公因子9.4.2滤波器9.5端口、接口和信道9.6高级论题9.6.1共享数据成员9.6.2定点类型9.6.3模块9.6.4其他方法9.7仿真算法9.8练习附录A运行时环境A.1软件安装A.2编译A.3仿真A.4调试附录BSystemCRTL:可综合的子集B.1SystemC语言要素B.2C++语言要素
2025/2/7 11:47:25 6.27MB system c
1
AutoCAD电气符号模板电气符号均为块
2025/2/5 7:48:42 595KB AutoCAD 电气符号模板
1
这本书研究控制算法的人一定知道,不必多言。
此电子书是完整的电子版(全英文版),取之于互联网,因此也把这份难得的好资料分享给大家。
啰嗦一句,这本书的知识结构基本上是自我包容的,学过线性空间(或者矩阵论)的人可以直接阅读。
如果有一点泛函基础更好。
以下是目录(英文目录太长,以下是翻译后的摘录):符号与注释缩写表第一章绪论第二章线性代数第三章线性动态系统第四章性能指标第五章反馈系统的稳定性和性能第六童性能极限第七章模型降阶的平衡截断法第八章Hankel范数逼近第九章模型不确定性和鲁棒性第十章线性分式变换第十一章结构奇异值第十二章镇定控制器的参数化第十三章代数Riccati方程第十四章H2最优控制第十五章线性二次型优化第十六章H∞控制:简单情况第十七章H∞控制:一般情形第十八章H∞回路成形第十九章控制器降阶第二十章固定结构控制器第二十一章离散时间控制参考文献索引
2025/2/4 9:33:26 4.22MB Robust Control Optimal Control
1
交换核心Exchange-core是基于,(例如GoldmanSachsGSCollections),,,和开源市场交易核心。
Exchange核心包括:订单匹配引擎风险控制和会计模块磁盘日志和快照模块交易,管理和报告API专为高负载条件下的高可伸缩性和24/7全天候运行而设计,并提供低延迟响应:3M用户拥有1000万个帐户总共有4M待处理订单的100K订单簿(符号)每秒1M+次操作的最短线对线目标延迟小于1ms大型市场订单,每次匹配150ns单订单簿配置能够在具有10年历史的旧硬件(Intel:registered:Xeon:registered:X5690)上每秒处理5M次操作,并具有适度的延迟降低:率50.0%90.0%95.0%99.0%99.9%99.99%最坏的125K0.6微秒0.9微秒1.0微秒1.4微秒4微秒24µs41微秒25万0.6微秒0.9微秒1.0微秒1.4微秒9微秒27µs41µs50万0.6微秒0.9微秒1.0微秒1
2025/2/4 0:11:29 323KB java bitcoin trading-api cryptocurrency
1
实现QLineEdit中文字母大小写数字部分符号输入自带例子调用软键盘
1
%MATLAB数学建模工具箱%%本工具箱主要包含三部分内容%1.MATLAB常用数学建模工具的中文帮助%2.贡献MATLAB数学建模工具(打*号)%3.中国大学生数学建模竞赛历年试题MATLAB程序%数据拟合%interp1-一元函数插值%spline-样条插值%polyfit-多项式插值或拟合%curvefit-曲线拟合%caspe-各种边界条件的样条插值%casps-样条拟合%interp2-二元函数插值%griddata-不规则数据的二元函数插值%*interp-不单调节点插值%*lagrange-拉格朗日插值法%%方程求根%inv-逆矩阵%roots-多项式的根%fzero-一元函数零点%fsolve-非线性方程组%solve-符号方程解%*newton-牛顿迭代法解非线性方程%%微积分和微分方程%diff-差分%diff-符号导函数%trapz-梯形积分法%quad8-高精度数值积分%int-符号积分%dblquad-矩形域二重积分%ode45-常微分方程%dsolve-符号微分方程%*polyint-多项式积分法%*quadg-高斯积分法%*quad2dg-矩形域高斯二重积分%*dblquad2-非矩形域二重积分%*rk4-常微分方程RungeKutta法%%随机模拟和统计分析%max,min-最大,最小值%sum-求和%mean-均值%std-标准差%sort-排序(升序)%sortrows-按某一列排序(升序)%rand-[0,1]区间均匀分布随机数%randn-标准正态分布随机数%randperm-1...n随机排列%regress-线性回归%classify-统计聚类%*trim-坏数据祛除%*specrnd-给定分布律随机数生成%*randrow-整行随机排列%*randmix-随机置换%*chi2test-分布拟合度卡方检验%%数学规划%lp-线性规划%linprog-线性规划(在MATLAB5.3使用)%fmin-一元函数极值%fminu-多元函数极值拟牛顿法%fmins-多元函数极值单纯形搜索法%constr-非线性规划%fmincon-非线性规划(在MATLAB5.3使用)%%离散优化%*enum-枚举法%*monte-蒙特卡洛法%*lpint-线性整数规划%*L01p_e-0-1整数规划枚举法%*L01p_ie-0-1整数规划隐枚举法%*bnb18-非线性整数规划(在MATLAB5.3使用)%*bnbgui-非线性整数规划图形工具(在MATLAB5.3使用)%*mintreek-最小生成树kruskal算法%*minroute-最短路dijkstra算法%*krusk-最小生成树kruskal算法mex程序%*dijkstra-最短路dijkstra算法mex程序%*dynprog-动态规划%%%图形%plot-平面曲线(一元函数)%plot3-空间曲线%mesh-空间曲面(二元函数)%*meshf-非矩形网格图%*draw-用鼠标划光滑曲线%%中国大学生数学建模竞赛题解%jm96a-捕鱼策略%jm96b-节水洗衣机%jm96bfun-节水洗衣机优化函数%jm97a-零件参数设计%jm97afun-零件参数函数%jm97aoptim-零件参数设计优化函数%jm97b-截断切割%jm97bcount-截断切割枚举法%jm97brule-截断切割优化准则%jm98a1-风险投资模型求解%jm98a2-风险投资模型讨论%jm98a3-收益与风险非线性模型求解%jm98a3fun-收益与风险非线性模型优化函数%jm98b-灾情巡视路线(C程序)%jm99a1-自动化车床模型一%jm99a1fun-自动化车床模型目标函数%jm99a1simu-自动化车床模型随机模拟%jm99asmfun-自动化车床模型费用函数%%演示程序%fun
1
本文来自于csdn,文章主要以一个实例为入口介绍了uml类图的基本图示法等相关内容,希望对您的学习有所帮助。
举一个简单的例子,来看这样一副图,其中就包括了UML类图中的基本图示法。
首先,看动物矩形框,它代表一个类(Class)。
类图分三层,第一层显示类的名称,如果是抽象类,则就用斜体显示。
第二层是类的特性,通常就是字段和属性。
第三层是类的操作,通常是方法或行为。
前面的符号,+
1
共 482 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡