当前位置:文档之家› 《非线性编辑》实验报告

《非线性编辑》实验报告

《非线性编辑》实验报告
《非线性编辑》实验报告

非线性编辑

授课班级:信A1131

姓名:

学号:

实验报告评分标准

1.按时按量于当堂课完成当次实验内容,并得出实验结果,得50分;

2.按时完成实验报告的书写并上交,得10分;

3.字迹工整,实验理据充足,加10分;(最高加10分,根据实际情

况酌情增减)

4.实验结果视觉效果好,有一定的美观性,加15分;(最高加15分,

根据实际情况酌情增减)

5.实验有创新,能给出相应的实验效果加15分。(最高加15分,根

据实际情况酌情增减)

实验一premiere的熟悉

实验目的:

1.熟悉premiere的界面及相关快捷键

2.掌握面板的使用方法

3.掌握Premiere 中片断采集,管理、剪辑的各种方法

实验所需软件:

Premiere CS4

实验内容:

1、根据给的“旅游海南宣传片”的成片从原始素材中将素材找到并剪辑拼接成一段20秒的视频。

实验步骤:

实验二画面的转场特效

实验目的:

1.掌握转场特效的添加、清除,切换面板的使用方法

2.典型转场如时钟擦除、滚离的使用及自定义转场实验所需软件:

Premiere CS4

实验内容:

1、将转场特效加入实验一中剪好的视频中;

实验步骤:

实验三视频特效

实验目的:

1、了解并掌握视频特效

2、能增加、调整、删除关键帧,理解关键帧的概念实验所需软件:

Premiere CS4

实验内容:

1.利用视频特效设计并制作个人宣传效果的视频

实验四字幕技术

实验目的:

1、了解并掌握字幕设计器,认识工具栏,能进行文字设计、

图形设计,能调整背景颜色,设置文字、图形透明效果。

2、制作淡入淡出、运动字幕、路径字幕、标志字幕及上滚字

幕等

3、了解常用卡拉OK字幕的制作

实验所需软件:

Premiere CS4

实验内容:

1、自制视频片尾结束时的字幕

2、自制一段MTV的歌词字幕效果

实验五自制新闻实验目的:

1、掌握演播厅中与室外场景拍摄技巧

2、掌握新闻视频的特点并进行剪辑

实验所需软件:

Premiere CS4

实验内容:

1、室内室外场景的拍摄

2、将拍摄的视频剪辑成新闻结构视频

实验六 EDIUS视频转场与视频特效的使用

实验目的:

1、熟练EDIUS的界面及快捷键

2、掌握素材的导入、设置入点、出点及剪辑

3、能熟练将视频转场及视频特效加入到剪辑的视频中

实验所需软件:

UDIUS 4.0

实验内容:

1、将“海南旅游宣传片”提供的原始素材进行剪辑并加上对

应的视频转场及视频特效,时长约20秒。

实验七利用EDIUS进行调色及抠像

实验目的:

1.调色滤镜的使用与熟悉

2.掌握整体较色与局部较色

3.掌握抠像技术

实验所需软件:

EDIUS 4.0

实验内容:

1.对一段花开的视频中花的颜色进行变色,如由原本色变成紫

色,再变成蓝色,最后变成黑色。

2.做3D画中画效果。

实验八EDIUS中字幕的使用

实验目的:

1、掌握Quick titler对话框的使用

2、掌握字幕混合特效的使用

3、掌握Inscriber titlemotion(动画字幕插件)的使用实验所需软件:

EDIUS 4.0

实验内容:

1、对一段已经剪辑好的视频短片加字幕效果

2、做“打字机”字幕

模式识别第二次上机实验报告

北京科技大学计算机与通信工程学院 模式分类第二次上机实验报告 姓名:XXXXXX 学号:00000000 班级:电信11 时间:2014-04-16

一、实验目的 1.掌握支持向量机(SVM)的原理、核函数类型选择以及核参数选择原则等; 二、实验内容 2.准备好数据,首先要把数据转换成Libsvm软件包要求的数据格式为: label index1:value1 index2:value2 ... 其中对于分类来说label为类标识,指定数据的种类;对于回归来说label为目标值。(我主要要用到回归) Index是从1开始的自然数,value是每一维的特征值。 该过程可以自己使用excel或者编写程序来完成,也可以使用网络上的FormatDataLibsvm.xls来完成。FormatDataLibsvm.xls使用说明: 先将数据按照下列格式存放(注意label放最后面): value1 value2 label value1 value2 label 然后将以上数据粘贴到FormatDataLibsvm.xls中的最左上角单元格,接着工具->宏执行行FormatDataToLibsvm宏。就可以得到libsvm要求的数据格式。将该数据存放到文本文件中进行下一步的处理。 3.对数据进行归一化。 该过程要用到libsvm软件包中的svm-scale.exe Svm-scale用法: 用法:svmscale [-l lower] [-u upper] [-y y_lower y_upper] [-s save_filename] [-r restore_filename] filename (缺省值:lower = -1,upper = 1,没有对y进行缩放)其中,-l:数据下限标记;lower:缩放后数据下限;-u:数据上限标记;upper:缩放后数据上限;-y:是否对目标值同时进行缩放;y_lower为下限值,y_upper为上限值;(回归需要对目标进行缩放,因此该参数可以设定为–y -1 1 )-s save_filename:表示将缩放的规则保存为文件save_filename;-r restore_filename:表示将缩放规则文件restore_filename载入后按此缩放;filename:待缩放的数据文件(要求满足前面所述的格式)。缩放规则文件可以用文本浏览器打开,看到其格式为: y lower upper min max x lower upper index1 min1 max1 index2 min2 max2 其中的lower 与upper 与使用时所设置的lower 与upper 含义相同;index 表示特征序号;min 转换前该特征的最小值;max 转换前该特征的最大值。数据集的缩放结果在此情况下通过DOS窗口输出,当然也可以通过DOS的文件重定向符号“>”将结果另存为指定的文件。该文件中的参数可用于最后面对目标值的反归一化。反归一化的公式为: (Value-lower)*(max-min)/(upper - lower)+lower 其中value为归一化后的值,其他参数与前面介绍的相同。 建议将训练数据集与测试数据集放在同一个文本文件中一起归一化,然后再将归一化结果分成训练集和测试集。 4.训练数据,生成模型。 用法:svmtrain [options] training_set_file [model_file] 其中,options(操作参数):可用的选项即表示的涵义如下所示-s svm类型:设置SVM 类型,默

