《三极管两级放大器及负反馈电路》实验报告

《三极管两级放大器及负反馈电路》实验报告
《三极管两级放大器及负反馈电路》实验报告

创新实验项目报告书

实验名称三极管两级放大器及负反馈电路日期2012年3月10日姓名专业通信工程一、实验目的

设计三极管两级放大器及负反馈电路,要求如下:

1、增益≥40dB;

2、3dB带宽10Hz~1MHz;

3、采用双电源供电;

4、输入信号200mV≥Vpp≥20mV。

二、实验原理

图1 三极管两级放大器及负反馈电路原理图

三极管两级放大器及负反馈电路原理: 1、Tr1发射极电流的分配关系

当输入电压为Vi 时,考虑交流通路,Tr1发射极电位为Vi ,根据基尔霍夫电流定律,s f e i i i =+(式1)。 e i 非常小,可认为s f i i ≈(式2)。 而

2、负反馈电阻f R 的作用

f R 起到稳定输出电压的作用。输出电压是e i 以Tr1、Tr2原来的增益放大之后的大小。当Vo 增大时,f i 增大,e i 减小,进而Vo 减小;当Vo 减小时,f i 减小,e i 增大,进而Vo 增大。f R 起到负反馈的作用。 3、电路的增益

将式3、式4带入式2,可得到电路增益的近似值

三、实验过程

1、三极管两级放大器及负反馈电路的设计 (1)、确定电源电压

要求输入信号200mV ≥Vpp ≥20mV,增益≥40dB,即100倍,由于实际增益小雨理论计算的增益,故将理论增益设定为150倍。输出电压的最大Vpp=200mV ×150=30V 。故采用±15V 双电源。 (2)、晶体管的选择

采用S9014(NPN )、S9015(PNP)互补对称管,可满足设计要求。 表1 S9014的特性

项 目 符 号

规 格 单 位 集电极-基极间电压 CBO V 50 V 集电极-发射极间电压 CEO V 45 V 基极-发射极间电压

EBO V

5 V 集电极电流

Ic

100

mA

