计算机系统结构 实验报告 (截图 分析 总结)
计算机图形学实验报告
计算机图形学
实验报告
学号:
姓名:
班级:计算机 2班
指导老师:何太军
2010.6.19
实验一、Windows 图形程序设计基础
1、实验目的
1)学习理解Win32 应用程序设计的基本知识(SDK 编程);
2)掌握Win32 应用程序的基本结构(消息循环与消息处理等); 3)学习使用VC++编写Win32 Application 的方法。
4)学习MFC 类库的概念与结构;
5)学习使用VC++编写Win32 应用的方法(单文档、多文档、对话框);
6)学习使用MFC 的图形编程。
2、实验内容
1)使用WindowsAPI 编写一个简单的Win32 程序,调用绘图API 函数绘制若干图形。(可选任务)
2 )使用MFC AppWizard 建立一个SDI 程序,窗口内显示"Hello,This
is my first SDI Application"。(必选任务)
3)利用MFC AppWizard(exe)建立一个SDI 程序,在文档视口内绘制基本图形(直线、圆、椭圆、矩形、多边形、曲线、圆弧、椭圆弧、填充、文字等),练习图形属性的编程(修改线型、线宽、颜色、填充样式、文字样式等)。定义图形数据结构Point\Line\Circle 等保存一些简单图形数据(在文档类中),并在视图类OnDraw 中绘制。
3、实验过程
1)使用MFC AppWizard(exe)建立一个SDI 程序,选择单文档;
2)在View类的OnDraw()函数中添加图形绘制代码,说出字符串“Hello,This
is my first SDI Application”,另外实现各种颜色、各种边框的线、圆、方形、多边形以及圆弧的绘制;
计算机组成原理实验报告
实验一:数字逻辑——交通灯系统设计子实验1:
7 段数码管驱动电路设计
(1)理解利用真值表的方式设计电路的原理;
(2)利用Logisim 真值表自动生成电路的功能,设计一个 7 段数码管显示驱动。
二、实验方案设计
7 段数码管显示驱动的设计方案:
(1)输入:4 位二进制
(2)输出:7 段数码管 7 个输出控制信号
(3)电路引脚:
(4)实现功能:利用 7 段数码管显示 4 位二进制的 16 进制值
(5)设计方法:
由于该实验若直接进行硬件设计会比较复杂,而7 段数码管显示的真值表较容易掌握,所以我们选择由真值表自动生成电路的方法完成该实验。
先分析设计 7 段数码管显示驱动的真值表,再利用Logisim 中的“分析组合逻辑电路”功能,将真值表填入,自动生成电路。
(6)真值表的设计:
由于是 4输入 7输出,真值表共有 16 行。7输出对应 7个引脚,所以需要依次对照LED 灯的引脚顺序进行设计,如下图所示(注意LED 的引脚顺序):
三、实验步骤
(1)在实验平台下载实验框架文件RGLED.circ;
(2)在Logisim 中打开RGLED.circ 文件,选择数码管驱动子电路;
(3)点击“工程”中的“分析组合逻辑电路”功能,先构建4输入和7输出,再在“真值表”中,将已设计好的真值表的所有数值仔细对照着填入表格中,确认无误后点击“生成电路”,自动生成的电路如下图所示:
(4)将子电路封装为如下形式:
(5)进行电路测试:
·自动测试
在数码管驱动测试子电路中进行测试;
·平台评测
自动测试结果满足实验要求后,再利用记事本打开RGLED.circ 文件,将所有文字信息复制粘贴到Educoder 平台代码区域,点击评测按钮进行测试。
2023大学生计算机实验总结报告(3篇)
2023大学生计算机实验总结报告
计算机网络课程的实验不同于以前做过的C语言上机实验和数据结构上机实验,后两者都是编程的,要求的是个人对基础知识的掌握和熟练的应用,简单地说就是一个人的战场。而计算机网络课程则是一门操作性很强的课程,很多时候它更要求我们注重团队之间的交流与配合,而不是独自完成。
第一次实验是双绞线的制作,通过这个实验让我学到了如何制作双绞线,也是我大学期间第一次做操作性这么强的实验。以前的实验都是编程,而这一次的实验却是完完全全地让我们自己动手。剥皮->排序->理直->剪齐->插入->压线,虽然实验过去了有一段时间,但是还是能清楚地记得做法。虽然最后我们的实验没有成功,但是这并不代表我们没有收获。
第二次的实验是Linu____的使用与DNS服务器的配置与管理。在课堂上,由于机子的问题,Linu____不能成功打开。于是就学习了一下DNS服务器的配置和管理。通过学习,我知道了如何添加DNSZone,如何添加主要区域,正向搜索和反向搜索,添加DNSDomain,如何设置DNS服务器的动态更新,如何修改区域传输的通知列表等等。关于Linu____,下课后仍然不死心,自己在网上下了个Linu____,然后在同学的指导下一步步地装好了。虽然说最后没怎么用,自己也不会用。但是当打开操作系统的那一瞬间,那个华丽丽的界面还是让我深深地震撼了一把。不得不感叹Linu____真的好高级。我相信,不久之后,我一定可以熟练操作Linu____系统的。
第三次试验是有关聊天软件和点歌软件的配置和运用。在这个实验里,我们开始有了更明确的分工,一个同学做客户端,一个同学做服务端,在做这些之前,要首先修改我们的IP。但是后来我想,其实根本没必要修改IP,实验课程里面要求我们修改IP,不过是让我们对此更熟悉而已。在这次的实验中,我扮演的是服务端的角色,按照实验要求一步一步地操作,我们成功地用RT____软件语音聊天。也成功地用DJ点歌服务为对方点歌。其实这次实验给我的感觉,有点像运营商与用户的关系,运营商通过相关设置,让用户可以访问其客户端进行相关的操作。这次的实验为之后的模拟网站发布奠定了一定的基础。
实验分析报告三数据的表示
实验报告三数据的表示
————————————————————————————————作者:————————————————————————————————日期:
计算机系统基础实验报告
学院信电学院专业计算机科学与技术班级计算机1401 学号140210110 姓名段登赢实验时间:
一、实验名称:数据的表示2
二、实验目的和要求:
(1)实验目的:熟悉数值数据在计算机内部的表示方式,掌握相关的处理语句。
(2)实验要求:说明你做实验的过程(重要步骤用屏幕截图表示);提交源程序;分析并回答问题。
三、实验环境(软、硬件):
要求:详细描述实验用的操作系统,源代码编辑软件,相关硬件环境及所使用的GCC 编译器的信息。
四、实验内容:
(1)请说明下列赋值语句执行后,各个变量对应的机器数和真值各是多少?编写一段程序代码并进行编译,观察默认情况下,编译器是否报warning。如果有warning信息的话,分析为何会出现这种warning信息。
int a = 2147483648;
int b = -2147483648;
int c = 2147483649;
unsigned short d = 65539;
short e = -32790;
(2)完成书上第二章习题中第40题,提交代码,并在程序中以十六进制形式打印变量u 的机器数。
(3)编译运行以下程序,并至少重复运行3次。
void main()
{
double x=23.001, y=24.001, z=1.0;
for (int i=0; i<10; i++) {
计算机系统结构WinDlx实验报告
计算机组成与系统结构
课程设计
题目:流水线指令设计及页面置换算
法在WinDLX软件中的应用
学校:
专业:
学号:
姓名:
指导教师:***
2011 年 6 月22 号
目录
1、实验一.....................2
1.1实验目的.......................2
1.2实验平台.......................2
1.3 预备知识.......................2
1.4实验内容和步骤....................2
1.5实验程序.......................4
1.6 实验报告要求.....................6
2、实验二.........................9
2.1 实验目的.......................9
2.2 实验平台.......................10 2.3 预备知识.......................10 2.4 实验内容和步骤....................10 2.5 实验程序.......................10 2.5.1 源程序.....................11 2.5.2 程序分析.....................11 2.5.3 结果截图.....................11
2.6 实验报告要求.....................12
3、实验三.........................13 3.1 实验目的.......................13 3.2 实验平台.......................13 3.3 预备知识.......................13 3.4 实验内容和步骤....................13 3.5 实验程序.......................13 3.5.1 源程序......................14 3.5.2 没有采用定向技术分析...............14 3.5.3 采用定向技术分析.................14 3.5.4 结果截图.....................15
计算机系统实训报告
计算机系统实训报告
1.引言
计算机系统实训是计算机科学与技术专业学生在培养计算机系统方面的能力和技术实践的一种重要实践方式。通过实践,学生能够深入了解计算机系统的工作原理和相关技术,掌握实际操作和解决问题的能力,提高自己的实际能力和创新能力。
2.实践目标
本次计算机系统实训的主要目标是让学生掌握操作系统安装与配置、网络配置与管理、系统调优与性能分析等方面的基本知识和技能。通过实际操作和实验,提高学生对计算机系统的理解和操作能力,为将来的工作和学习打下良好的基础。
3.实验内容
(1)操作系统安装与配置:学生需要选择合适的操作系统,按照实验指导书的要求进行安装和配置,包括分区、文件系统、启动配置等。
(2)网络配置与管理:学生需要学习和掌握网络配置和管理的基本知识,包括IP地址设置、网络连接、网络共享等。
(3)系统调优与性能分析:学生需要学习和掌握系统调优和性能分析的基本知识和方法,实际操作并进行性能测试和分析。
4.实践过程
(1)操作系统安装与配置:根据实验指导书的要求,选择合适的操作系统进行安装和配置。按照要求进行分区,设置文件系统,并进行启动配置。
(2)网络配置与管理:学习和掌握网络配置和管理的基本知识,并按照实验指导书的要求进行实践操作。设置IP地址,连接网络,并进行网络共享。
(3)系统调优与性能分析:学习和掌握系统调优和性能分析的基本知识和方法,并按照实验指导书的要求进行实践操作。进行系统性能测试和分析,根据结果进行调优。
5.实验结果与分析
通过实践操作和实验测试,学生顺利完成了实验任务,并取得了良好的实验效果。通过实验结果和分析,学生对计算机系统的工作原理和相关技术有了更深入的了解,提高了自己的操作能力和解决问题的能力。
Part2 实验4.2.1-实验报告
实验报告
实验名称:实验4.2.1:配置单臂路由器实现VLAN之间的通信
学院:计算机学院班级:计算机科学与技术学号: 3520200095 姓名:曾志杭
1,请将创建的拓扑图截图粘贴到实验报告中。
2,同一个VLAN中的PC能彼此ping通吗?请将ping命令执行结果的截图粘贴到实验报告中。
同一个VLAN中的PC能彼此ping通。
3,不同VLAN中的PC能彼此ping通吗?请将ping命令执行结果的截图粘贴到实验报告中。若不能ping通,请说明原因。
不同VLAN中的PC不能彼此ping通。不能ping通的原因:二层隔离。
4,不同VLAN中的PC能彼此ping通吗?请将ping命令执行结果的截图粘贴到实验报告中。若能或不能ping通,请说明原因。
不同VLAN中的PC能彼此ping通。二层隔离,路由实现VLAN之间的通信。
5,请将路由器RTA的IP路由表的截图粘贴到实验报告中。
6,请将tracert 192.168.30.12结果的截图粘贴到实验报告中。
7,开启交换机LSW3端口GE 0/0/2、GE 0/0/24和路由器RTA端口GE 0/0/2的数据抓包。从PC-10-1 ping PC-30-2,分析Wireshark抓取的ping通信,回答以下问题:(1)从LSW3端口GE 0/0/24抓取的以太网帧是带标记的还是不带标记的以太网帧?请将抓到的其中一个MAC帧的字段信息的截图粘贴在实验报告中。
从LSW3端口GE 0/0/24抓取的以太网帧是带标记的以太网帧。
(2)从LSW3端口GE 0/0/2抓取的、离开该端口的以太网帧是带标记的还是不带标记的以太网帧?请将抓到的其中一个MAC帧的字段信息的截图粘贴在实验报告中。
并行计算实验报告
实验报告
课程名称并行计算机体系结构
实验名称并行计算机体系结构实验指导教师纪秋
实验日期 _ 2011.4 ______
学院计算机学院
专业计算机科学与技术
学生姓名 _______查隆冬_______ 班级/学号计科0804 /2008011183 成绩 ________ _________
并行计算机体系结构实验报告
⒈安装Mpich、配置文件、小组互相ping通网络的过程和指令
(一)安装Mpich
(1)本机插入MPICH光盘,双击桌面的计算机图标->CD-RW/DVD-ROM Drive图标;系统自动挂载cdrom到/media下。(桌面出现新光盘图标XCAT-MPICH2.即挂载成功)
(2)Cp /media/cdrecorder/mpich2-1.0.6.tar.gz /usr
;本机拷贝mpich2-1.0.6.tar.gz到/usr目录下
(3)Cd /usr ;进入usr目录下
(4)Tar zxvf mpich2-1.0.6.tar.gz ;解压mpich2-1.0.6.tar.gz到当前目录(5)cd mpich2-1.0.6 ;进入mpich2-1.0.6目录
(6)./configure –enable–f90 –prefix=/opt/mpich ;生成mpi的makefile 和设置mpich路径启用f90编译器
(7)make ; 编译
(8)make install ;将编译好的文件安装,安装结束后在/opt下生成mpich文件夹
(9) which mpdboot ; 查找文件
计算机系统结构实验一MIPS指令系统和MIPS体系结构
计算机系统结构实验报告
班级计算机2班实验日期2016.2.24
实验成绩
姓
名
殷凤学号22920132203917实
验
名
称
MIPS指令系统和MIPS体系结构
实验目的要求
实验目的及要求:了解和熟悉指令级模拟器;熟练掌握MIPSsim模拟器的操作和使用方法;熟悉MIPS指令系统及其特点,加深对MIPS指令操作语义的理解;熟悉MIPS体系结构。
实验器材:实验平台采用指令级和流水线操作级模拟器MIPSsim;计算机一台。
实验内容、步骤及结果1. 阅读MIPSsim模拟器的使用方法,然后了解MIPSsim的指令系统和汇编语言;
2. 对照实验教程启动、配置MIPSsim.exe,参照使用说明,载入程序,多种执行方式查看结果;
3. 补充实验的完成:
a.求阶乘
问题:
解决方法:在代码最后加一句指令TEQ r0,r0
思路:将自定义的整数存入一个整数寄存器r1,r2,“1”的值存入寄存器r3作为求阶乘时减一的用处,r2减一,与原值r1相乘结果存入r1,判断r2值是否已经减到0,是就运行结束,否则跳转继续r2减一与r1相乘,最后r1的内容就是最终结果。
结果截图:
b.ALU运算求(X-Y)*2-(X+Y)/8
问题:无
思路:题目要求不可以使用乘除指令,则利用逻辑左移(SLL)一位实现乘2,利用逻辑右移(SRL)3实现除以8。r1 r2中存放自定义的x y,r3中存放x-y的值,r4存放x+y的值,最后结果放在r5中。
结果截图:
c.求补码
问题:
解决方法:把高32位和低32位之间base的差值4个字节事先存进寄存器r6
计算机图形学实验报告
04
实验四:渲染复杂场景
实验目的
掌握渲染复杂场景的基本流程和方法 理解光线追踪和着色器在渲染过程中的作用
熟悉渲染引擎的实现原理和技巧 提高解决实际问题的能力
实验步骤
• 准备场景文件 • 使用3D建模软件(如Blender)创建或导入场景模型,导出为常用的3D格式(如.obj或.fbx)。 • 导入场景文件 • 在渲染引擎(如Unity或Unreal Engine)中导入准备好的场景文件。 • 构建场景图 • 根据场景的层次结构和光照需求,构建场景图(Scene Graph)。 • 设置光照和材质属性 • 为场景中的物体设置光照和材质属性(如漫反射、镜面反射、透明度等)。 • 编写渲染脚本 • 使用编程语言(如C或JavaScript)编写渲染脚本,控制场景中物体的渲染顺序和逻辑。 • 运行渲染程序 • 运行渲染程序,观察渲染结果。根据效果调整光照、材质和渲染逻辑。 • 导出渲染图像 • 将渲染结果导出为图像文件(如JPEG或PNG),进行后续分析和展示。
2. 通过属性设置和变换操作,实现了对图形的定 制和调整,加深了对图形属性的理解。
4. 实验的不足之处:由于时间限制,实验只涉及 了基本图形的绘制和变换,未涉及更复杂的图形 处理算法和技术,如光照、纹理映射等。需要在 后续实验中进一步学习和探索。
02
实验二:实现动画效果
实验目的
实验-实验报告模板
上海理工大学光电信息与计算机工程学院《数据结构》实验报告
专业
学生姓名
学号
年级
指导教师
成绩:
教师签字:
报告格式要求
1、正文字体中文为宋体,五号,行距为固定值18磅,西文为Times New Rome, 五号,行
距为固定值18磅。
2、章节标题为加粗宋体,小三号,段前段后各18磅,行距为单倍行距。
3、打印时需双面打印。
目录
实验1 顺序表的基本操作 (4)
实验2 单链表的基本操作 (5)
实验3 栈和队列的基本操作 (6)
实验4 二叉树的基本操作 (7)
实验5 图的基本操作 (8)
实验6 查找 (9)
实验7 排序 (10)
实验1 顺序表的基本操作
一、实验目的
编程实现顺序表的创建、插入和删除。
(为方便测试,其中元素定义为:typedef int Elemtype)二、实验软硬件要求
硬件:一台安装了windows操作系统的计算机。
软件:
三、实验内容
实验一:题目名称
1、算法描述
2、算法的框架结构
3、主要源程序代码
实验二:题目名称
四、实验结果(写出运行程序后的结果截图)
实验一的结果截图
实验二的结果截图
实验2 单链表的基本操作
一、实验目的
编程实现单链表的创建、插入和删除。
(为方便测试,其中元素定义为:typedef int Elemtype)
二、实验软硬件要求
硬件:一台安装了windows操作系统的计算机。
软件:
三、实验内容(需写出源程序)
四、实验结果(写出运行程序后的结果截图)
实验3 栈和队列的基本操作
一、实验目的
编程实现顺序栈和顺序队列的创建,并能实现入栈、出栈、入队和出队等算法。
(为方便测试,其中元素定义为:typedef int Elemtype)
华中科技大学计算机操作系统实验报告
掌握 Linux 操作系统的使用方法; 了解 Linux 系统内核代码结构; 掌握实例操作系统的实现方法。
一、 实验要求
1、 掌握 Linux 操作系统的使用方法,包括键盘命令、系统调用;掌握在 Linux 下的编程环境。 编一个 C 程序,其内容为实现文件拷贝的功能; 编一个 C 程序,其内容为分窗口同时显示三个并发进程的运行结 果。要求用到 Linux 下的图形库。
/* Create a vertical box with buttons */ vbox = gtk_vbox_new (TRUE, 6); gtk_container_add (GTK_CONTAINER (win), vbox);
button = gtk_button_new_from_stock (GTK_STOCK_DIALOG_INFO); g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (helloWorld), (gpointer) win); gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0);
execv("/home/linux/Desktop/3/bin/Debug/3",NULL); } wait(); return 0; }
计算机系统结构专业实习报告
计算机系统结构专业实习报告
一、实习背景与目的
随着信息技术的快速发展,计算机系统结构作为一门涵盖了计算机硬件和软件等多个方面的学科,在我国的高等教育体系中占据了重要的地位。为了更好地将理论知识与实践相结合,提高自身综合素质和实际操作能力,我选择了计算机系统结构专业实习,以便为今后的学术研究和职业生涯打下坚实基础。
本次实习的主要目的是:
1. 深入了解计算机系统结构的基本原理和组成部件;
2. 熟悉各类计算机硬件设备的工作原理和性能指标;
3. 掌握计算机系统组装、维护和调试的基本技能;
4. 提高团队协作能力和沟通交流能力。
二、实习内容与过程
1. 实习前的准备
在实习开始前,我们参加了由指导老师举办的实习动员大会,了解了实习的要求、内容以及注意事项。同时,我们还自学了相关教材和资料,为实习打下了理论知识基础。
2. 实习过程中的主要任务与收获
实习过程中,我们主要完成了以下任务:
1. 参观实验室和机房,了解各类计算机硬件设备及其功能;
2. 学习计算机系统组装、维护和调试的基本技能;
3. 参与实验室科研项目,协助导师进行数据分析和实验验证;
4. 撰写实习日记和总结报告,记录实习过程中的所学所得。
具体收获如下:
1. 熟悉了计算机系统结构的基本原理和组成部件,如CPU、内存、硬盘、显卡等;
2. 掌握了计算机系统组装、维护和调试的基本技能,如安装操作系统、配置网络、排查故障等;
3. 了解了实验室科研项目的工作流程,提高了科研素养;
4. 增强了团队协作能力和沟通交流能力。
3. 实习中遇到的困难与解决方案
在实习过程中,我们遇到了一些困难,如:
计算机上机实验内容及实验报告要求实验报告
计算机上机实验内容及实验报告要求实验报告
上机实验内容可以根据具体的课程和学科要求来设定,以下是一个示例:
上机实验内容:
1. 设计一个简单的计算器程序,能够实现基本的四则运算。
2. 编写一个程序,实现对学生成绩的管理,包括添加、删除、查询学生信息等功能。
3. 使用Python编写一个简单的文本编辑器,能够实现打开、编辑、保存文件等功能。
实验报告要求:
1. 封面:包括实验标题、班级、姓名等基本信息。
2. 实验目的:阐述本次实验的目标和意义。
3. 实验原理:简要介绍实验所涉及的基本原理和背景知识。
4. 实验步骤:详细描述实验的具体步骤和操作过程。
5. 实验结果:展示实验过程中产生的结果和数据,可以使用截图、表格等形式。
6. 实验分析:对实验结果进行分析和解释,可以结合相关理论知识加以说明。
7. 实验总结:总结实验的过程和结果,总结实验中所学到的知识和经验。
8. 实验改进:提出对实验的改进意见和建议,指出可能存在的不足之处和改进方向。
9. 参考文献:列出实验过程中参考的相关文献和资料。
注意事项:
1. 实验报告应使用规范的学术写作语言,遵循论文写作规范。
2. 图表应清晰可读,标注明确。
3. 所有使用的源代码和数据应在实验报告中附上。
4. 提交实验报告时应按要求进行格式排版,并正确命名文件。
计算机系统结构实验-循环展开和指令调度.
中央民族大学实验报告
八、实验数据及结果分析:
一、用指令调度技术解决流水线中的结构相关与数据相关:
1、instruction.s文件的代码:
2、运行程序部分截图
3、未用指令调度技术之前程序执行过程中的相关:
4、运行结果数据统计
5、采用指令调度后的程序代码
6、采用调度技术后发生的关联
7、运行结果数据统计
二、用循环展开、寄存器换名以及指令调度提高性能:
1、test.s文件的源代码如下:
2、运行test.s文件,记录运行过程中存在的相关,以及运行总的时钟周期数
3、将循环展开3次,将4个循环体组成的代码代替原来的循环体,并对程序做相应的修改。然后对新的循环体进行寄存器换名和指令调度,代码如下:
4、记录执行过程中各种相关发生的次数以及程序执行的总时钟周期数:
计算机网络实验(带截图)
实验一802.3协议分析和以太网
一、实验目的
1.分析80
2.3协议
2.熟悉以太网帧的格式
3.熟悉ARP报文的格式
二、预备知识
要深入理解网络协议,需要仔细观察协议实体之间交换的报文序列。为探究协议操作细节,可使协议实体执行某些动作,观察这些动作及其影响。这些任务可以在仿真环境下或在如因特网这样的真实网络环境中完成。观察在正在运行协议实体间交换报文的基本工具被称为分组嗅探器(packet sniffer)。顾名思义,一个分组嗅探器捕获(嗅探)计算机发送和接收的报文。一般情况下,分组嗅探器将存储和显示出被捕获报文的各协议头部字段内容。图1为一个分组嗅探器的结构。
图1右边是计算机上正常运行的协议(在这里是因特网协议)和应用程序(如:Web浏览器和ftp客户端)。分组嗅探器(虚线框中的部分)是附加计算机普通软件上的,主要有两部分组成。分组捕获库接收计算机发送和接收的每一个链路层帧的拷贝。高层协议(如:HTTP、FTP、TCP、UDP、DNS、IP等)交换的报文都被封装在链路层帧(Frame)中,并沿着物理介质(如以太网的电缆)传输。图1假设所使用的物理媒体是以太网,上层协议的报文最终封装在以太网帧中。
分组嗅探器的第二个组成部分是分析器。分析器用来显示协议报文所有字段的内容。为此,分析器必须能够理解协议所交换的所有报文的结构。例如:我们要显示图1中HTTP协议所交换的报文的各个字段。分组分析器理解以太网帧格式,能够识别包含在帧中的IP数据报。分组分析器也要理解IP数据报的格式,并能从IP数据报中提取出TCP报文段。然后,它需要理解TCP报文段,并能够从中提取出HTTP消息。最后,它需要理解HTTP消息。WireShark是一种可以运行在Windows, UNIX, Linux等操作系统上的分组分析器.用户界面如图2所示。最初,各窗口中并无数据显示。WireShark的界面主要有五个组成部分:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一流水线中的相关
一、实验目的
1. 熟练掌握WinDLX模拟器的操作和使用,熟悉DLX指令集结构及其特点;
2. 加深对计算机流水线基本概念的理解;
3. 进一步了解DLX基本流水线各段的功能以及基本操作;
4. 加深对数据相关、结构相关的理解,了解这两类相关对CPU性能的影响;
5. 了解解决数据相关的方法,掌握如何使用定向技术来减少数据相关带来的暂停
二、实验平台
WinDLX 模拟器
三、实验内容和步骤
1.用WinDLX模拟器执行下列三个程序:
(分别以步进、连续、设置断点的方式运行程序,观察程序在流水线中的执行情况,观察CPU中寄存器和存储器的内容。熟练掌握WinDLX的操作和使用。
)
●求阶乘程序fact.s
⏹步进的运行方式:
步进的运行方式是指,每次控制只执行一条语句,快捷键为F7键:
图1-1 单步运行测试
⏹设置断点的运行方式:
鼠标点击某行,按下“Insert键”,设置断点:
图1-2 设置断点
图1-3 断点设置成功,按F5运行至断点
⏹连续的运行方式:
通过按下F5键,可直接运行至断点处;按下F8键,并在对话框内键入跳跃的步数,可以直接跳转指定的步数:
图1-4 设置跳转步数
●求最大公倍数程序gcm.s,观察程序在流水线中的执行情况:
●求素数程序prim.s,观察CPU 中寄存器和存储器的内容
2. 用WinDLX运行程序structure_d.s
通过模拟找出存在资源相关的指令对以及导致资源相关的部件;记录由资源相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比;论述资源相关对CPU性能的影响,讨论解决资源相关的方法。
●存在资源相关的指令、导致资源相关的部件
⏹两条指令同时访问寄存器f4,造成资源相关:
⏹两条指令同时访问ALU,造成资源相关:
●由资源相关引起的暂停时钟周期数、暂停时钟周期数占总执行周期数的
百分比
由资源相关引起的暂停时钟周期数:30;总执行周期数:139;
暂停时钟周期数占总执行周期数的百分比:21.6%
3. 在采用、以及不采用定向技术的情况下,分别用WinDLX 运行程序data_d.s
(记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比;并计算采用定向技术后性能提高的倍数)
●采用定向技术:(左下图)
⏹计算暂停时钟周期数占总执行周期数的百分比:30/128=23.4%
图3-1 采用定向技术图3-2 不采用定向技术
●不采用定向技术:(右上图)
⏹计算暂停时钟周期数占总执行周期数的百分比:104/202=51.5%
●采用定向技术后性能提高的倍数:202/128=1.58倍
四、实验总结
●资源相关对CPU性能的影响、讨论解决资源相关的方法
资源相关使相关指令在流水线上停滞,降低了执行效率;
为解决这一问题,应在编写代码时尽量避免总是使用同一寄存器;
并通过指令调度,使相关的代码执行距离拉开。
实验二循环展开及指令调度
一、实验目的
1. 加深对循环级并行性、指令调度技术、循环展开技术以及寄存器换名技术的理解;
2. 熟悉用指令调度技术来解决流水线中的数据相关的方法;
3. 了解循环展开、指令调度等技术对CPU性能的改进。
二、实验平台
WinDLX模拟器
三、实验内容及步骤
(1)用DLX汇编语言编写代码文件*.s,程序中应包括数据相关与结构相关(假设:加法﹑乘法﹑除法部件各有2个,延迟时间都是3个时钟周期)
.data
.global ONE
ONE: .word 1
.text
.global main
main:
lf f1,ONE
cvti2f f7,f1 ;结构相关
nop
nop
subf f1,f8,f7
subf f2,f1,f7
subf f13,f2,f7
addf f6,f4,f5 ;store a new value in r1
subf f10,f6,f9 ;use r1 & store new r4
addi r12,r12,#1
subi r11,r11,#8
Finish:
trap 0
(2)通过Configuration菜单中的“Floating point stages”选项,把加法﹑乘法﹑除法部件的个数设置为2个,把延迟都设置为3个时钟周期;
(3)用WinDLX运行程序。记录程序执行过程中各种相关发生的次数、发生相关的指令组合,以及程序执行的总时钟周期数;
●总时钟周期数:24;
资源相关数目:1;
数据相关数目:6;
Trap暂停数目:4
●资源相关的指令组合:
lf f1,ONE
cvti2f f7,f1
●数据相关的指令组合:
subf f1,f8,f7
subf f2,f1,f7
subf f13,f2,f7
addf f6,f4,f5 ;store a new value in r1
subf f10,f6,f9 ;use r1 & store new r4
(4)采用指令调度技术对程序进行指令调度,消除相关;
.data
.global ONE
ONE: .word 1
.text
.global main
main:
lf f1,ONE
cvti2f f7,f1 ;结构相关
nop
nop