【精品实验报告】软件体系结构设计模式实验报告

【精品实验报告】软件体系结构设计模式实验报告软件体系结构 设计模式实验报告 学生姓名: 所在学院: 学生学号: 学生班级: 指导老师: 完成日期: 一、实验目的 熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的设计模式,包括组合模式、外观模式、代理模式、观察者模式和策略模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式,并学会分析这些模式的使用效果。 二、实验内容 使用PowerDesigner和任意一种面向对象编程语言实现组合模式、外观模式、代理模式、观察者模式和策略模式,包括根据实例绘制模式结构图、编写模式实例实现代码,运行并测试模式实例代码。 (1) 组合模式 使用组合模式设计一个杀毒软件(AntiVirus)的框架,该软件既可以对某个文件夹(Folder)杀毒,也可以对某个指定的文件(File)进行杀毒,文件种类包括文本文件TextFile、图片文件ImageFile、视频文件VideoFile。绘制类图并编程模拟实现。 (2) 组合模式 某教育机构组织结构如下图所示: 北京总部 教务办公室湖南分校行政办公室 教务办公室长沙教学点湘潭教学点行政办公室

教务办公室行政办公室教务办公室行政办公室 在该教育机构的OA系统中可以给各级办公室下发公文,现采用 组合模式设计该机构的组织结构,绘制相应的类图并编程模拟实现,在客户端代码中模拟下发公文。(注:可以定义一个办公室类为抽象叶子构件类,再将教务办公室和行政办公室作为其子类;可以定义一个教学机构类为抽象容器构件类,将总部、分校和教学点作为其子类。) (3) 外观模式 某系统需要提供一个文件加密模块,加密流程包括三个操作,分别是读取源文件、加密、保存加密之后的文件。读取文件和保存文件使用流来实现,这三个操作相对独立,其业务代码封装在三个不同的类中。现在需要提供一个统一的加密外观类,用户可以直接使用该加密外观类完成文件的读取、加密和保存三个操作,而不需要与每一个类进行交互,使用外观模式设计该加密模块,要求编程模拟实现。参考类图如下: reader = new FileReader();EncryptFacadecipher = new CipherMachine();writer = new FileWriter();-reader: FileReader-cipher: CipherMachine-writer: FileWriter +EncryptFacade () +fileEncrypt (String fileNameSrc,: voidString plainStr=reader.read(fileNameSrc); String fileNameDes)String

高中物理-动量守恒定律及其应用(实验)教案

高中物理-动量守恒定律及其应用(实验)教案 【学习目标】 1.知道动量与冲量的概念,理解动量定理与动量守恒定律. 2.会用动量定理与动量守恒定律解决实际应用问题. 3.明确探究碰撞中的不变量的基本思路. 【要点导学】 1.冲量与动量的概念理解. 2.运用动量定理研究对象与过程的选择. 3.动量守恒定律的适用条件、表达式及解题步骤. 4.弹性碰撞和非弹性碰撞 (1)弹性碰撞:___________________________________ (2)非弹性碰撞:____________________________________ (3)在光滑水平面上,质量为m 1的小球以速度v 1与质量为m 2的静止小球发生弹性正碰,根据动量 守恒和机械能守恒,碰后两个小球的速度分别为: v 1’=_____________v 2’=_____________。 【典型例题】 类型一 冲量与动量定理 【例1】质量为m 的小球,从沙坑上方自由下落,经过时间1t 到达沙坑表面,又经过时间2t 停在沙坑里。 求: (1)沙对小球的平均阻力F ; (2)小球在沙坑里下落过程所受的总冲量I 的大小. 类型二 动量守恒定律及守恒条件判断 【例2】 把一支枪水平固定在小车上,小车放在光滑的水平面上,枪发射出一颗子弹时,关于枪、 弹、 车,下列说法正确的是( ) A .枪和弹组成的系统,动量守恒 B .枪和车组成的系统,动量守恒 C .三者组成的系统,因为枪弹和枪筒之间的摩擦力很小,使系统的动量变化很小,可以忽略不计,故系 统动量近似守恒 D .三者组成的系统,动量守恒,因为系统只受重力和地面支持力这两个外力作用,这两个外力的合 力为零 【变式训练1】如图A 、B 两物体的质量之比m A ∶m B =3∶2,原来静止在平板小车C 上,A 、B 间有 一根被压缩了的弹簧,A 、B 与平板车上表面间的滚动摩擦系数相同,地面光滑,当弹簧突然释放后, 则( ) A .A 、B 组成的系统动量守恒 B .A 、B 、 C 组成的系统动量守恒 C .小车向左运动 D .小车向右运动 类型三 动量守恒与能量守恒的综合应用 【例3】在静止的湖面上有一质量为M=100kg 的小船,船上站一个质量为m=50kg 的人。船长6米, A B C

