当前位置:文档之家› 华南理工大学实验报告模板

华南理工大学实验报告模板

华南理工大学实验报告模板
华南理工大学实验报告模板

实验报告

课程名称:计算机组成与体系结构

学生姓名:张璐鹏

学生学号:201692450550

学生专业:网络工程

开课学期:

2017年10月

实验一运算器组成实验

地点:楼房;实验台号:实验日期与时间:评分:预习检查纪录:实验教师:

一、实验目的

1.熟悉双端口通用寄存器堆的读写操作。

2.熟悉简单运算器的数据传送通路。

3.验证运算器74LS181的算术逻辑功能。

4.按给定数据,完成指定的算术、逻辑运算。

二、实验电路

S3

S2

S1

S0

M

图3.1 运算器实验电路

图3.1示出了本实验所用的运算器数据通路图。参与运算的数据首先通过实验台操作板上的八个二进制数据开关SW7-SW0来设置,然后输入到双端口通用寄存器堆RF中。

RF(U54)由一个ispLSI1016实现,功能上相当于四个8位通用寄存器,用于保存参与运算的数据,运算后的结果也要送到RF中保存。双端口寄存器堆模块的控制信号中,RS1、RS0用于选择从B端口(右端口)读出的通用寄存器,RD1、RD0用于选择从A端口(左端口)读出的通用寄存器。而WR1、WR0用于选择写入的通用寄存器。LDRi是写入控制信号,当LDRi=1时,数据总线DBUS上的数据在T3写入由WR1、WR0指定的通用寄存器。RF的A、B端口分别与操作数暂存器DR1、DR2相连;另外,RF的B端口通过一个三态门连接到数据总线DBUS上,因而RF中的数据可以直接通过B端口送到DBUS上。

DR1(U47)和DR2(U48)各由1片74LS273构成,用于暂存参与运算的数据。DR1接ALU 的A输入端口,DR2接ALU的B输入端口。ALU(U31、U35)由两片74LS181构成,ALU 的输出通过一个三态门(74LS244)发送到数据总线DBUS上。

实验台上的八个发光二极管DBUS7-DBUS0显示灯接在DBUS上,可以显示输入数据或运算结果。另有一个指示灯C显示运算器进位标志信号状态。

图中尾巴上带粗短线标记的信号都是控制信号,其中S3、S2、S1、S0、M、Cn#、LDDR1、LDDR2、ALU_BUS#、SW_BUS#、LDRi、RS1、RS0、RD1、RD0、WR1、WR0都是电位信号,在本次实验中用拨动开关K0—K15来模拟;T2、T3为时序脉冲信号,印制板上已连接到实验台的时序电路。实验中进行单拍操作,每次只产生一组T1、T2、T3、T4时序脉冲,需将实验台上的DP、DB开关进行正确设置。将DP开关置1,DB开关置0,每按一次QD 按钮,则顺序产生T1、T2、T3、T4一组单脉冲。

三、实验设备

1.TEC-5计算机组成实验系统1台

2.逻辑测试笔一支(在TEC-5实验台上)

3.双踪示波器一台(公用)

4.万用表一只(公用)

四、实验任务

1.按图3.1所示,将运算器模块与实验台操作板上的线路进行连接。由于运算器模块

内部的连线已由印制板连好,故接线任务仅仅是完成数据开关、控制信号模拟开

关、与运算器模块的外部连线。注意:为了建立清楚的整机概念,培养严谨的科

研能力,手工连线是绝对必要的。

2.用开关SW7—SW0向通用寄存器堆RF内的R0—R3寄存器置数。然后读出R0—

R3的内容,在数据总线DBUS上显示出来。(假定令R0=34H,R1=21H,R2=52H,

R3=65H)

3.验证ALU的正逻辑算术、逻辑运算功能。

令DR1=55H,DR2=0AAH,Cn#=1。在M=0和M=1两种情况下,令S3—S0的值从0000B变到1111B,列表表示出实验结果。实验结果包含进位C,进位C由指示灯显示。注意:进位C是运算器ALU最高位进位Cn+4#的反,即有进位为1,无进位为0。

五、实验要求

1.做好实验预习,掌握运算器的数据传输通路及其功能特性,并熟悉本实验中所用

的模拟开关的作用和使用方法。

2.写出实验报告,内容是:

(1)实验目的及实验预习(包括接线、步骤及每步开关设置)。

(2)按实验任务3的要求,列表表示出实验结果。

(3)按实验任务4的要求,在表中填写各控制信号模拟开关值,以及运算结果值。

