中间语言表示

编译器构成 编译器分为前端和后端: 前端:依赖于源语言,独立于目标机器。包括词法分析器、语法分析器、语义分析器和中间代码生成器。 后端:依赖于目标机器,独立于源语言。包括代码优化器和代码生成器。 中间语言表示 后缀表示 如果EEE是变量或常数,那么EEE的后缀表示就是EEE本身。 如果EEE是形...

2018-12-10 18:04:19

阅读数:4

评论数:0

自下而上的语法分析

句柄 右句型γ\gammaγ的句柄是一个产生式的右部β\betaβ,并且该句柄β\betaβ通过产生式A→βA\rightarrow\betaA→β归约后,得到的是最右推导中的前一个句型。 右句型:所有在最右推导中出现的句型都是右句型。

2018-12-01 21:43:11

阅读数:26

评论数:0

自上而下的语法分析

进行自上而下的语法分析,基于文法是LL(1)文法。分为递归下降的分析和预测分析。 提取左公因子 对产生式组 A→α∣αb1∣αb2∣…∣αbm∣γ1∣γ2∣…∣γpA \rightarrow \alpha | \alpha b_1 | \alpha b_2 | \ldots | \alpha b_...

2018-11-28 18:37:19

阅读数:9

评论数:0

用例图中拓展(extend)和包含(include)的区别

定义 拓展(Extend) 扩展关系是扩展用例的泛化关系继续基本用例的行为。扩展用例通过在概念上将附加动作序列插入基本用例序列来实现这一点。这允许扩展用例在基本用例中达到适当的扩展点并且满足扩展条件时继续基本用例的活动序列。当扩展用例活动序列完成时,基本用例继续。 扩展用例通常定义可选的行为,这些...

2018-11-27 19:47:44

阅读数:21

评论数:0

由NFA转DFA以及DFA的化简

NFA(Non-deterministic Finite Automata) 不确定有限自动机 构造NFA分成两步:画出每一个小单元的NFA;将每一个小单元的NFA组合。 小单元的NFA 单个输入符号aaa 连接运算ababab 选择运算a∣ba|ba∣b 添加两个状态(选择运算开始状态和结...

2018-11-25 20:17:45

阅读数:17

评论数:0

FISRT集和FOLLOW集

FIRST集 什么是FIRST集 FIRST(α\alphaα)是从α\alphaα推导出的串的起始终结符的集合。 FIRST(α\alphaα) = {a | α⇒∗\alpha\Rightarrow^{*}α⇒∗a…, a∈VT\in V_T∈VT​}, VTV_TVT​是终结符集合。 特殊情...

2018-11-23 21:19:24

阅读数:6

评论数:0

网络信息安全复习笔记

第一章 安全攻击分类 被动攻击:信息内容泄露、流量分析 主动攻击:伪装、重播、消息修改、拒绝服务 安全服务 认证:保证通信的真实性。确保通信双方的身份是可信的。 访问控制:防止资源非授权使用 数据保密性:防止传输消息受到被动攻击。 数据完整性:与主动攻击有关,检测而不是阻止。 不可否认性:防止通信...

2018-11-10 17:55:01

阅读数:42

评论数:0

词法分析器Lexer

词法分析 In computer science, lexical analysis, lexing or tokenization is the process of converting a sequence of characters (such as in a computer prog...

2018-09-23 20:32:05

阅读数:41

评论数:0

利用ZXing工具生成二维码以及解析二维码

今天突然想到二维码是如何存储信息的,手画二维码是否可行呢。于是就开始各种搜索,最终自己也利用Google的ZXing工具完成了一个生成二维码和解析二维码的简单程序。 一、 二维码生成原理(即工作原理) 二维码官方叫版本Version。Version 1是21 x 21的矩阵,Version 2...

2018-09-06 18:39:42

阅读数:43

评论数:0

Java_1

数组 运算符 包 访问权限 修饰符 数组 1. 数组的声明: int[] a; 2. 数组的创建 使用new运算符数组的创建int[] a = new int[100] 数组的长度不要求是常量:new int[n]会创建一个长度为n的数组 3. 数组的初始化 ...

2018-07-08 17:51:40

阅读数:15

评论数:0

Gitee(码云)、Github同时配置ssh key

一、cd ~/.ssh 二、通过下面的命令,依次生成两个平台的key $ ssh-keygen -t rsa -C "xxxxxxx@qq.com" -f "github_id_rsa"...

2018-07-06 21:03:35

阅读数:2154

评论数:3

JAVA学习-0

Java简单介绍 第一个程序Hello World 基本数据类型 对象和类 数据声明 函数声明 参数传递 Java简单介绍 Java的优点:简单、可移植性 JDK (Java Development Kit) Java开发工具包 JRE (Java Runtime Enviro...

2018-07-03 19:42:41

阅读数:21

评论数:0

2017-2018学年大连理工大学软件学院数据库考试题目说明

*20分*10个选择(比较简单,复习注意概念,比如DBS,DB,DBMS都是什么。其中有两个有关事务的题,即第十二章内容,分别是ACID的四个性质内容和结束事务并回滚的语句是什么问题) *50分*4个关系代数,6个SQL,一个5分。考了not exists和not in 相互转换, not ex...

2018-06-28 16:54:44

阅读数:108

评论数:0

数据库设计范式

1.第一范式(1NF) 定义:如果关系模式R的所有属性的域都是原子的,那么称关系模式R属于第一范式。 通俗的讲,第一范式就是属性不可再分。比如地址属性,可以再分为省、市、县等属性,所以在这种情况下,地址属性所在的关系模式就不符合第一范式。 2.第二范式(2NF) 定义:若...

2018-06-27 14:32:35

阅读数:47

评论数:0

数据库练习题(比较基础)

一、基本表的定义与删除 T1. 用SQL语句创建如下三张表:学生(Student),课程表(Course),和学生选课表(SC),这三张表的结构如表1-1到表1-3所示。 表1-1 Student表结构 列名 说明 数据类型 约束 Sno 学号 字符...

2018-06-13 12:25:58

阅读数:527

评论数:0

使用hexo+github搭建免费个人博客详细教程

转自:个人网站:https://haoji.megithub:https://github.com/sxei博客园:http://www.cnblogs.com/liuxianancopyright ©2012-2018 小茗同学前言体验更加排版请访问原文链接:http://blog.liuxia...

2018-06-04 16:43:58

阅读数:57

评论数:0

Ubuntu+Windows 扩容,挂载新分区

1.在Windows上分出一块空白区。打开磁盘管理,选择自己要分割的分区,压缩卷,输入大小,新建卷。2.打开Ubuntu,

2018-05-30 15:42:17

阅读数:91

评论数:0

Python学习-000 从Hello world!开始(print()函数解析)

老规矩,学习一门语言,肯定要从Hello world开始啦python 2print “Hello world!”python 3print("Hello world!")不同的原因是,在python 3中,print作为一个函数调用,括号中的内容作为函数的参数...

2018-05-15 16:44:44

阅读数:26

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