模式识别实验报告

模式识别实验报告

————————————————————————————————作者:————————————————————————————————日期:

实验报告 实验课程名称:模式识别 姓名:王宇班级: 20110813 学号: 2011081325 实验名称规范程度原理叙述实验过程实验结果实验成绩 图像的贝叶斯分类 K均值聚类算法 神经网络模式识别 平均成绩 折合成绩 注:1、每个实验中各项成绩按照5分制评定,实验成绩为各项总和 2、平均成绩取各项实验平均成绩 3、折合成绩按照教学大纲要求的百分比进行折合 2014年 6月

实验一、 图像的贝叶斯分类 一、实验目的 将模式识别方法与图像处理技术相结合,掌握利用最小错分概率贝叶斯分类器进行图像分类的基本方法,通过实验加深对基本概念的理解。 二、实验仪器设备及软件 HP D538、MATLAB 三、实验原理 概念: 阈值化分割算法是计算机视觉中的常用算法,对灰度图象的阈值分割就是先确定一个处于图像灰度取值范围内的灰度阈值,然后将图像中每个像素的灰度值与这个阈值相比较。并根据比较的结果将对应的像素划分为两类,灰度值大于阈值的像素划分为一类,小于阈值的划分为另一类,等于阈值的可任意划分到两类中的任何一类。 最常用的模型可描述如下:假设图像由具有单峰灰度分布的目标和背景组成,处于目标和背景内部相邻像素间的灰度值是高度相关的,但处于目标和背景交界处两边的像素灰度值有较大差别,此时,图像的灰度直方图基本上可看作是由分别对应于目标和背景的两个单峰直方图混合构成。而且这两个分布应大小接近,且均值足够远,方差足够小,这种情况下直方图呈现较明显的双峰。类似地,如果图像中包含多个单峰灰度目标,则直方图可能呈现较明显的多峰。 上述图像模型只是理想情况,有时图像中目标和背景的灰度值有部分交错。这时如用全局阈值进行分割必然会产生一定的误差。分割误差包括将目标分为背景和将背景分为目标两大类。实际应用中应尽量减小错误分割的概率,常用的一种方法为选取最优阈值。这里所谓的最优阈值,就是指能使误分割概率最小的分割阈值。图像的直方图可以看成是对灰度值概率分布密度函数的一种近似。如一幅图像中只包含目标和背景两类灰度区域,那么直方图所代表的灰度值概率密度函数可以表示为目标和背景两类灰度值概率密度函数的加权和。如果概率密度函数形式已知,就有可能计算出使目标和背景两类误分割概率最小的最优阈值。 假设目标与背景两类像素值均服从正态分布且混有加性高斯噪声,上述分类问题可以使用模式识别中的最小错分概率贝叶斯分类器来解决。以1p 与2p 分别表示目标与背景的灰度分布概率密度函数,1P 与2P 分别表示两类的先验概率,则图像的混合概率密度函数可用下式表示为

设计模式实验报告

实验一单例模式的应用 1 实验目的 1) 掌握单例模式(Singleton)的特点 2) 分析具体问题,使用单例模式进行设计。 2 实验内容和要求 很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。 通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象。如果在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。 事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。绘制该模式的UML 图。 3 实验代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace AppConfig { publicclass Singleton { privatestatic Singleton instance; private Singleton() {

} publicstatic Singleton GetInstance() { if (instance == null) { instance = new Singleton(); } return instance; } } class Program { staticvoid Main(string[] args) { Singleton singletonOne = Singleton.GetInstance(); Singleton singletonTwo = Singleton.GetInstance(); if (singletonOne.Equals(singletonTwo)) { Console.WriteLine("singletonOne 和 singletonTwo 代表的是同一个实例"); } else { Console.WriteLine("singletonOne 和 singletonTwo 代表的是不同实例"); } Console.ReadKey(); } } } 4 实验结果

大学物理仿真实验报告——碰撞与动量守恒

大学物理仿真实验实验报告 碰撞和动量守恒 班级:信息1401 姓名:龚顺学号:201401010127 【实验目的】: 1 了解气垫导轨的原理,会使用气垫导轨和数字毫秒计进行试验。 2 进一步加深对动量守恒定律的理解,理解动能守恒和动量守恒的守恒条件。 【实验原理】 当一个系统所受和外力为零时,系统的总动量守恒,即有 若参加对心碰撞的两个物体的质量分别为m1和m2 ,碰撞前后的速度分别为V10、V20和V1 、V2。 1,完全弹性碰撞在完全弹性碰撞中,动量和能量均守恒,故有: 取V20=0,联立以上两式有: 动量损失率: 动能损失率: 2,完全非弹性碰撞 碰撞后两物体粘在一起,具有相同的速度,即有: 仍然取V20=0,则有: 动能损失率:

动量损失率: 3,一般非弹性碰撞中 一般非弹性碰撞中,两物体在碰撞后,系统有部分动能损失,定义恢复系数: 两物体碰撞后的分离速度比两物体碰撞前的接近速度即恢复系数。当V20=0时有: e的大小取决于碰撞物体的材料,其值在0~1之间。它的大小决定了动能损失的大小。 当e=1时,为完全弹性碰撞;e=0时,为完全非弹性碰撞;0