六、实验预习和实验结果

1.任务2,将数字写入读出通用寄存器堆,步骤如下:

要改变WR0和WR1的值就可以写入操作)

首先将DP=1,DB=0;

(1)置K0(WR0)=0, K1(WR1)=0, K4(SW_BUS#)=0, K5(RS_BUS#)=1, K6(LDRi)=1, SW7-SW0=34H.在DBUS上将观察到DBUS=34H.按QD按钮,将34H写入R0.

(2)其余操作同上,只是改变K0(WR0)=1, K1(WR1)=0,SW7-SW0=21H.

(3)其余操作同上,只是改变K0(WR0)=0, K1(WR1)=1,SW7-SW0=52H.

(4)其余操作同上,只是改变K0(WR0)=1, K1(WR1)=1,SW7-SW0=65H.

3将数字从R0,R1,R2,R3中读出,并且在DBUS上显示出来。

(1)置K2(RS0)=0, K3(RS1)=0, K4(SW_BUS#)=1, K5(RS_BUS#)=0, K6(LDRi)=0.在DBUS上将观察到DBUS=34H.

(2)其余操作同上,只是改变K2(RS0)=1, K3(RS1)=0,在DBUS上将观察到DBUS=21H.

(3)其余操作同上,只是改变K2(RS0)=0, K3(RS1)=1,在DBUS上将观察到DBUS=52H.

(4)其余操作同上,只是改变K2(RS0)=1, K3(RS1)=1,在DBUS上将观察到DBUS=65H.

(2)实验任务3的实验步骤和实验结果如下:

1.置DP=1,DB=0,编程开关拨到正常位置。

数据通路的信号Cn#接VCC。

1.打开电源

以下2条是向R0写入55H,向R1写入0AAH。

2.置K0(WR0)=0,K1(WR1)=0,K6(LDRi)=1,K13(ALU_BUS#)=1,K14(SW_BUS#)=0。置SW7-SW0为55H,按QD按钮,将55H写入R0。3.置K0(WR0)=1,K1(WR1)=0,K6(LDRi)=1,K13(ALU_BUS#)=1,K14(SW_BUS#)=0。置SW7-SW0为0AAH,按QD按钮,将0AAH写入R1。

以下1条是将R0写入DR1,将R1写入DR2。

4.置K2(RD0)=0,K3(RD1)=0,K4(RS0)=1,K5(RS1)=0,K6(LDRi)=0,K7(LDDR1和LDDR2)=1。按QD按钮,将R0写入DR1,将R1写入DR2。这时DR1=55H,DR2=0AAH。

以下2条是M=H时进行逻辑运算。

5.置K6(LDRi)=1,K7(LDR1和LDR2)=0,K8(S0)=0,K9(S1)=0,K10(S2)=0,K11(S3)=0,K12(M)=1,K13(ALU_BUS#)=0,K14(SW_BUS#)=1。在数据总线DBUS 上观察到逻辑运算结果0AAH。按QD按钮,观察到进位C为0。

6.其他开关设置都不变,只改变K8(S0)、K9(S1)、K10(S2)、K11(S3)的设置,观察其他15种逻辑运算结果,并按QD按钮,观察进位C。

以下2条是M=L时进行算术运算。

7.置K6(LDRi)=1,K7(LDR1和LDR2)=1,K8(S0)=0,K9(S1)=0,K10(S2)=0,K11(S3)=0,K12(M)=0,K13(ALU_BUS#)=0,K14(SW_BUS#)=1。在数据总线DBUS 上观察到算术运算结果为55H。按QD按钮,观察到进位C为0。

8.其他开关设置都不变,只改变K8(S0)、K9(S1)、K10(S2)、K11(S3)的设置,观察其他15种算术运算结果,并按QD按钮,观察进位C。

实验结果如下:

齿轮范成实验报告-华南理工大学

齿轮范成原理实验报告 班 别 学 号 姓 名 一、齿条刀具的齿顶高和齿根高为什么都等于(**+c h a )m ? 答:两齿轮配合时,分度圆是相切的!一齿轮的齿顶圆和另一齿轮的齿跟圆之间是有间隙的!齿条刀具插齿时是模仿齿轮和齿条的啮合过程。因此,当齿条刀具的齿顶高和齿根高都等于(ha*+c*)m ,即,多出一了个c*m,以便切出传动时的顶隙部分! 二、用齿条刀具加工标准齿轮时,刀具和轮坯之间的相对位置和相对运动有何要求? 答:用齿条刀具加工标准齿轮时,刀具的分度线(齿厚等于齿槽宽的那条线)与轮坯齿轮分度圆相切,并且做纯滚动。 三、设定预加工齿轮的参数,附上模拟加工出来齿廓图,说明同一齿轮基本参数下,标准齿轮、正变位齿轮和负变位几何尺寸上有何不同? 答:在齿轮参数相同的情况下(齿数、模数、压力角),标准齿轮和变位齿轮的渐开线是相同的。其不同之处是,正变位齿轮取用了渐开线靠上的部分(远离基圆中心方向),渐开线更平直些;负变位齿轮取用了渐开线靠下的部分(靠近基圆中心方向),渐开线更弯曲些。负变位的齿轮看起来更瘦,正变位的齿轮看起来更胖。

四、模拟加工一个发生根切的齿轮,附上所描绘的齿廓图,用彩色笔描出齿廓曲线的根切段。

五、以四题中发生根切的齿轮为例,说明避免根切发生的措施,并模拟加工出来,附上齿轮加工后的齿廓图。 答:避免发生根切的措施 1、使被切齿轮的齿数多于不发生根切的最少齿数 2、减小齿顶高系数ha*或加大刀具角α 3、变位修正法 这里是因为设置了加工齿轮齿轮数为16而发生根切,根据计算,不发生根切的最小齿数为 17,其他参数不变,将齿轮齿数改为23,得到下图,齿轮不发生根切。

华工电信信号与系统实验报告二(杨萃老师)

实验报告(二) 姓名:陈耿涛 学号:201030271709 班级:信工五班 日期:2012年4月23号实验(二)周期信号傅里叶分析及其MATLAB实现 ———特征函数在LTI系统傅里叶分析中的应用 一、实验目的 1、掌握特征函数在系统响应分析中的作用 2、正确理解滤波的概念 二、实验内容 1、定义一个包含在区间0≤n≥10上的x[n]向量x2,并利用y2=filter(h,1,x2);计算在 这个区间内的卷积结果,利用stem([0:10],y2)画出这一结果,并确认与图2.2一致。 2、LTI系统的特征函数: 现考虑下列各输入信号: x1n=e j(π/4)n x2n=sin?(πn 8+π 16 ) x3n=(9/10)n x4n=n+1 当每个信号是由下面线性常系数差分方程: y[n]-0.25y[n-1]=x[n]+0.9x[n-1] (3.3) 描述的因果LTI的输入时,要计算输出y1[n]—y4[n]. (a)利用冒号(:)算符,创建一个包含在区间?20≤n≤100内时间序号的向量n,利用这个向量,定义x1,x2,x3和x4为包含这四个信号x1[n]—x4[n]在向量n 区间内的值。 (b)定义向量a和b用以表征由(3.3)式所表示的系统,用这两个向量和filter 计算当输入分别是x1—x4时,包含由(3.3)式表征的系统输出的向量y1,y2,y3和y4。对于每个输出,在区间0≤n≤100上画出适当标注的图。对于y1需要分别画出实部和虚部的图。将输入和输出的图作比较,指出哪些输入时这个LTI系统的特征函数。 (c)要确认哪些输入时特征函数,并计算对这些特征函数相应的特征值。利用向量H=y./x证明,它计算出在每个时间序号上输入和输出序列的比值。对每个输入/输出信号对计算H1—H2,并在区间0≤n≤100内画出适当标注的H图。 3、有下列信号: x1n=1,0≤n≤7

操作系统实验报告_实验五

实验五:管道通信 实验内容: 1.阅读以下程序: #include #include #include main() { int filedes[2]; char buffer[80]; if(pipe(filedes)<0) //建立管道,filedes[0]为管道里的读取端,filedes[1]则为管道的写入端 //成功则返回零,否则返回-1,错误原因存于errno中 err_quit(“pipe error”); if(fork()>0){ char s[ ] = “hello!\n”; close(filedes[0]); //关闭filedes[0]文件 write(filedes[1],s,sizeof(s)); //s所指的内存写入到filedes[1]文件内 close(filedes[1]); //关闭filedes[0]文件 }else{ close(filedes[1]); read(filedes[0],buffer,80); //把filedes[0]文件传送80个字节到buffer缓冲区内 printf(“%s”,buffer); close(filedes[0]); } } 编译并运行程序,分析程序执行过程和结果,注释程序主要语句。

2.阅读以下程序: #include #include #include main() { char buffer[80]; int fd; unlink(FIFO); //删除FIFO文件 mkfifo(FIFO,0666); //FIFO是管道名,0666是权限 if(fork()>0){ char s[ ] = “hello!\n”;

华南理工大学高频开关电源实验报告

四、实验记录及处理 1、设定输出电流,当负载变化时,测量输出的电压、电流如表1所示 表1 外特性数据记录 1 2 3 4 5 6 7 8 50A U/V 10.01 17.30 26.00 36.04 50.30 51.10 51.60 52.10 I/A 49.60 49.60 49.70 49.60 49.00 39.50 34.00 29.80 100A U/V 15.80 27.08 41.00 48.10 50.00 51.00 51.50 51.80 I/A 99.70 99.60 99.80 77.80 50.40 39.50 34.70 34.70 150A U/V 18.50 34.60 45.10 47.70 49.80 51.00 51.50 52.00 I/A 149.90 150.00 121.30 84.80 53.30 42.40 36.80 32.40 200A U/V 22.80 41.40 45.50 47.70 50.00 51.00 51.50 51.90 I/A 200.00 193.70 127.60 86.20 54.80 43.10 35.80 31.90 250A U/V 26.20 41.10 45.10 47.70 50.00 50.80 51.40 51.80 I/A 246.70 194.30 126.10 84.00 53.10 41.20 36.20 31.70 300A U/V 29.80 41.20 45.10 47.80 50.10 51.00 51.60 52.60 I/A 295.70 196.00 120.00 84.10 53.30 41.50 36.10 31.60 外特性曲线图如下: 图4 变极性TIG焊接电源外特性 曲线分析: 在输出功率P一定的情况下,由于P=I2 R,随着负载R的增加,输出电流I 只能下降,又因为P=UI,输出电压U上升,曲线无法继续保持恒流特性,这一特性在大电流输出时更加明显。

操作系统实验报告

《计算机操作系统》实验报告 教师: 学号: 姓名: 2012年3月6日 计算机学院

实验题目:请求页式存储管理(三) ----------------------------------------------------------------------------- 实验环境:VC6.0++ 实验目的:学生应独立地用高级语言编写几个常用的存储分配算法,并设计一个存储管理的模拟程序,对各种算法进行分析比较,评测其性能优劣,从而加深对这些算法的了解。实验内容: (1)编制和调试示例给出的请求页式存储管理程序,并使其投入运行。 (2)增加1~2种已学过的淘汰算法,计算它们的页面访问命中率。试用各种算法的命中率加以比较分析。(增加了FIFO) 操作过程: (1)产生随机数 (2)输入PageSize(页面大小1 /2/4/8 K) (pageno[i]=int(a[i]/1024)+1) (3)菜单选择

(4)OPT/ LRU/FIFO演示(pagesize=1K)

(5) 过程说明(PAGESIZE = 4K ) OPT :最佳置换算法(淘汰的页面是以后永不使用,或许是在最长时间内不再被访问的页面) //在Table 表中如果未找到,记录每个元素需要找的长度 //全部table 中元素找完长度,然后进行比较,找出最大的,进行淘汰 int max=0; int out; for(k=0;kmax){ max = table_time[k]; out = k; } }//找出最长时间,进行替换 table[out]=pageno[i]; page_out++;

华南理工大学信号与系统实验报告材料

Experiment Export Name: Student No: Institute:

Dec 26, 2011 Experiment Purposes 1. Be familiar with the software Environment and Programming flow in MATLAB5.3. 2. Learn how to draw the signal waveform and determine the signal properties. 3. Calculate the convolution, frequency response and system output by using the functions: conv, freqz, freqs and filter. Experiment Contents

实验项目一:MATLAB编程基础及典型实例 ①画出离散时间正弦信号并确定基波周期(注:pi 表示圆周率) 1 x1[n]=sin(pi*4/4)*cos(pi*n/4) 2 x2[n]=cos(pi*n/4)*cos(pi*n/4) 3 x3[n]=sin(pi*n/4)*cos(pi*n/8) program for matlab n=0:31; x1=sin(pi*n/4).*cos(pi*n/4); x2=cos(pi*n/4).*cos(pi*n/4); x3=sin(pi*n/4).*cos(pi*n/8); subplot(3,1,1); stem(n,x1); title('x1'); subplot(3,1,2); stem(n,x2); title('x2'); subplot(3,1,3); stem(n,x3); title('x3'); grid on;

编译原理实验报告

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

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

dsp数字信号处理实验报告华工

实验1 常见离散信号产生与实现 一、实验目得 1、加深对常用离散信号得理解; 2、熟悉使用MATLAB在时域中产生一些基本得离散时间信号。 二、实验原理 1、单位抽样序列 在MATLAB中可以利用函数实现。 2、单位阶越序列 在MATLAB中可以利用函数实现: 3、正弦序列 在MATLAB中实现过程如下:

4、复指数序列 在MATLAB中实现过程如下: 5、指数序列 在MATLAB中实现过程如下: 三、预习要求 1、预先阅读实验讲义(MATLAB基础介绍); 2、讨论正弦序列、复指数序列得性质。 A.绘出信号,当、时、、 时得信号实部与虚部图;当时呢?此时信号周期为多少?程序如下: titlez1=-1/12+j*pi/6; titlez2=1/12+j*pi/6; z3=1/12; z4=2+j*pi/6; z5=j*pi/6;

n=0:20; x1=exp(titlez1*n); x2=exp(titlez2*n); x3=exp(z3*n); x4=exp(z4*n); x5=exp(z5*n); subplot(5,2,1); stem(n,real(x1)); xlabel('n');ylabel('real(x1)'); title('z1=-1/12+j*pi/6时') subplot(5,2,2); stem(n,imag(x1)); xlabel('n');ylabel('imag(x1)'); title('z1=-1/12+j*pi/6时') subplot(5,2,3); stem(n,real(x2)); xlabel('n');ylabel('real(x2)'); title('z2=1/12+j*pi/6时') subplot(5,2,4); stem(n,imag(x2)); xlabel('n');ylabel('image(x2)'); title('z2=1/12+j*pi/6时') subplot(5,2,5); stem(n,real(x3)); xlabel('n');ylabel('real(x3)'); title('z3=1/12时') subplot(5,2,6); stem(n,imag(x3)); xlabel('n');ylabel('image(x3)'); title('z3=1/12时')

华南理工大学实验报告

华南理工大学实验报告集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)

实验报告课程名称:计算机组成与体系结构 学生姓名:张璐鹏 学生学号: 学生专业:网络工程 开课学期: 2017年10月

实验一运算器组成实验 地点:楼 房; 实验台号: 实验日期与时 间: 评分: 预习检查纪录:实验教师: 一、实验目的 1.熟悉双端口通用寄存器堆的读写操作。 2.熟悉简单运算器的数据传送通路。 3.验证运算器74LS181的算术逻辑功能。 4.按给定数据,完成指定的算术、逻辑运算。 二、实验电路 图3.1示出了本实验所用的运算器数据通路图。参与运算的数据首先通过实验台操作板上的八个二进制数据开关SW7-SW0来设置,然后输入到双端口通用寄存器堆RF中。 RF(U54)由一个ispLSI1016实现,功能上相当于四个8位通用寄存器,用于保存参与运算的数据,运算后的结果也要送到RF中保存。双端口寄存器堆模块的控制信号中,RS1、RS0用于选择从B端口(右端口)读出的通用寄存器,RD1、RD0用于选择从A端口(左端口)读出的通用寄存器。而WR1、WR0用于选择写入的通用寄存器。LDRi是写入控制信号,当LDRi=1时,数据总线DBUS上的数据在T3写入由WR1、WR0指定的通用寄存器。RF的A、B端口分别与操作数暂存器DR1、DR2相连;另

外,RF的B端口通过一个三态门连接到数据总线DBUS上,因而RF中的 数据可以直接通过B端口送到DBUS上。 DR1(U47)和DR2(U48)各由1片74LS273构成,用于暂存参与运算的数据。DR1接ALU的A输入端口,DR2接ALU的B输入端口。ALU(U31、U35)由两片74LS181构成,ALU的输出通过一个三态门(74LS244)发送到数 据总线DBUS上。 实验台上的八个发光二极管DBUS7-DBUS0显示灯接在DBUS上,可以 显示输入数据或运算结果。另有一个指示灯C显示运算器进位标志信号 状态。 图中尾巴上带粗短线标记的信号都是控制信号,其中S3、S2、S1、 S0、M、Cn#、LDDR1、LDDR2、ALU_BUS#、SW_BUS#、LDRi、RS1、RS0、 RD1、RD0、WR1、WR0都是电位信号,在本次实验中用拨动开关K0—K15 来模拟;T2、T3为时序脉冲信号,印制板上已连接到实验台的时序电 路。实验中进行单拍操作,每次只产生一组T1、T2、T3、T4时序脉冲,需将实验台上的DP、DB开关进行正确设置。将DP开关置1,DB开关置0,每按一次QD按钮,则顺序产生T1、T2、T3、T4一组单脉冲。 三、实验设备 1.TEC-5计算机组成实验系统1台 2.逻辑测试笔一支(在TEC-5实验台上) 3.双踪示波器一台(公用) 4.万用表一只(公用) 四、实验任务

操作系统实验报告

操作系统教程实验报告 专业班级 学号 姓名 指导教师

实验一WINDOWS进程初识 1、实验目的 (1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。 (2)掌握WINDOWS API的使用方法。 (3)编写测试程序,理解用户态运行和核心态运行。 2、实验内容和步骤 (1)编写基本的Win32 Consol Application 步骤1:登录进入Windows,启动VC++ 6.0。 步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。创建一个新的控制台应用程序工程。 步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。 步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。 步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows “命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序:E:\课程\os课\os实验\程序\os11\debug>hello.exe 运行结果 (如果运行不成功,则可能的原因是什么?) : (2)计算进程在核心态运行和用户态运行的时间 步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。 步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。 步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。 E:\课程\os课\os实验\程序\os12\debug>time TEST.exe 步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) : 步骤5:分别屏蔽While循环中的两个for循环,或调整两个for循环的次数,写出运行结果。 屏蔽i循环:

物理化学试验-华南理工大学

物理化学实验Ⅰ 课程名称:物理化学实验Ⅰ 英文名称:Experiments in Physical Chemistry 课程代码:147012 学分:0.5 课程总学时:16 实验学时:16 (其中,上机学时:0) 课程性质:?必修□选修 是否独立设课:?是□否 课程类别:?基础实验□专业基础实验□专业领域实验 含有综合性、设计性实验:?是□否 面向专业:高分子材料科学与工程、材料科学与工程(无机非金属材料科学与工程、材料化学) 先修课程:物理、物理化学、无机化学实验、有机化学实验、分析化学实验等课程。 大纲编制人:课程负责人张震实验室负责人刘仕文 一、教学信息 教学的目标与任务: 该课程是本专业的一门重要的基础课程,物理化学实验的特点是利用物理方法来研究化学系统变化规律,是从事本专业相关工作必须掌握的基本技术课程。其任务是通过本课程的学习,使学生达到以下三方面的训练: (1)通过实验加深学生对物理化学原理的认识,培养学生理论联系实际的能力; (2)使学生学会常用的物理化学实验方法和测试技术,提高学生的实验操作能力和独立工作能力; (3)培养学生查阅手册、处理实验数据和撰写实验报告的能力,使学生受到初步的物理性质研究方法的训练。 教学基本要求: 物理化学实验的特点是利用物理方法来研究化学系统变化规律,实验中常用多种物理测量仪器。因此在物理化学实验教学中,应注意基本测量技术的训练及初步培养学生选择和配套仪器进行实验研究工作的能力。 物理化学实验包括下列内容: (1)热力学部分量热、相平衡和化学平衡实验是这部分的基本内容。还可以选择稀溶液的依数性、溶液组分的活度系数或热分析等方面的实验。

编译原理实验报告总结

学年第学期《编译原理》实验报告 学院(系):计算机科学与工程学院 班级: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).语义分析 语义分析器对各句子的语法做检查:运算符两边类型是否相兼容;该做哪些类型转换(例如,实数向整数赋值要"取整");控制转移是否到不该去的地方;是

华南理工大学本科生课程论文模板

本 科 生 课 程 论 文 (2012-2013学年第二学期) 论文名称 学生名 提交日期: 学生签名: 说 明

1、课程论文要有题目、作者姓名、摘要、关键词、正文及参考文献。论文题目由学生结合课程所学内容选定;摘要300字左右,关键词3~5个;参考文献不少于10篇,并应有2篇以上的英文参考文献。 2、论文要求自己动手撰写,查重率不大于5%,如发现论文是从网上下载的,或者是抄袭剽窃别人文章的,按作弊处理,本门课程考核成绩计0分。 3、课程论文用A4纸双面打印。字体全部用宋体简体,题目要求用小二号字加粗,标题行要求用小四号字加粗,正文内容要求用小四号字;经学院同意,课程论文可以用英文撰写,字体全部用Times New Roman,题目要求用18号字加粗;标题行要求用14号字加粗,正文内容要求用12号字;行距为1.5倍行距;页边距左为3cm、右为2cm、上为2.5cm、下为2.5cm;其它格式请参照学位论文要求。

本科生课程论文 中文题目(宋体,小二号字,加粗) 学生姓名(宋体,四号字,加粗) 摘要(小四号字加粗):×××(小四号字) 关键词(小四号字加粗):××;××;…(小四号字) Abstract(与中文关键词相对应;Times New Roman;小四号字加粗):Keywords:keyword1; keyword2; keyword3; keyword4 正文部分(标题行用小四号字加粗,正文内容用小四号字) 引言部分(可以有该部分,但是不标出0引言) 1 一级标题 1.1 二级标题 1.1.1三级标题 正文内容。 2 二级标题 2.1 二级标题 2.1.1 三级标题 正文内容。 图 1 XXXXXXXXXXX 表1 XXXXXXXXX X 结论 参考文献(小四号字加粗): /2024Al复合材料板材脉冲电流辅助拉[1] 王博,张凯锋,赖小明,等. SiC p 深成形[J]. 锻压技术,2012,37(5):22-26. [2] Zhang S H, Zhou L X, Wang Z T. Technology of sheet hydroforming with a movable female die[J]. Machine Tools and Manufacture, 2003, 43(8): 781-785. [3] XXX(小四号字体) 注:正式上交课程论文时,请删除蓝色字体内容

操作系统实验报告

操作系统实验报告 实验名称: 系统的引导 所在班级: 指导老师: 老师 实验日期: 2014年3 月29 日

一、实验目的 ◆熟悉hit-oslab实验环境; ◆建立对操作系统引导过程的深入认识; ◆掌握操作系统的基本开发过程; ◆能对操作系统代码进行简单的控制,揭开操作系统的神秘面纱。 二、实验容 1. 阅读《Linux核完全注释》的第6章引导启动程序,对计算机和Linux 0.11的引导过程进行初步的了解。 2. 按照下面的要求改写0.11的引导程序bootsect.s。 3. 有兴趣同学可以做做进入保护模式前的设置程序setup.s。 4. 修改build.c,以便可以使用make BootImage命令 5. 改写bootsect.s主要完成如下功能: bootsect.s能在屏幕上打印一段提示信息XXX is booting...,其中XXX是你给自己的操作系统起的名字,例如LZJos、Sunix等。 6. 改写setup.s主要完成如下功能: bootsect.s能完成setup.s的载入,并跳转到setup.s开始地址执行。而setup.s 向屏幕输出一行"Now we are in SETUP"。setup.s能获取至少一个基本的硬件参数(如存参数、显卡参数、硬盘参数等),将其存放在存的特定地址,并输出到屏幕上。setup.s不再加载Linux核,保持上述信息显示在屏幕上即可。 三、实验环境

本实验使用的系统是windows系统或者是Linux系统,需要的材料是osexp。 四、实验步骤 1. 修改bootsect.s中的提示信息及相关代码; 到osexp\Linux-0.11\boot目录下会看到图1所示的三个文件夹,使用UtraEdit 打开该文件。将文档中的98行的mov cx,#24修改为mov cx,#80。同时修改文档中的第246行为图2所示的情形。 图1图2 图3 2. 在目录linux-0.11\boot下,分别用命令as86 -0 -a -o bootsect.obootsect.s和 ld86 -0 -s -obootsectbootsect.o编译和bootsect.s,生成bootsect文件; 在\osexp目录下点击MinGW32.bat依此输入下面的命令: cd linux-0.11 cd boot as86 -0 -a -o bootsect.obootsect.s ld86 -0 -s -o bootsectbootsect.o

编 译 原 理 实 验 报 告

编译原理实验报告 课程:编译原理 系别:计算机系 班级: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

华工电信信号与系统实验报告一(杨萃老师)

实验报告(一) 姓名:陈耿涛 学号:201030271709 班级:10级信工5班 日期:2012年4月9日 实验(一) 第一章和第二章 一、 实验目的 1、 了解MATLAB 的基本用法以及利用MATLAB 表示一些基本的信号 2、 利用MATLAB 证明线性时不变系统的一些基本性质以及相关计算 二、实验内容 1、 在310≤≤n 范围内画出下面的信号 )4/cos()4/sin(][1n n n x ππ= )4/(cos ][22n n x π= )8/cos()4/sin(][3n n n x ππ= 每个信号的基波周期是什么?对于这三个信号中的每一个,不依赖matlab ,如何来确定基波周期? 2、下面系统是否为线性、时不变、因果、稳定和可逆的?对于你声称不具有的每一个性质,要用matlab 构造一个反例证明该系统如何违反该性质。 y(n)=x(2n) 3、 考虑信号???≤≤=else n n x ,05 0,1][,???≤≤+=else n n n h ,05 0,1][ 用解析的方法算][*][][n h n x n y =,再用matlab 计算卷积,画出卷积后的结果,与你用解析方法求解的结果是否一致?两个信号卷积之后,长度是多少?卷积结果的时域序号? 三、实验细节 1、画出三个离散时间信号并描述他们的基波周期 (1)x1[n]=sin(pi*n/4).*cos(pi*n/4)=0.5*sin(pi*n/2), 周期为T=4/n,所以基波周期为4 x2[n]=cos(pi*n/4).*cos(pi*n/4)=(0.5*cos(pi*n/2)+1)/2, 周期为T=4/n,所以基波周期为4 x3[n]=sin(pi*n/4).*cos(pi*n/8)= 0.5*(sin3*n*pi/8+sinn*pi*/8)

操作系统实验报告

实验报告 实验课程名称:操作系统 实验地点:南主楼七楼机房 2018—2019学年(一)学期 2018年 9月至 2019 年 1 月 专业: 班级: 学号: 姓名: 指导老师:刘一男

实验一 实验项目:分时系统模拟 实验学时:2实验日期: 2018-10-25 成绩: 实验目的利用程序设计语言模拟分时系统中多个进程按时间片轮转调度算法进行进程调度的过程; 假设有五个进程A,B,C,D,E,它们的到达时间及要求服务的时间分别为:进程名 A B C D E 到达时间0 1 2 3 4 服务时间 4 3 4 2 4 时间片大小为1,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。 执行过程并计算各进程的周转时间及带权周转时间。 轮转调度:BDACE

(1)修改时间片大小为2,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。 轮转调度:ADBCE (2)修改时间片大小为4,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间.

顺序:ABCDE 1、思考 时间片的大小对调度算法产生什么影响?对计算机的性能产生什么影响?答:通过对时间片轮转调度算法中进程最后一次执行时间片分配的优化,提出了一种改进的时间片轮转调度算法,该算法具有更好的实时性,同时减少了任务调度次数和进程切换次数,降低了系统开销,提升了CPU的运行效率,使操作系统的性能得到了一定的提高。 A B C D E 时间片为1 周转时间12 9 14 8 13 3 3 3.5 4 3.25 带权周转 时间 时间片为2 周转时间8 12 13 7 13 2 4 3.25 3.5 3.25 带权周转 时间 时间片为4 周转时间 4 6 9 10 13 1 2 2.25 5 3.25 带权周转 时间

编译原理实验报告一

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

操作系统实验报告-实验四

操作系统实验报告-实验四

实验四:进程管理(二) 实验内容: 1.编写一个程序,打印进程的如下信息:进程标识符,父进程标识符,真实用户ID,有效用户ID,真实用户组ID,有效用户组ID。并分析真实用户ID和有效用户ID的区别。 源代码及结果: 真实用户ID和有效用户ID的区别: 真实用户ID:这个ID就是我们登陆unix 系统时的身份ID。 有效用户ID:定义了操作者的权限。有效用户ID是进程的属性,决定了该进程对文件的访问权限。 2.阅读如下程序,编译并运行,分析进程执行过程的时间消耗(总共消耗的时间和CPU

消耗的时间),并解释执行结果。再编写一个计算密集型的程序替代grep,比较两次时间的花销。注释程序主要语句。 /* process using time */ #include #include #include #include #include void time_print(char *,clock_t); int main(void){ //取得进程运行相关的时间 clock_t start,end; struct tms t_start,t_end; start = times(&t_start); system(“grep the /usr/doc/*/* > /dev/null 2> /dev/null”); /*command >/dev/null的作用是将是command命令的标准输出丢弃,而标准错误输出还是在屏幕上。一般来讲标准输出和标准

编译原理实验报告

《编译原理》实验报告软件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)单词分类 为了编程的实现。我们假定要编译的语言中,全部关键字都是保留字,程序员不得将它们作为源程序中的标识符;作了这些限制以后,就可以把关键字和标识符的识别统一进行处理。即每当开始识别一个单词时,若扫视到的第一个字符为字母,则把后续输入的字母或数字字符依次进行拼接,直至扫视到非字母、数字字符为止,以期获得一个尽可能长的字母数字字符串,然后以此字符串查所谓保留字表(此保留字表要事先造好),若查到此字符串,则取出相应的类别码;反之,则表明该字符串应为一标识符。

相关主题
文本预览
相关文档 最新文档