(式)(式43i s

i s f

i

o f R v

i R v v =-=

表2 S9015的特性

项 目 符 号

规 格 单 位 集电极-基极间电压 CBO V -50 V 集电极-发射极间电压 CEO V -45 V 基极-发射极间电压

EBO V

-5 V 集电极电流

Ic

-100

mA

(3)、确定1e S R R +、1c R 、f R

设定1e S R R +上的压降为2V ,流过Tr1发射级的电流为2mA ,则

取Ω。

Ω,Ω,k 1100k 151===e f S R R R 取1c R 上的压降为5V ,则

(4)、确定1b R 、2b R

1e S R R +上的压降为2V ,Tr1的BE V 为0.6V ,则2b R 上的压降为2.6V ,1b R 上的压降为27.4V 。为了使Tr1的基极电流可以忽略,流过1b R 、2b R 的电流应为Tr1基极电流的10倍以上。设Tr1的β=100,mA 211=≈E C I I ,那么基极电流

0.02mA 100mA 21==B I ,流过1b R 、2b R 的电流为0.2mA 。则

取标称值Ω。Ω,k 13k 10021==b b R R (5)、确定2c R 、2e R

Tr2的基极电位等于Tr1的集电极电位,为10V ,所以Tr2的发射极电位为10.6V ,当Tr2的集电极电位设定在发射极电位与负电源的中点,即-2.2V 时,输出信号可达最大幅值。设定Tr2的集电极电流为4mA ,则

Ω1k mA

2V

21==

+e S R R 150

=+=

S

S

f V R R R A Ω2.4k 2mA

V

51≈=

c R Ω

Ω

13k 0.2mA V 6.2137k 0.2mA V

4.2721====

b b R R

(6)、确定i C 、o C 、5C

i C 、o C 、5C 是将直流电压切去的耦合电容,这里取F 105μ===C C C o i 。 i C 与输入电阻(=1b R //2b R =100k Ω//10k Ω≈9.1k Ω)形成高通滤波器的截止频率为1/2πi C R =1.7Hz 。 (7)、确定1e C 、2e C

1e C 、2e C 分别是将1e R 、2e R 交流短路的电容,用以提高交流增益。可取2e C =100μF 。

1e C 与S R 形成高通滤波器的截止频率为1/2πS R 1e C ≤10Hz ,故1e C >159μF ,取1e C =470μF 。 (8)、确定C1~C4

C1~C4是电源的去耦电容,取C3=C4=0.1μF ,C1、C2不是取常用的10μF ,而是100μF ,因2e C 将2e R 旁路的缘故。

综上,设计的三极管两级放大器及负反馈电路的电路图如下:

Ω

Ω

k 34mA V )15(2.21k 4mA

V

6.101522≈---=≈-=

e c R R 图2 三极管两级放大器及负反馈电路图

2、三极管两级放大器及负反馈电路的仿真结果

图3 三极管两级放大器及负反馈电路仿真截图

(1)、增益的仿真结果

输入信号截图:

频率:1kHz 幅值:50mV

输出波形截图:

幅值大于5V,增益大于100倍,即40dB。

(2)、频率响应的仿真结果

波特仪显示结果截图:

中频带增益42.887dB。

下限截止频率:6.746Hz

上限截止频率:4.562MHz

3、按照电路原理图焊接电路板

图4 三极管两级放大器及负反馈电路实物图

4、对电路板进行调试,并进行改进

用万用表测试,没有发现短路、断路、虚焊等现象。

接入±15双电源,测得Tr1、Tr2的BE V 均为0.6V 左右,无异常现象。 输入1kHz 、50mVpp 的正弦波信号,中频带电压增益已远远超过100dB ,下限截止频率达7Hz ,上限截止频率刚好为1MHz 。频率高于1MHz 时,输出波形失真,可能是增益设定得过高所致。

改进:在f R 两端并联33k Ω电阻,使反馈电阻略大于10k Ω,增益略大于100倍。即40dB ,再次调试高频特性得到改善。 四、实验结果

输入信号幅值:33mV f(Hz) 7 8 9 10 50 100 1k 1M 1.5M Vo(V) 2.88 3.08 3.28 3.36 3.96 4.08 4.02 4.04 4 Av(dB) 37.4 37.9 38.5 38.7 40.1 40.4 40.3 40.3 40.2 可见,中频带增益大于40dB ,3dB 带宽为7Hz~1.5MHz ,频率再高时输出波形失真。

五、实验总结

由于该电路增益过大,高频时输出波形会产生失真现象,为了提高高频特性,采取了适当减小f R 的方法且不能使增益过低,最后得到f R 的取值约为10k Ω,高频特性较好。本次实验也收获了一些经验,就是遇到问题后要先正确分析可能的原因,而不是猜测某个元件出了问题盲目地换元件,白白地浪费时间。

火车重排问题

实验报告 实验课名称:数据结构实验二 实验名称:火车重排问题 班级:20130612 学号:13姓名:李寅龙时间:2014-5-18 一、问题描述 ①问题描述 一列货运列车共有n节车厢,每节车厢将停放在不同的车站。假定n个车站的编号分别为1~n,即货运列车按照第n站至第1站的次序经过这些车站。为了便于从列车上卸掉相应的车厢,车厢的编号应与车站的编号相同,这样,在每个车站只要卸掉最后一节车厢。所以,给定任意次序的车厢,必须重新排列它们。 车厢的重排工作可以通过转轨站完成。在转轨站中有一个入轨、一个出轨和k个缓冲轨,缓冲轨位于入轨和出轨之间。假定缓冲轨按先进先出的方式运作,设计算法解决火车车厢重排问题。 ②基本要求 ●设计存储结构表示n个车厢、k个缓冲轨以及入轨和出轨; ●设计并实现车厢重排算法; ●分析算法的时间性能。 二、数据结构设计 创建队列结构和相关操作函数 typedef struct { int *base; int front; int rear; }SqQueue; int InitQueue(SqQueue &Q){ Q.base=(int *)malloc(MAXSIZE*sizeof(int)); if(!Q.base) exit(-2); Q.front=Q.rear=0; return 1;} int DestroyQueue(SqQueue &Q){//销毁队列 free(Q.base); return 1;} int QueueEmpty(SqQueue Q){//判断队空 return (Q.front-Q.rear)%100==0 ? 1: 0;} int Getfront(SqQueue Q ,int &front){//读取队头元素 if(QueueEmpty(Q)) exit(0); front=Q.base[Q.front];

实验优化设计考试答案

第一题 考察温度对烧碱产品得率的影响,选了四种不同温度进行试验,在同一温度下进行了5次试验(三数据见下表)。希望在显着性水平为。 1.SSE的公式 2.SSA的公式 3.将表格粘贴进Excel,然后进行数据分析,勾选标于第一行,显示在下面 P=,远小于,所以是显着的 “方差分析” “响应C1C2C3C4” “选单因素未重叠” 4.打开Minitab,复制表格, “统计” 点击“比较”勾选第一个,确定 结果:工作表3 单因子方差分析:60度,65度,70度,75度 来源自由度SSMSFP 因子误差合计 S==%R-Sq(调整)=% 平均值(基于合并标准差)的单组95%置信区间 水平N平均值标准差------+---------+---------+---------+--- 60度度度度合并标准差= Tukey95%同时置信区间 所有配对比较 单组置信水平=% 60度减自: 下限中心上限------+---------+---------+---------+--- 65度度度度减自: 下限中心上限------+---------+---------+---------+--- 70度度度减自: 下限中心上限------+---------+---------+---------+--- 75度获得结果,区间相交包含的不明显,反之明显 第二题 为研究线路板焊点拉拔力与烘烤温度、烘烤时间和焊剂量之间关系。从生产过程中收集20批数据,见下表: 1.将表格粘贴进Minitab,然后“统计”“回归”“回归”“响应,变量”“图形,四 合一” 2.P小于,显着 4.残差分析 第三题 钢片在镀锌前需要用酸洗方法除锈, 为提高除锈效率,缩短酸洗时间,需 要寻找好的工艺参数。现在试验中考 察如下因子与水平:

西安交大结构优化设计实验报告

结构优化设计实验报告 1.实验背景 结构优化能在保证安全使用的前提下保证工程结构减重,提高工程的经济效益,这也是课程练习的有效补充。 2.实验课题 问题1:考察最速下降法、拟牛顿法(DFP,BFGS)、单纯形法的性能,使用matlab中的fminunc 和fminsearch 函数。 ●目标函数1: 目标函数,多元二次函数 其中,,,, 初值 ●目标函数2 1.3 结果分析:从上述结果可以看出牛顿法具有较好的稳定性,最速下降法和单纯形法在求解超越函数时稳定性不佳,最速下降法迭代次数最少,单纯形法

迭代次数最多。 问题2:使用matlab中的linprog和quadprog函数验证作业的正确性。 用单纯形法求解线性规划问题的最优解 ●目标函数1 6 , 运行结果: 单纯形法的解析解 用两相法求解线性规划问题的最优解 ●目标函数2 , 运行结果: 单纯形法的解析解 求解二次规划问题的最优解 ●目标函数2 , , 运行结果:

问题3:用Matlab命令函数fmincon求解非线性约束规划问题 ●目标函数1 运行结果: 迭代次数:8 ●目标函数2 运行结果: 迭代次数:16 问题4:用Matlab命令函数fmincon求解人字形钢管架优化问题。已知:2F = 600kN,2B = 6 m,T=5 mm,钢管材料E = 210 GPa,密度=, 许用应力[ ]=160MPa,根据工艺要求2m ≤ h≤6m ,20mm ≤ D≤300mm 。求h , D 使总重量W为最小。

求 目标函数1 运行结果:

迭代次数:8 问题5:修改满应力程序opt4_1.m 和齿形法程序opt4_2.m ,自行设计一个超静定桁架结构,并对其进行优化。要求: (1)设计变量数目不小于2; (2)给出应力的解析表达式; (3)建立以重量最小为目标函数、应力为约束的优化模型。 分别用满应立法和齿轮法求解图2超静定结构,已知材料完全相同, , , 2000,1500==σσ , 满应力法和齿轮法运行结果:

静态存储器扩展实验报告

静态存储器扩展实验报告告圳大学实验报深

微机原理与接口技术 课程名称: 静态存储器扩展实验实验项目名称: 信息工程学院学院: 专业:电子信息工程

指导教师:周建华 32012130334 学号:班级:电子洪燕报告人:班 2014/5/21 实验时间: 实验报告提交时间:2014/5/26 教务部制. 一.实验目的与要求: 1. 了解存储器扩展的方法和存储器的读/写。 2. 掌握CPU对16位存储器的访问方法。

二.实验设备 PC机一台,TD-PITE实验装置或TD-PITC实验装置一套,示波器一台。 三.实验原理VCC28A141WE27A122A1326A73A8254A6存储器是用来存储信息的A924A55A1123A46OE22A3762256A10218A2CS209A1部件,是计算机的重要组成部D719A010D618D011D517D112D416D213D315GND14管组成的是由MOS分,静态RAM触发器电路,每个触发器可以存放1位

信息。只要不掉电,所储存的信息就不会丢失。因此,静态RAM工作稳定,不要外加刷新电路,使用方便。 但一般SRAM 的每一个触发器是由6个晶体管组成,SRAM 芯片的集成度不会太高,目前较常用的有6116(2K×8位),图4.1 62256引脚图6268位)622532位。本验平台上选. 用的是62256,两片组成32K×16位的形式,共64K字节。 62256的外部引脚图如图4.1所示。 本系统采用准32位CPU,具有16位外部

数据总线,即D0、D1、…、D15,地址总线为BHE#(#表示该信号低电平有效)、BLE #、A1、A2、…、A20。存储器分为奇体和偶体,分别由字节允许线BHE#和BLE#选通。 存储器中,从偶地址开始存放的字称为规则字,从奇地址开始存放的字称为非规则字。处理器访问规则字只需要一个时钟周期,BHE#和BLE#同时有效,从而同时选通存储器奇体和偶体。处理器访问非规则字却需要

试验优化设计与分析(教材)

试验优化设计与分析(教材) 成果总结 成果完成人:任露泉,丛茜,杨印生,李建桥,佟金成果完成单位:吉林大学 推荐等级建议:二等奖

1.立项背景 在现代社会实现过程和目标的最优化,已成为解决科学研究、工程设计、生产管理以及其他方面实际问题的一项重要原则。试验优化技术因其具有设计灵活、计算简便、试验次数少、优化成果多、可靠性高、适用面广等特点,已成为现代设计方法中一个先进的设计方法,成为发达国家企业界人士、工程技术人员、研究人员和管理人员的必备技术,它对于创造利润和提高生产率起着巨大的作用。因此在我国为了赶超世界先进水平,促进科研、生产和管理事业的发展,编著相关教材,大力推广与应用试验优化技术,不仅具有普遍的实际意义,也具有一定的迫切性。 20世纪80年代初,鉴于国民经济建设实践和科学技术研究中对试验优化技术的广泛需求,为推动教学改革、提高教学质量,任露泉教授对试验优化理论与技术进行了深入系统研究,为本科生开设了“试验设计”课程,为研究生开设了“试验优化技术”课程,并于1987年由机械工业出版社出版了教材《试验优化技术》,产生了很高的学术与技术影响。 2001年任露泉教授在《试验优化技术》一书的基础上编著了《试验优化设计与分析》教材,由吉林科技出版社出版发行。该教材是对1987年出版的《试验优化技术》的修改、补充和发展。作者根据对试验优化的教学和科研应用的多年实践与体会,为适应读者学习与使用的实际需要,调整修改了原书中的部分内容和一些方法的设计程式;补充了一些试验优化设计的新方法、新技术;增添了试验优化的一些最新应用实例;并增加了试验优化分析一篇。 本教材2001年获吉林省长白山优秀图书一等奖,2002年被遴选为教育部全国研究生教学用书,再次出版发行,2004年获吉林省教学成果一等奖。 2.教材内容 本教材万字,共分三篇二十一章。第一篇试验设计,除正交设计、干扰控制设计与数据处理等常用技术外,还介绍SN比设计、均匀设计、广义设计、调优运算及稳健设计等正交试验设计技术的拓广应用和现代发展的最新方法;第二篇回归设计,除各种回归的正交设计、旋转设计、饱和设计、多项式设计、还介绍多次变换设计、交互作用搜索设计、混料设计以及D-最优设计等回归设计技术的进一步完善与最新应用技术;在第三篇试验优化技术分析中,介绍了试验数据处理过程中经常遇到的难题及其解决办法,数据分析的最新研究成果及其应用实例。例如:有偏估计、PPR分析、探索性数据分析等;此外还介绍了试验优化的常用统计软件。 3.教材特点

优化设计报告

优化设计实验报告

无约束非线性规划问题 ) sin(1)(min 2 2 35x e x x x x f x -+-++= fun='(x^5+x^3+x^2-1)/(exp(x^2)+sin(-x))'; ezplot(fun,[-2,2]); [xopt,fopt,exitflag,output]=fminbnd(fun,-2,2) 输出: xopt = 0.2176 fopt = -1.1312 exitflag = 1 output = iterations: 12 funcCount: 13 algorithm: 'golden section search, parabolic interpolation' message: [1x112 char]

二维无约束非线性函数最优解 )12424()(min 2212 2211++++=x x x x x e X f x fun='exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1)'; x0=[0,0]; options=optimset('largescale','off','display','iter','tolx',1e-8,'tolfun',1e-8); [x,fval,exitflag,output,grad,hessian]=fminunc(fun,x0,options) f='exp(x)*(4*x^2+2*y^2+4*x*y+2*y+1)'; ezmesh(f); First-order Iteration Func-count f(x) Step-size optimality 0 3 1 2 1 9 0.717044 0.125092 1.05 2 15 0.073904 10 1.28 3 21 0.000428524 0.430857 0.0746 4 24 0.000144084 1 0.0435 5 27 1.95236e-008 1 0.000487 6 30 6.63092e-010 1 9.82e-005 7 33 1.46436e-015 1 4.91e-008 Local minimum possible. fminunc stopped because it cannot decrease the objective function along the current search direction. Computing finite-difference Hessian using user-supplied objective function. x = 0.5000 -1.0000 fval = 1.4644e-015 exitflag = 5 output =

静态存储器-实验报告

计算机科学与技术系 实验报告 专业名称计算机科学与技术 课程名称计算机组成与结构 项目名称静态随机存储器实验 班级 学号 姓名 同组人员无 实验日期 2015-10-24

一、实验目的与要求 掌握静态随机存储器RAM 工作特性及数据的读写方法 二、实验逻辑原理图与分析 2.1 实验逻辑原理图及分析 实验所用的静态存储器由一片6116(2K ×8bit)构成(位于MEM 单元),如下 图所示。6116有三个控制线:CS(片选线)、OE(读线)、WE(写线),当片选有效(CS=0)时,OE=0时进行读操作,WE=0时进行写操作,本实验将CS 常接地线。 由于存储器(MEM)最终是要挂接到CPU 上,所以其还需要一个读写控制逻辑,使得CPU 能控制MEM 的读写,实验中的读写控制逻辑如下图所示,由于T3的参与,可以保证MEM 的写脉宽与T3一致,T3由时序单元的TS3给出。IOM 用来选择是对I/O 还是对MEM 进行读写操作,RD=1时为读,WR=1时为写。 XMRD XIOR XIOW XMWR RD IOM WE T3 读写控制逻辑 实验原理图如下如所示,存储器数据线接至数据总线,数据总线上接有8 个LED 灯显示D7…D0的内容。地址线接至地址总线,地址总线上接有8个LED 灯显示A7…A0的内容,地址由地址锁存器(74LS273,位于PC&AR 单元)给出。数据开关(位于IN 单元)经一个三态门(74LS245)连至数据总线,分时给出地址和数据。地址寄存器为8位,接入6116的地址A7…A0,6116的高三位地址A10…A8接地,所以其实际容量为256字节。

火车调度问题PROJECT

Project1 火车车厢重排调度 年级:2014级 学院:电子与信息工程学院 班级:智能科学与技术、自动化姓名:王金顶 14350046 姓名:王帆 14350045 姓名:张宇航 14350069

【题目要求】 1.问题: 一列火车要将n节车厢分别送往n个车站,车站按照n,n-1,…,1的编号次序经过车站。假设车厢的编号就是其目的地车站的编号。 2.要求: 给定一个任意的车厢排列次序。重新排列车厢,使其按照从1到n的次序排列。规定重排调度时车厢只能从入轨到缓冲铁轨,或者从缓冲铁轨到出轨。【数据结构与算法】 本程序将栈的空间设为25(可以通过全局常量maxstack直接修改),栈的最大数量设为100(可以直接修改)。可以处理任意少于100个任意次序车厢的火车重排调度问题。 流程图如图1:

图1 总流程图【测试数据、结果及分析】 实验1:顺序输入 车厢节数:10 车厢顺序:1 2 3 4 5 6 7 8 9 10 测试结果如图2。

图2 实验1测试结果 测试序列重排成功,使用0个栈,返回值正常,实验程序运行良好。 实验2:倒序输入 车厢节数:10 车厢顺序:10 9 8 7 6 5 4 3 2 1 测试结果如图3。 图3实验2测试结果 测试序列重排成功,使用1个栈,实验程序运行良好。 实验3:乱序输入

车厢节数:10 车厢顺序:3 2 4 5 7 8 9 6 1 10 测试结果如图4。 图4实验3测试结果 测试序列重排成功,使用7个栈,实验程序运行良好。 实验4:乱序输入 车厢节数:25 车厢顺序:25 2 6 4 5 3 7 23 9 19 11 12 16 14 15 13 17 18 10 22 21 20 8 24 1 测试结果如图5。

实验报告-优化设计

福建农林大学金山学院实验报告 系(教研室):信息与机电工程系专业:机械设计制造及其自动化年级:2008 实验课程:优化设计姓名:学号:实验室号:_1# 607 计算机号:实验时间:指导教师签字:成绩: 一、实验目的 通过实验教学加深学生对优化设计方法的理解,培养学生程序调试和出错处理的能力,提高学生应用优化设计方法和程序设计的能力。 本实验课程的基本要求: 1)熟悉VB集成开发环境的使用,掌握设计程序和调试程序的基本方法。 2)掌握一些重要优化算法,并具有较强的编程能力和解决实际优化问题的能力。 3)具有设计简单综合应用型程序的能力。 二、实验内容及进度安排 1、进退法2学时 2、黄金分割法2学时 3、基于最优步长的坐标轮换法2学时 4、鲍威尔法4学时 三、实验设备 微型计算机100台以上,并已安装Visual Basic 6.0。 四、实验要求 1. 设计程序总体编程结构,根据程序N-S图,设计编写出程序; 2. 完成程序调试,并进行实验结果分析; 3. 完成实验报告。 五、实验注意事项 1. 树立严肃认真、一丝不苟的工作精神,养成实验时的正确方法和良好习惯,维护国 家财产不受损失; 2. 严格遵守实验室的规章制度,注意保持实验室内整洁; 3. 上机过程中注意保存程序,以免数据丢失,结束后应存储到个人移动设备并关闭计 算机; 4. 认真做好上机前的准备工作,实验后认真完成实验报告。 六、实验操作步骤及方法 (一).上机前的准备工作包括以下几个方面 1.复习和掌握与本次实验有关的教学内容。 2.根据实验的内容,对问题进行认真的分析,搞清楚要解决的问题是什么?给定的条件 是什么?要求的结果是什么?需要使用什么类型的数据(如整型、实型、双精度型、字符型等)?制定好程序总体编程结构。 3.根据程序N-S图,设计、编写出程序,在纸上编写好相关功能的事件代码。

编译原理实验报告

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

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

存储器管理实验报告.docx

操作系统实验报告 存储器管理 学院电信学院 专业计算机科学与技术 班级 14级计科一班 实验题目动态分区分配 实验组别第三组 指导老师曹华

一、实验目的 了解动态分区分配方式中使用的数据结构和分配算法,并进一步加深对动态分区存储管理方式及其实现过程的理解。 二、实验内容 用C语言分别实现采用首次适应算法和最佳适应算法的动态分区分配过程alloc()和回收过程free()。其中,空闲分区通过分区链来管理,在进行内存分配时,系统优先使用空闲区低端的空间。 请分别用首次适应算法和最佳适应算法进行内存块的分配和回收,要求每次分配和回收后显示出空闲内存分区链的情况。 三、实验主要仪器设备 软件环境:VC++6编程环境 四、实验原理及设计方案 1.实验原理: 可变分区调度算法有:最先适应分配算法,循环首次适应算法,最佳适应算法,最坏适应算法。 首次适应算法(First-fit):当要分配内存空间时,就查表,在各空闲区中查找满足大小要求的可用块。只要找到第一个足以满足要求的空闲块就停止查找,并把它分配出去; 如果该空闲空间与所需空间大小一样,则从空闲表中取消该项;如果还有剩余,则余下的部分仍留在空闲表中,但应修改区分大小和分区始址。 用户提出内存空间的申请:系统根据申请者的要求,按照一定的分配策略分析内存空间的使用情况,找出能满足请求的空闲区,分给申请者;当程序执行完毕或主动归还内存资源时,系统要收回它所占用的内存空间或它归还的部分内存空间。 最佳适应算法(Best-fit):当要分配内存空间时,就查找空闲表中满足要求的空闲块,并使得剩余块是最小的。然后把它分配出去,若大小恰好合适,则直按分配;若有剩余块,则仍保留该余下的空闲分区,并修改分区大小的起始地址。 内存回收:将释放作业所在内存块的状态改为空闲状态,删除其作业名,设置为空,并判断该空闲块是否与其他空闲块相连,若释放的内存空间与空闲块相连时,则合并为同一个空闲块,同时修改分区大小及起始地址。 每当一个进程被创建时,内存分配程序首先要查找空闲内存分区链,从中寻找一个合适的空闲块进行划分,并修改空闲内存分区链,系统根据回收区的首址,从空闲区链中找到相应的插入点,此时出现如下四种情况: (1)回收区与插入点的前一个空闲区F1相邻接,此时可将回收区直接与F1合并,并修改F1的大小; (2)回收区与插入点的后一个空闲分区F2相邻接,此时可将回收区直接与F2合并,并用回收区的首址作为新空闲区的首址,大小为二者之和; (3)回收区同时与插入点的前后两个空闲分区邻接,此时需将三者合并; (4)回收区不与任何一个空闲区邻接,此时应建一新的表项 2.主要数据结构的说明 定义一个空闲区说明表结构

火车车厢重排问题,队列,c语言

计算机科学与工程学院 《算法与数据结构》试验报告[一] 专业班级10级计算机工程02 试验地点计算机大楼计工教研室学生学号1005080222 指导教师蔡琼 学生姓名肖宇博试验时间2012-4-21 试验项目算法与数据结构 试验类别基础性()设计性()综合性(√)其它()试 验目的及要求(1)掌握队列的特点及其存储方法;(2)掌握队列的常见算法和程序实现。 成 绩评定表 类别评分标准分值得分合计 上机表现积极出勤、遵守纪律 主动完成设计任务 30分 程序与报告程序代码规范、功能正确 报告详实完整、体现收获 70分 备注: 评阅教师: 日期:年月日

出 轨 入 轨 581 H 1 H 3 H 2 963 742 出 轨 入 轨 58 H 1 H 3 H 2 96 7 4321 出 轨 入 轨 5 H 1 H 3 H 2 96 87 54321 出 轨 入 轨 H 1 H 3 H 2 987654321 (a) 将369、247依次入缓冲轨 (b) 将1移至出轨,234移至 出轨 (c) 将8入缓冲轨,5移至出轨 (d) 将6789移至出轨 试 验 内 容 一、实验目的和要求 1、实验目的: (1)掌握队列的特点及其存储方法; (2)掌握队列的常见算法和程序实现。 2、实验内容: 火车车厢重排问题。 转轨站示意图如下: 火车车厢重排算法伪代码如下: 出 轨 入 轨 581742963 987654321 H 1 H 3 H 2

1. 分别对k个队列初始化; 2. 初始化下一个要输出的车厢编号nowOut = 1; 3. 依次取入轨中的每一个车厢的编号; 3.1 如果入轨中的车厢编号等于nowOut,则 3.1.1 输出该车厢; 3.1.2 nowOut++; 3.2 否则,考察每一个缓冲轨队列 for (j=1; j<=k; j++) 3.2.1 取队列j 的队头元素c; 3.2.2 如果c=nowOut,则 3.2.2.1 将队列j 的队头元素出队并输出; 3.2.2.2 nowOut++; 3.3 如果入轨和缓冲轨的队头元素没有编号为nowOut的车厢,则 3.3.1 求小于入轨中第一个车厢编号的最大队尾元素所在队列编号j; 3.3.2 如果j 存在,则把入轨中的第一个车厢移至缓冲轨j; 3.3.2 如果j 不存在,但有多于一个空缓冲轨,则把入轨中的第一个车厢移至一个 空缓冲轨;否则车厢无法重排,算法结束; 3、实验要求: 使用顺序存储队列的方式完成该实验。 二、设计分析 根据实验要求,采用队列来完成本次实验。 实验中定义了三个队列,一个用来存储输入的车厢号,另两个用来存储缓存出队顺序及序号。 三、源程序代码 #include #include #define Max 20 typedef struct { int data[Max]; int front,rear; }squeue; void initqueue(squeue *&q) { q=(squeue *)malloc(sizeof(squeue)); q->front=q->rear=0; }

实验优化设计考试答案精选文档

实验优化设计考试答案 精选文档 TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-

第一题 考察温度对烧碱产品得率的影响,选了四种不同温度进行试验,在同一温度下进行了5次试验(三数据见下表)。希望在显着性水平为。 1.SSE的公式 2.SSA的公式 3.将表格粘贴进Excel,然后进行数据分析,勾选标于第一行,显示在下面 P=,远小于,所以是显着 的 4.打开Minitab,复制表 格,“统计”“方差分 析”“选单因素未重 叠”“响应 C1C2C3C4” 点击“比较”勾选第一 个,确定 结果: 工作表 3 单因子方差分析: 60度, 65度, 70度, 75度 来源自由度 SS MS F P 因子 3

误差 16 合计 19 S = R-Sq = % R-Sq(调整) = % 平均值(基于合并标准差)的单组 95% 置信区间水平 N 平均值标准差 ------+---------+---------+---------+--- 60度 5 (------*------) 65度 5 (------*------) 70度 5 (------*------) 75度 5 (------*------) ------+---------+---------+---------+--- 合并标准差 = Tukey 95% 同时置信区间 所有配对比较 单组置信水平 = % 60度减自: 下限中心上限 ------+---------+---------+---------+--- 65度 (------*------) 70度 (------*-----) 75度 (------*------) ------+---------+---------+---------+--- 65度减自: 下限中心上限 ------+---------+---------+---------+--- 70度 (------*-----) 75度 (------*------) ------+---------+---------+---------+--- 70度减自:

优化设计实验指导书(完整版)

优化设计实验指导书 潍坊学院机电工程学院 2008年10月 目录

实验一黄金分割法 (2) 实验二二次插值法 (5) 实验三 Powell法 (8) 实验四复合形法 (12) 实验五惩罚函数法 (19)

实验一黄金分割法 一、实验目的 1、加深对黄金分割法的基本理论和算法框图及步骤的理解。 2、培养学生独立编制、调试黄金分割法C语言程序的能力。 3、掌握常用优化方法程序的使用方法。 4、培养学生灵活运用优化设计方法解决工程实际问题的能力。 二、实验内容 1、编制调试黄金分割法C语言程序。 2、利用调试好的C语言程序进行实例计算。 3、根据实验结果写实验报告 三、实验设备及工作原理 1、设备简介 装有Windows系统及C语言系统程序的微型计算机,每人一台。 2、黄金分割法(0.618法)原理 0.618法适用于区间上任何单峰函数求极小点的问题。对函数除“单峰”外不作 其它要求,甚至可以不连续。因此此法适用面相当广。 0.618法采用了区间消去法的基本原理,在搜索区间内适当插入两点和,它们把 分为三段,通过比较和点处的函数值,就可以消去最左段或最右段,即完成一次迭代。 然后再在保留下来的区间上作同样处理,反复迭代,可将极小点所在区间无限缩小。 现在的问题是:在每次迭代中如何设置插入点的位置,才能保证简捷而迅速地找到极小点。 在0.618法中,每次迭代后留下区间内包含一个插入点,该点函数值已计算过,因此以后的每次迭代只需插入一个新点,计算出新点的函数值就可以进行比较。 设初始区间[a,b]的长为L。为了迅速缩短区间,应考虑下述两个原则:(1)等比收缩原理——使区间每一项的缩小率不变,用表示(0<λ<1)。 (2)对称原理——使两插入点x1和x2,在[a,b]中位置对称,即消去任何一边区间[a,x1]或[x2,b],都剩下等长区间。 即有 ax1=x2b 如图4-7所示,这里用ax1表示区间的长,余类同。若第一次收缩,如消去[x2,b]区间,则有:λ=(ax2)/(ab)=λL/L 若第二次收缩,插入新点x3,如消去区间[x1,x2],则有λ=(ax1)/(ax2)=(1-λ)L/λL

计算机组成原理存储器读写和总线控制实验实验报告

信息与管理科学学院计算机科学与技术 实验报告 课程名称:计算机组成原理 实验名称:存储器读写和总线控制实验 姓名:班级:指导教师:学号: 实验室:组成原理实验室 日期: 2013-11-22

一、实验目的 1、掌握半导体静态随机存储器RAM的特性和使用方法。 2、掌握地址和数据在计算机总线的传送关系。 3、了解运算器和存储器如何协同工作。 二、实验环境 EL-JY-II型计算机组成原理实验系统一套,排线若干。 三、实验内容 学习静态RAM的存储方式,往RAM的任意地址里存放数据,然后读出并检查结果是否正确。 四、实验操作过程 开关控制操作方式实验 注:为了避免总线冲突,首先将控制开关电路的所有开关拨到输出高电平“1”状态,所有对应的指示灯亮。 本实验中所有控制开关拨动,相应指示灯亮代表高电平“1”,指示灯灭代表低电平“0”。连线时应注意:对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。 1、按图3-1接线图接线: 图3-1 实验三开关实验接线 2、拨动清零开关CLR,使其指示灯显示状态为亮—灭—亮。 3、往存储器写数据:

以往存储器的(FF ) 地址单元写入数据“AABB ”为例,操作过程如下: 4、按上述步骤按表3-2所列地址写入相应的数据 表3-2 5、从存储器里读数据: 以从存储器的(FF ) 地址单元读出数据“AABB ”为例,操作过程如下: (操作) (显示) (操作) (显示) (操作) (显6、按上述步骤读出表3-2数据,验证其正确性。 五、实验结果及结论 通过按照实验的要求以及具体步骤,对数据进行了严格的检验,结果是正确的,具体数据如图所示:

优化设计实验报告(...)(1)

机械优化设计 实 验 报 告 姓名:欧阳龙 学号:2007500817 班级:07机设一班

一、黄金分割法 1、 数学模型 2()2f x x x =+,56x -≤≤ 2、 黄金分割法简介 黄金分割法适用于单谷函数求极小值问题,且函数可以不连续。黄金分割法是建立在区间消去法原理基础上的试探方法,即在搜索区间[],a b 内适当插入两点1α、2α,并计算其函数值。1α、2α将区间分成三段。应用函数的单谷性质,通过函数值大小的比较,删去其中一段,使搜索区间得以缩短。然后再在保留下来的区间上作同样的处置,如此迭代下去,使搜索区间无限缩小,从而得到极小点的数值近似解。黄金分割法能使相邻两次都具有相同的缩短率0.618,故黄金分割法又称作0.618法。 3、黄金分割法程序清单 #include #include /*目标函数*/ float ff(float x) { float y; y=x*x+2*x; return(y); } main() { float a,b,ab,Epsilon; float y1,y2,Alpha1,Alpha2; float Lambda=0.618; printf("please input the arear and Epsilon\n"); scanf("%f,%f,%f",&a,&b,&Epsilon); Alpha1=b-Lambda*(b-a),Alpha2=a+Lambda*(b-a); printf("%f,%f\n",Alpha1,Alpha2); y1=ff(Alpha1);y2=ff(Alpha2); printf("y1=%f,y2=%f\n",y1,y2); do {if(y1>=y2) {a=Alpha1; Alpha1=Alpha2; y1=y2; Alpha2=a+Lambda*(b-a); y2=Alpha2*Alpha2+2*Alpha2; }

迷宫问题 火车车厢重排问题 实验报告

实验报告 实验名称:数据结构实验二 实验名称:栈和队列 时间: 班级:000 学号:000 姓名:神刀公子 一、问题描述 (1)迷宫问题 ①问题描述 这是心理学中的一个经典问题。心理学家把一只老鼠从一个无顶盖的大盒子的入口处放入,让老鼠自行找到出口出来。迷宫中设置很多障碍阻止老鼠前行,迷宫唯一的出口处放有一块奶酪,吸引老鼠找到出口。 简而言之,迷宫问题是解决从布置了许多障碍的通道中寻找出路的问题。本题设置的迷宫如图1所示。 入口 出口 图1 迷宫示意图 迷宫四周设为墙;无填充处,为可通处。设每个点有四个可通方向,分别为东、南、西、北。左上角为入口。右下角为出口。迷宫有一个入口,一个出口。设计程序求解迷宫的一条通路。 ②基本要求 ●设计迷宫的存储结构。 ●设计通路的存储结构。 ●设计求解通路的算法。 ●设计迷宫显示和通路的显示方式。 ●输入:迷宫、入口及出口可在程序中设定,也可从键盘输入。 ●输出:迷宫、入口、出口及通路路径。 ③思考 ●若每个点有8个试探方向(东、东南、南、西南、西、西北、北、东北), 如何修改程序? ●如何求得所有通路? ●如何求得最短通路? (2)火车车厢重排问题 ①问题描述 一列货运列车共有n节车厢,每节车厢将停放在不同的车站。假定n个车站的编号分别为1~n,即货运列车按照第n站至第1站的次序经过这些车站。为

了便于从列车上卸掉相应的车厢,车厢的编号应与车站的编号相同,这样,在每个车站只要卸掉最后一节车厢。所以,给定任意次序的车厢,必须重新排列它们。 车厢的重排工作可以通过转轨站完成。在转轨站中有一个入轨、一个出轨和k个缓冲轨,缓冲轨位于入轨和出轨之间。假定缓冲轨按先进先出的方式运作,设计算法解决火车车厢重排问题。 ②基本要求 ●设计存储结构表示n个车厢、k个缓冲轨以及入轨和出轨; ●设计并实现车厢重排算法; ●分析算法的时间性能。 ③思考 ●如果缓冲轨按后进先出的方式工作,即用栈表示缓冲轨,应如何解决火 车车厢重排问题? 二、数据结构设计 迷宫问题和火车重排问题可以通过栈与队列实现的。迷宫的进出和车厢的出入轨和缓冲轨主要是对栈与队列的判断和操作。 int empty( STLink top[],int n) /*判断是否为空*/ { return (top[n]==NULL); } int push(STLink top[],int A,int m) /*入栈*/ { STLink p; if(!(p=(STLink)malloc(LEN))) return 0; else { p->data=A; p->link=top[m]; top[m]=p; return 1; } } int pop(STLink top[],int m) /*出栈*/ { int A; STLink p;

机械优化设计一维搜索实验报告

《机械优化设计》 实验报告 班级: 机械设计(2)班 姓名:邓传淮 学号:0901102008

1 实验名称:一维搜索黄金分割法求最佳步长 2 实验目的:通过上机编程,理解一维搜索黄金分割法的原理,了解计算机在优化设计中的应用。 3 黄金分割法的基本原理 黄金分割法是用于一元函数f(x)在给定初始区间[a,b]内搜索极小点α*的一种方法。它是优化计算中的经典算法,以算法简单、收敛速度均匀、效果较好而著称,是许多优化算法的基础,但它只适用于一维区间上的凸函数[6],即只在单峰区间内才能进行一维寻优,其收敛效率较低。其基本原理是:依照“去劣存优”原则、对称原则、以及等比收缩原则来逐步缩小搜索区间[7]。具体步骤是:在区间[a,b]内取点:a1 ,a2 把[a,b]分为三段。如果f(a1)>f(a2),令a=a1,a1=a2,a2=a+r*(b-a);如果f(a1)

4实验所编程序框图(1)进退发确定单峰区间的计算框图

(2)黄金分割法计算框图

5 程序源代码 (1)进退发确定单峰区间的程序源代码 #include #include #define f(x) pow(x,4)-3*pow(x,3)-5*pow(x,2)-14*x+46 main() { int k; double x,h,x1,x2,x3; double f1,f2,f3,f; double a,b; x1=0; h=1; x2=x1+h; f1=f(x1); f2=f(x2); if (f1>f2) { h=2*h; x3=x2+h; f3=f(x3);

虚拟存储器管理实验报告

淮海工学院计算机科学系实验报告书 课程名:《操作系统》 题目:虚拟存储器管理 页面置换算法模拟实验 班级: 学号: 姓名:

一、实验目的与要求 1.目的: 请求页式虚存管理是常用的虚拟存储管理方案之一。通过请求页式虚存管理中对页面置换算法的模拟,有助于理解虚拟存储技术的特点,并加深对请求页式虚存管理的页面调度算法的理解。 2.要求: 本实验要求使用C语言编程模拟一个拥有若干个虚页的进程在给定的若干个实页中运行、并在缺页中断发生时分别使用FIFO和LRU算法进行页面置换的情形。其中虚页的个数可以事先给定(例如10个),对这些虚页访问的页地址流(其长度可以事先给定,例如20次虚页访问)可以由程序随机产生,也可以事先保存在文件中。要求程序运行时屏幕能显示出置换过程中的状态信息并输出访问结束时的页面命中率。程序应允许通过为该进程分配不同的实页数,来比较两种置换算法的稳定性。 二、实验说明 1.设计中虚页和实页的表示 本设计利用C语言的结构体来描述虚页和实页的结构。 在虚页结构中,pn代表虚页号,因为共10个虚页,所以pn的取值范围是0—9。pfn代表实页号,当一虚页未装入实页时,此项值为-1;当该虚页已装入某一实页时,此项值为所装入的实页的实页号pfn。time项在FIFO算法中不使用,在LRU中用来存放对该虚页的最近访问时间。 在实页结构中中,pn代表虚页号,表示pn所代表的虚页目前正放在此实页中。pfn代表实页号,取值范围(0—n-1)由动态指派的实页数n所决定。next是一个指向实页结构体的指针,用于多个实页以链表形式组织起来,关于实页链表的组织详见下面第4点。 2.关于缺页次数的统计 为计算命中率,需要统计在20次的虚页访问中命中的次数。为此,程序应设置一个计数器count,来统计虚页命中发生的次数。每当所访问的虚页的pfn项值不为-1,表示此虚页已被装入某实页内, 此虚页被命中,count加1。最终命中率=count/20*100%。 3.LRU算法中“最近最久未用”页面的确定 为了能找到“最近最久未用”的虚页面,程序中可引入一个时间计数器countime,每当要访问 一个虚页面时,countime的值加1,然后将所要访问的虚页的time项值设置为增值后的当前

相关文档
最新文档