编译原理实验报告

编译原理实验报告 班级 姓名: 学号: 自我评定:

实验一词法分析程序实现 一、实验目的与要求 通过编写和调试一个词法分析程序,掌握在对程序设计语言的源程序进行扫描的过程中,将字符形式的源程序流转化为一个由各类单词符号组成的流的词法分析方法。 二、实验内容 根据教学要求并结合学生自己的兴趣和具体情况,从具有代表性的高级程序设计语言的各类典型单词中,选取一个适当大小的子集。例如,可以完成无符号常数这一类典型单词的识别后,再完成一个尽可能兼顾到各种常数、关键字、标识符和各种运算符的扫描器的设计和实现。 输入:由符合或不符合所规定的单词类别结构的各类单词组成的源程序。 输出:把单词的字符形式的表示翻译成编译器的内部表示,即确定单词串的输出形式。例如,所输出的每一单词均按形如(CLASS,VALUE)的二元式编码。对于变量和常数,CLASS字段为相应的类别码;VALUE字段则是该标识符、常数的具体值或在其符号表中登记项的序号(要求在变量名表登记项中存放该标识符的字符串;常数表登记项中则存放该常数的二进制形式)。对于关键字和运算符,采用一词一类的编码形式;由于采用一词一类的编码方式,所以仅需在二元式的CLASS字段上放置相应的单词的类别码,VALUE字段则为“空”。另外,为便于查看由词法分析程序所输出的单词串,要求在CLASS字段上放置单词类别的助记符。 三、实现方法与环境 词法分析是编译程序的第一个处理阶段,可以通过两种途径来构造词法分析程序。其一是根据对语言中各类单词的某种描述或定义(如BNF),用手工的方式(例如可用C语言)构造词法分析程序。一般地,可以根据文法或状态转换图构造相应的状态矩阵,该状态矩阵同控制程序便组成了编译器的词法分析程序;也可以根据文法或状态转换图直接编写词法分析程序。构造词法分析程序的另外一种途径是所谓的词法分析程序的自动生成,即首先用正规式对语言中的各类单词符号进行词型描述,并分别指出在识别单词时,词法分析程序所应进行的语义处理工作,然后由一个所谓词法分析程序的构造程序对上述信息进行加工。如美国BELL实验室研制的LEX就是一个被广泛使用的词法分析程序的自动生成工具。 总的来说,开发一种新语言时,由于它的单词符号在不停地修改,采用LEX等工具生成的词法分析程序比较易于修改和维护。一旦一种语言确定了,则采用手工编写词法分析程序效率更高。 四、实验设计 1)题目1:试用手工编码方式构造识别以下给定单词的某一语言的词法分析程序。 语言中具有的单词包括五个有代表性的关键字begin、end、if、then、else;标识符;整型常数;六种关系运算符;一个赋值符和四个算术运算符。参考实现方法简述如下。 单词的分类:构造上述语言中的各类单词符号及其分类码表。 表I 语言中的各类单词符号及其分类码表 单词符号类别编码类别码的助记符单词值

软件设计模式与软件体系结构实验报告

《软件体系结构》大作业(1) 学院:软件学院 课程名称:软件体系结构 专业班级: 学生姓名:学号: 学生姓名:学号: 指导教师: 完成时间:年月日 评分表 1、叙述各小组成员完成本题目的分工协作情况。 小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。另外,组长负责文档制作。 2、评分表 序号姓名评分是否组长 1 2 作业正文需要包括以下内容: 1、作业题目内容的详细描述。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的 软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。 4、完成本题目所设计的程序代码。 5、程序运行的典型界面截图

1、作业题目内容的详细描述。 【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。现在需要 扩展例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的相应作业部分。 【作业2.1-1】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。 【作业2.1-1】采用的是工厂方法模式 【作业2.1-2】采用的是抽象方法模式

专地的题目:弹性碰撞、非弹性碰撞动量守恒定律实验

专题:弹性碰撞、非弹性碰撞实验:探究动量守恒定律 学习目标: 1、了解弹性碰撞、非弹性碰撞和完全非弹性碰撞。 2、会用动量、能量的观点综合分析、解决一维碰撞问题。 3、了解探究动量守恒定律的三种方法。 学习过程: 系统不受外力,或者所受的外力为零,某些情况下系统受外力,但外力远小于内力时均可以认为系统的动量守恒,应用动量守恒定律时请大家注意速度的方向问题,最好能画出实 际的情境图协助解题。请规范解下列问题。 一、弹性碰撞、非弹性碰撞: 实例分析1:在气垫导轨上,一个质量为2kg的滑块A以1m/s的速度与另一个质量为1kg、速度为4m/s并沿相反方向运动的滑块B迎面相撞,碰撞后两个滑块粘在一起,求: (1)碰撞后两滑块的速度的大小和方向?系统的动能减少了多少?转化为什么能量? ⑵若碰撞后系统的总动能没有变化,则碰撞后两滑块的速度的大小和方向? 问题一:什么叫做弹性碰撞?什么叫做非弹性碰撞?什么叫做完全非弹性碰撞?碰撞过程中

会不会出现动能变多的情形?

实例分析2 :如图,光滑的水平面上,两球质量均为m,甲球与一轻弹簧相连,静止不动, 乙球以速度v撞击弹簧,经过一段时间和弹簧分开,弹簧恢复原长,求: (1 )撞击后甲、乙两球相距最近时两球球的速度的大小和方向? (2 )弹簧的弹性势能最大为多少? (3)乙球和弹簧分开后甲、乙两球的速度的大小和方向? 思考与讨论:假设物体m i以速度v i与原来静止的物体m2发生弹性碰撞,求碰撞后两物体 的速度V3、V4,并讨论m i=m 2; m 1》m2; m 1《m2时的实际情形。

二、探究动量守恒的实验: 问题二(P4参考案例一)如何探究系统动量是否守恒(弹性碰撞、分开模型、完全非弹性碰撞)? 问题三(P5参考案例二):某同学采用如图所示的装置进行实验. 把两个小球用等长的细线悬挂于同一点,让B球静止,拉起A球,由静止释放后使它们相碰,碰后粘在一起.实验 过程中除了要测量A球被拉起的角度i,及它们碰后摆起的最大角度还需测量哪些 2之外, 物理量(写出物理量的名称和符号)才能验证碰撞中的动量守恒.用测量的物理量表 示动量守恒应满足的关系式. 问题四(P5参考案例三):水平光滑桌面上有A、B两个小车,质量分别是0.6 kg和0.2 kg.A 车的车尾拉着纸带,A车以某一速度与静止的B车碰撞,碰后两车连在一起共同向前运动 碰撞前后打点计时器打下的纸带如图所示?根据这些数据,请通过计算猜想:对于两小车组 成的系统,什么物理量在碰撞前后是相等的?

编译原理实验报告总结

学年第学期《编译原理》实验报告 学院(系):计算机科学与工程学院 班级:11303070A 学号:11303070*** 姓名:无名氏 指导教师:保密式 时间:2016 年7 月

目录 1.实验目的 (1) 2.实验内容及要求 (1) 3.实验方案设计 (1) 3.1 编译系统原理介绍 (1) 3.1.1 编译程序介绍 (2) 3.1.2 对所写编译程序的源语言的描述 (2) 3.2 词法分析程序的设计 (3) 3.3 语法分析程序设计 (4) 3.4 语义分析和中间代码生成程序的设计 (4) 4. 结果及测试分析 (4) 4.1软件运行环境及限制 (4) 4.2测试数据说明 (5) 4.3运行结果及功能说明 (5) 5.总结及心得体会 (7)

1.实验目的 根据Sample语言或者自定义的某种语言,设计该语言的编译前端。包括词法分析,语法分析、语义分析及中间代码生成部分。 2.实验内容及要求 (1)词法分析器 输入源程序,输出对应的token表,符号表和词法错误信息。按规则拼单词,并转换成二元形式;滤掉空白符,跳过注释、换行符及一些无用的符号;进行行列计数,用于指出出错的行列号,并复制出错部分;列表打印源程序;发现并定位词法错误; (2)语法分析器 输入token串,通过语法分析,寻找其中的语法错误。要求能实现Sample 语言或自定义语言中几种最常见的、基本的语法单位的分析:算术表达式、布尔表达式、赋值语句、if语句、for语句、while语句、do while语句等。 (3)语义分析和中间代码生成 输入token串,进行语义分析,修改符号表,寻找其中的语义错误,并生 成中间代码。要求能实现Sample语言或自定义语言中几种最常见的、基本的语法单位的分析:算术表达式、布尔表达式、赋值语句、if语句、for语句、while 语句、do while语句等。 实验要求:功能相对完善,有输入、输出描述,有测试数据,并介绍不足。3.实验方案设计 3.1 编译系统原理介绍 编译器逐行扫描高级语言程序源程序,编译的过程如下: (1).词法分析 识别关键字、字面量、标识符(变量名、数据名)、运算符、注释行(给人看的,一般不处理)、特殊符号(续行、语句结束、数组)等六类符号,分别归类等待处理。 (2).语法分析 一个语句看作一串记号(Token)流,由语法分析器进行处理。按照语言的文法检查判定是否是合乎语法的句子。如果是合法句子就以内部格式保存,否则报错。直至检查完整个程序。 (3).语义分析 语义分析器对各句子的语法做检查:运算符两边类型是否相兼容;该做哪些类型转换(例如,实数向整数赋值要"取整");控制转移是否到不该去的地方;是

设计模式实验报告

计算机科学与技术学院 实验报告 课程名称:软件设计模式 专业:计算机科学与技术班级:班 学号: 姓名:

实验一单例模式的应用 1 实验目的 1) 掌握单例模式(Singleton)的特点 2) 分析具体问题,使用单例模式进行设计。 2 实验内容和要求 很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。 通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象。如果在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。 事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。绘制该模式的UML图。 [代码截图]: namespace实验一_单例模式_ { class Program { static void Main(string[] args) { AppConfig appc1 = AppConfig.GetAppConfig(); AppConfig appc2 = AppConfig.GetAppConfig(); appc1.SetParameterA("hello"); appc2.SetParameterA("hi"); if (appc1.Equals(appc2)){ Console.WriteLine("appc1 和 appc2 代表的是同一个实例"); } else{ Console.WriteLine("appc1 和 appc2 代表的是不同实例"); } Console.WriteLine(appc1.GetParameterA()); Console.WriteLine(appc2.GetParameterA()); Console.ReadKey();

编 译 原 理 实 验 报 告

编译原理实验报告 课程:编译原理 系别:计算机系 班级:11网络 姓名:王佳明 学号:110912049 教师:刘老师 实验小组:第二组 1

实验一熟悉C程序开发环境、进行简单程序的调试 实验目的: 1、初步了解vc++6.0环境; 2、熟悉掌握调试c程序的步骤: 实验内容: 1、输入下列程序,练习Turbo C 程序的编辑、编译、运行。 #include main() { printf(“Programming is fun.\n”); } 2、分析程序,预测其运行结果,并上机检测你的预测。 #include main() { printf(“*\n”); printf(“* * *\n”); printf(“* * * * *\n”); printf(“* * * * * * *\n”); } 3、下面是一个加法程序,程序运行时等待用户从键盘输入两个整数,然后求出它们的和并输出。观察运行结果(程序输出),上机验证该程序。 #include main() { int a,b,c; printf(“Please input a,b:”); scanf(“%d,%d”,&a,&b); c=a+b; printf(“%d+%d=%d\n”,a,b,c); } 2

实验二词法分析器 一、实验目的: 设计、编制、调试一个词法分析子程序-识别单词,加深对词法分析原理的理解。 二、实验要求: 1.对给定的程序通过词法分析器弄够识别一个个单词符号,并以二元式(单词种别码,单词符号的属性值)显示。而本程序则是通过对给定路径的文件的分析后以单词符号和文字提示显示。 2.本程序自行规定: (1)关键字"begin","end","if","then","else","while","write","read", "do", "call","const","char","until","procedure","repeat" (2)运算符:"+","-","*","/","=" (3)界符:"{","}","[","]",";",",",".","(",")",":" (4)其他标记如字符串,表示以字母开头的标识符。 (5)空格、回车、换行符跳过。 在屏幕上显示如下: ( 1 , 无符号整数) ( begin , 关键字) ( if , 关键字) ( +, 运算符) ( ;, 界符) ( a , 普通标识符) 三、使用环境: Windows下的visual c++6.0; 四、调试程序: 1.举例说明文件位置:f:、、11.txt目标程序如下: begin x:=9 if x>0 then x:=x+1; while a:=0 do 3

模式识别实验报告(一二)

信息与通信工程学院 模式识别实验报告 班级: 姓名: 学号: 日期:2011年12月

实验一、Bayes 分类器设计 一、实验目的: 1.对模式识别有一个初步的理解 2.能够根据自己的设计对贝叶斯决策理论算法有一个深刻地认识 3.理解二类分类器的设计原理 二、实验条件: matlab 软件 三、实验原理: 最小风险贝叶斯决策可按下列步骤进行: 1)在已知 ) (i P ω, ) (i X P ω,i=1,…,c 及给出待识别的X 的情况下,根据贝叶斯公式计 算出后验概率: ∑== c j i i i i i P X P P X P X P 1 ) ()() ()()(ωωωωω j=1,…,x 2)利用计算出的后验概率及决策表,按下面的公式计算出采取i a ,i=1,…,a 的条件风险 ∑== c j j j i i X P a X a R 1 )(),()(ωω λ,i=1,2,…,a 3)对(2)中得到的a 个条件风险值) (X a R i ,i=1,…,a 进行比较,找出使其条件风险最小的 决策k a ,即()() 1,min k i i a R a x R a x == 则 k a 就是最小风险贝叶斯决策。 四、实验内容 假定某个局部区域细胞识别中正常(1ω)和非正常(2ω)两类先验概率分别为 正常状态:P (1ω)=; 异常状态:P (2ω)=。 现有一系列待观察的细胞,其观察值为x : 已知先验概率是的曲线如下图:

)|(1ωx p )|(2ωx p 类条件概率分布正态分布分别为(-2,)(2,4)试对观察的结果 进行分类。 五、实验步骤: 1.用matlab 完成分类器的设计,说明文字程序相应语句,子程序有调用过程。 2.根据例子画出后验概率的分布曲线以及分类的结果示意图。 3.最小风险贝叶斯决策,决策表如下: 结果,并比较两个结果。 六、实验代码 1.最小错误率贝叶斯决策 x=[ ] pw1=; pw2=; e1=-2; a1=; e2=2;a2=2; m=numel(x); %得到待测细胞个数 pw1_x=zeros(1,m); %存放对w1的后验概率矩阵 pw2_x=zeros(1,m); %存放对w2的后验概率矩阵

设计模式实验报告-建造者模式

建造者模式 建造者 建造者设计模式定义了处理其他对象的复杂构建的对象设计。 问题:创建复杂对象时候,构造函数的创建会涉及通用体系结构判定。某些编程人员认为任何构造函数都应当执行适当的逻辑以创建整个对象。另外一些编程人员则认识到将某些逻辑分解入其他方法才是有意义的。采用后一种样式设计的构造函数基本上是一系列请求实例化的方法。上述两种解决方案都不是特别灵活。事实上,它们根本就是错误的解决方案。 解决方案:我们可以基于一组业务逻辑的结果来构造对象。在示例中,对象只有特定的部分必须被创建。如果完全定义对象的所有部分,那么可能导致完全预见不能的结果。 多个方法调用的复杂性问题在使用之处似乎并非太严重,但该复杂性却是缓慢增长的。如果需要经常调用这些方法,那么就应当创建一个Builder对象。 UML MyObject MyObjectBuilder -MyObject:MyObect +complexFunctionA() +createInstanceOfMyObject() +complexFunctionB() +buideMyObject(configurationOptions) +getBuiltMyObject() *MyObject类具有能够完全实现对象构造的两个方法。为了具有完整的Myobject对象,需要执行complexFunctionA()和complexFunctionB()方法。 * MyObjectBuilder类包含一个名为createInstanceOfMyObject()的方法。这个类负责创建Myobject类的一个简单实例。需要注意没有用于进一步构造的配置选项。这个类还存储MyObjectBuilder类创建的实例中的私有实例。 *buildMyObject()方法接受参数configurationOption。这个方法用于调用在MyObjectBuilder 对象中存储的MyObject对象的complexFunctionA()和complexFunctionB()方法。 *getBuildObject()方法返回MyObjectBuilder对象内部Myobject对象的私有实例,该实例既是完整的,也是正常构建的。 示例代码演示: _type=$type; } public function setSize($size) {

编译原理实验报告一

实验一词法分析程序实现 一、实验目得与要求 通过编写与调试一个词法分析程序,掌握在对程序设计语言得源程序进行扫描得过程中,将字符流形式得源程序转化为一个由各类单词符号组成得流得词法分析方法 二、实验内容 基本实验题目:若某一程序设计语言中得单词包括五个关键字begin、end、if、then、else;标识符;无符号常数;六种关系运算符;一个赋值符与四个算术运算符,试构造能识别这些单词得词法分析程序(各类单词得分类码参见表I)。 表I语言中得各类单词符号及其分类码表 输入:由符合与不符合所规定得单词类别结构得各类单词组成得源程序文件。 输出:把所识别出得每一单词均按形如(CLASS,VALUE)得二元式形式输出,并将结果放到某个文件中。对于标识符与无符号常数,CLASS字段为相应得类别码得助记符;V AL UE字段则就是该标识符、常数得具体值;对于关键字与运算符,采用一词一类得编码形式,仅需在二元式得CLASS字段上放置相应单词得类别码得助记符,V ALUE字段则为“空". 三、实现方法与环境 词法分析就是编译程序得第一个处理阶段,可以通过两种途径来构造词法分析程序.其一就是根据对语言中各类单词得某种描述或定义(如BNF),用手工得方式(例如可用C语言)构造词法分析程序。一般地,可以根据文法或状态转换图构造相应得状态矩阵,该状态矩阵连同控制程序一起便组成了编译器得词法分析程序;也可以根据文法或状态转换图直接编写词法分析程序。构造词法分析程序得另外一种途径就是所谓得词法分析程序得自动生成,即首先用正规式对语言中得各类单词符号进行词型描述,并分别指出在识别单词时,词法分析程

实验1 动量守恒定律的研究

实验1 动量守恒定律的研究 ――气垫导轨实验(一) 气垫技术是20世纪60年代发展起来的一种新技术,这一新技术克服了物体与运动表面之间的摩擦阻力,减少了磨损,延长了仪器寿命,提高了机械效率。因此,在机械、电子、纺织、运输等领域中得到了广泛的应用,如激光全息实验台、气垫船、空气轴承、气垫输送带等。 气垫导轨(Air track )是采用气垫技术的一种阻力极小的力学实验装置。利用气源将压缩空气打入导轨腔内,再由导轨表面上的小孔喷出气流,在导轨与滑行器(滑块)之间形成很薄的空气薄膜,浮起滑块,使滑块可以在导轨上作近似无阻力的直线运动,为力学实验创造了较为理想的测量条件。在力学实验中,利用气垫导轨可以观察和研究在近似无阻力情况下物体的各种运动规律,极大地减少了由于摩擦力的存在而出现的较大误差,大大提高了实验的精确度。利用气垫导轨和光电计时系统,许多力学实验可以进行准确的定量分析和研究,使实验结果接近理论值,实验现象更加真实、直观。如速度和加速度的测量,重力加速度的测定,牛顿运动定律的验证,动量守恒定律的研究,谐振运动的研究,等等。 动量守恒定律是自然界的一个普遍规律,不仅适用于宏观物体,也适用于微观粒子,在科学研究和生产技术方面都被广泛应用。本实验通过两个滑块在水平气垫导轨上的完全弹性碰撞和完全非弹性碰撞过程来研究动量守恒定律。 【实验目的】 1.了解气垫导轨的基本构造和功能,熟悉气垫导轨的调节和使用方法。 2.了解光电计时系统的基本组成和原理,掌握电脑通用计数器的使用方法。 3.用观察法研究完全弹性碰撞和完全非弹性碰撞的特点。 4.验证动量守恒定律,学会判断实验是否能够验证理论的基本方法。 【实验原理】 1.碰撞与动量守恒定律 如果某一力学系统不受外力,或外力的矢量和为零,则系统的总动量保持不变,这就是动量守恒定律。 在一直线上运动的两个物体,质量分别为1m 和2m ,在水平方向不受外力的情况下发生碰撞,碰撞前的运动速度为10v 和20v ,碰撞后的运动速度为1v 和2v ,则由动量守恒定律可得 2211202101v m v m v m v m +=+ (1) 实验中利用气垫导轨上两个滑块的碰撞来研究动量守恒定律。 2.完全弹性碰撞 完全弹性碰撞的特点是碰撞前后系统的动量守恒,机械能也守恒。如图1所示,如果在两个滑

编译原理实验报告

《编译原理》实验报告软件131 陈万全132852

一、需求分析 通过对一个常用高级程序设计语言的简单语言子集编译系统中词法分析、语法分析、语义处理模块的设计、开发,掌握实际编译系统的核心结构、工作流程及其实现技术,获得分析、设计、实现编译程序等方面的实际操作能力,增强设计、编写和调试程序的能力。 通过开源编译器分析、编译过程可视化等扩展实验,促进学生增强复杂系统分析、设计和实现能力,鼓励学生创新意识和能力。 1、词法分析程序设计与实现 假定一种高级程序设计语言中的单词主要包括五个关键字begin、end、if、then、else;标识符;无符号常数;六种关系运算符;一个赋值符和四个算术运算符,试构造能识别这些单词的词法分析程序。 输入:由符合和不符合所规定的单词类别结构的各类单词组成的源程序文件。 输出:把所识别出的每一单词均按形如(CLASS,VALUE)的二元式形式输出,并将结果放到某个文件中。对于标识符和无符号常数,CLASS字段为相应的类别码的助记符;VALUE字段则是该标识符、常数的具体值;对于关键字和运算符,采用一词一类的编码形式,仅需在二元式的CLASS字段上放置相应单词的类别码的助记符,VALUE字段则为“空”。 2、语法分析程序设计与实现 选择对各种常见高级程序设计语言都较为通用的语法结构——算术表达式的

一个简化子集——作为分析对象,根据如下描述其语法结构的BNF定义G2[<算术表达式>],任选一种学过的语法分析方法,针对运算对象为无符号常数和变量的四则运算,设计并实现一个语法分析程序。 G2[<算术表达式>]: <算术表达式>→<项> | <算术表达式>+<项> | <算术表达式>-<项> <项>→<因式>|<项>*<因式>|<项>/<因式> <因式>→<运算对象> | (<算术表达式>) 若将语法范畴<算术表达式>、<项>、<因式>和<运算对象>分别用E、T、F和i 代表,则G2可写成: G2[E]:E → T | E+T | E-T T → F | T*F | T/F F → i | (E) 输入:由实验一输出的单词串,例如:UCON,PL,UCON,MU,ID······输出:若输入源程序中的符号串是给定文法的句子,则输出“RIGHT”,并且给出每一步分析过程;若不是句子,即输入串有错误,则输出“ERROR”,并且显示分析至此所得的中间结果,如分析栈、符号栈中的信息等,以及必要的出错说明信息。 3、语义分析程序设计与实现 对文法G2[<算术表达式>]中的产生式添加语义处理子程序,完成运算对象是简单变量(标识符)和无符号数的四则运算的计值处理,将输入的四则运算转换为四元式形式的中间代码。 输入:包含测试用例(由标识符、无符号数和+、?、*、/、(、)构成的算术表达式)的源程序文件。 输出:将源程序转换为中间代码形式表示,并将中间代码序列输出到文件中。 若源程序中有错误,应指出错误信息 二、设计思路 1、词法分析程序设计与实现 1)单词分类 为了编程的实现。我们假定要编译的语言中,全部关键字都是保留字,程序员不得将它们作为源程序中的标识符;作了这些限制以后,就可以把关键字和标识符的识别统一进行处理。即每当开始识别一个单词时,若扫视到的第一个字符为字母,则把后续输入的字母或数字字符依次进行拼接,直至扫视到非字母、数字字符为止,以期获得一个尽可能长的字母数字字符串,然后以此字符串查所谓保留字表(此保留字表要事先造好),若查到此字符串,则取出相应的类别码;反之,则表明该字符串应为一标识符。

模式识别实验报告

实验一Bayes 分类器设计 本实验旨在让同学对模式识别有一个初步的理解,能够根据自己的设计对贝叶斯决策理论算法有一个深刻地认识,理解二类分类器的设计原理。 1实验原理 最小风险贝叶斯决策可按下列步骤进行: (1)在已知)(i P ω,)(i X P ω,i=1,…,c 及给出待识别的X 的情况下,根据贝叶斯公式计算出后验概率: ∑== c j i i i i i P X P P X P X P 1 ) ()() ()()(ωωωωω j=1,…,x (2)利用计算出的后验概率及决策表,按下面的公式计算出采取i a ,i=1,…,a 的条件风险 ∑== c j j j i i X P a X a R 1 )(),()(ωω λ,i=1,2,…,a (3)对(2)中得到的a 个条件风险值)(X a R i ,i=1,…,a 进行比较,找出使其条件风险最小的决策k a ,即 则k a 就是最小风险贝叶斯决策。 2实验内容 假定某个局部区域细胞识别中正常(1ω)和非正常(2ω)两类先验概率分别为 正常状态:P (1ω)=0.9; 异常状态:P (2ω)=0.1。

现有一系列待观察的细胞,其观察值为x : -3.9847 -3.5549 -1.2401 -0.9780 -0.7932 -2.8531 -2.7605 -3.7287 -3.5414 -2.2692 -3.4549 -3.0752 -3.9934 2.8792 -0.9780 0.7932 1.1882 3.0682 -1.5799 -1.4885 -0.7431 -0.4221 -1.1186 4.2532 已知类条件概率密度曲线如下图: )|(1ωx p )|(2ωx p 类条件概率分布正态分布分别为(-2,0.25)(2,4)试对观察的结果进 行分类。 3 实验要求 1) 用matlab 完成分类器的设计,要求程序相应语句有说明文字。 2) 根据例子画出后验概率的分布曲线以及分类的结果示意图。 3) 如果是最小风险贝叶斯决策,决策表如下:

相关主题
相关文档 最新文档