北京理工大学计算机实验四
北京理工大学自动化专业微机原理硬件软件实验
![北京理工大学自动化专业微机原理硬件软件实验](https://img.taocdn.com/s3/m/2334d9de7375a417866f8ff3.png)
北京理工大学自动化专业微机原理硬件软件实验------------------------------------------作者xxxx------------------------------------------日期xxxx微机原理与接口技术硬件实验报告班级:姓名:学号:实验一: 8259中断控制器实验一、实验目的1. 掌握8259的工作原理。
2. 掌握编写中断服务程序的方法。
3. 掌握初始化中断向量的方法。
二、实验内容用单脉冲发生器的输出脉冲为中断源,每按一次产生一次中断申请,点亮或熄灭发光二极管。
三、实验设备微机实验教学系统实验箱、8086CPU模块四、连线①单脉冲发生器输出P+与8259的IR0相连②8259的片选CS8259与CS0相连③8259的INT与8086的INT相连④8259的INTA与8086的INTA相连⑤CS273与CS1相连⑥00与LED1相连其它线均已连好如下图:五、实验步骤(1)连线。
(2)编辑程序,编译链接后,调试程序。
(3)调试通过后,在中断服务程序内设置断点,运行程序,当接收到中断请求后,程序停在中断服务程序内的断点处。
(4)撰写实验报告。
六、实验源程序CODE SEGMENT PUBLICASSUME CS:CODEORG 100HSTART: MOV DX,4A0H ;写ICW1MOV AX,13HOUT DX,AXMOV DX,4A2H ;写ICW2MOV AX,80H ;IR0的中断向量码为80HOUT DX,AXMOV AX,01OUT DX,AX ;一般嵌套,非缓冲,非自动EOIMOV AX,0 ;写OCW1OUT DX,AX ;允许中断;中断向量存放在(0000H:0200H)开始的四个单元里MOV AX,0MOV DS,AXMOV SI,200H ;中断类型号为80HMOV AX,OFFSET HINT ;中断服务程序的入口地址MOV DS:[SI],AXADD SI,2MOV AX,CSMOV DS:[SI],AXSTI ;开中断,设置IF=1JMP $ ;原地跳转HINT: ;中断服务程序XOR CX,0FFH ;CX取反MOV DX,4B0H ;CS273接口的地址,与8个LED灯相连MOV AX,CX ;输出高低电平控制LED灯的亮灭OUT DX,AXMOV DX,4A0H ;OCW2的地址MOV AX,20H ;一般EOI命令,全嵌套方式OUT DX,AXIRET ;中断返回CODE ENDSEND START七、实验思考题1.将P+连线连接到IR1—IR7任意一个;重新编写程序。
北理工-机电学院-大学计算机基础实验报告-学号-姓名-第九次实验报告
![北理工-机电学院-大学计算机基础实验报告-学号-姓名-第九次实验报告](https://img.taocdn.com/s3/m/9a473483a0116c175f0e48ae.png)
学号-姓名-实验九 实验报告
1
五、实验报告
实验名称:图像生成与图像处理
学号 姓名 班级: 实验时间: 年 月 日
实验报告: 图像生成与图像处理
一、填写下载图像的相关数据:
二、查看左侧的图像,请填写相应的图像编码。
三、计算机中实际存储的图像可能有数几百万像素,为了减少图像存储的空间,有一种游程压缩方法,可以减少存储的字节数,这种方法利用了图像中有大块连续的白色像素和黑色像素的特点,只需要记录下白色或黑色像素的连续区块的长度,例如下图中的第一行依次由3个白象素、2个黑象素、3个白象素组成,可以表示为3,2,3。
同理,第二行,可以表示为1,6,1,请依次完成接下来的编码。
北京理工大学数信实验报告
![北京理工大学数信实验报告](https://img.taocdn.com/s3/m/579c733b001ca300a6c30c22590102020640f250.png)
实验1 利用DFT 分析信号频谱一、实验目的1、加深对DFT 原理的理解。
2、应用DFT 分析信号的频谱。
3、深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。
二、实验设备与环境计算机、MATLAB 软件环境。
三、实验基础理论1.DFT 与DTFT 的关系:有限长序列的离散时间傅里叶变换(e )j X ω 在频率区间(02)ωπ≤≤ 的N 个等间隔分布的点2(0k N 1)kk N πω=≤≤-上的N 个取样值可以有下式表示:2120(e )|(n)e(k)(0k N 1)N jkn j Nkk NX x X πωπω--====≤≤-∑由上式可知,序列(n)x 的N 点DFT (k)X ,实际上就是(n)x 序列的DTFT 在N 个等间隔频率点2(0k N 1)kk N πω=≤≤-上样本(k)X 。
2.利用DFT 求DTFT方法1:由(k)X 恢复出(e )j X ω的方法如下:由流程知:11(e )(n)e[(k)W]e N j j nkn j nNn n k X x X Nωωω∞∞----=-∞=-∞===∑∑∑继续整理可得到:12()(k)()Ni k kx e X N ωπφω==-∑其中(x)φ为内插函数:sin()2()sin()2N N ωφωω=方法2:实际在MATLAB 计算中,上述插值运算不见得是最好的办法。
由于DFT 是DTFT 的取样值,其相邻两个频率样本点的间距为2N π,所以如果我们增加数据的长度N ,使得到的DFT 谱线就更加精细,其包络就越接近DTFT 的结果,这样就可以利用DFT 计算DTFT 。
如果没有更多的数据,可以通过补零来增加数据长度。
3.利用DFT 分析连续信号的频谱采用计算机分析连续时间信号的频谱,第一步就是把连续信号离散化,这里需要进行两个操作:一是采样,二是截断。
对于连续时间非周期信号(t)a x ,按采样间隔T 进行采样,阶段长度M ,那么:1(j )(t)e(nT)e M j tj nTa a a n X x dt T x -∞-Ω-Ω-∞=Ω==∑⎰对(j )a X Ω 进行N 点频域采样,得到:2120(j )|(nT)e(k)M jkn Na a M kn NTX T x TX ππ--Ω==Ω==∑采用上述方法计算信号(t)a x 的频谱需要注意如下三个问题:(1)频谱混叠;(2)栅栏效应和频谱分辨率; (3)频谱泄露。
ICMP协议分析_实验四
![ICMP协议分析_实验四](https://img.taocdn.com/s3/m/ba535ab2c77da26925c5b0a4.png)
北京理工大学珠海学院实验报告ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY班级:学号:姓名:指导教师:成绩实验题目:实验时间:一、实验目的:掌握ICMP协议的工作原理,理解ICMP协议的分组结构。
二、实验内容实验内容用ping命令和科莱网络分析系统分析ICMP包的基本结构以及会先请求与应答消息、目标不可达、超时等消息的ICMP报文的异同。
实验步骤:1.回显请求及其应答消息。
(1)在PC1上运行命令:ping 临机IP。
(2)命令执行后,停止抓包,分析ICMP报文,查看报文结构和首部格式以及首部中个字段的内容。
(3)说明ICMP报文首部个字段的含义以及所捕获的的数据报属于什么报文。
(4)对PC2上捕获到的包进行分析,说明ICMP报文首部各字段的含义以及所捕获的数据报属于什么报文。
2.超时消息。
(1)在PC1上运行命令:ping不存在或者没有开机的计算机的IP。
(2)停止抓包,分析ICMP报文,查看报文结构个首部格式中各字段的内容。
(3)说明ICMP报文首部各字段的含义以及所捕获的数据报属于什么报文。
(4)对PC2上捕获到的包惊醒分析,说明ICMP报文首部各字段的含义以及所捕获的数据报属于什么报文。
3.端口不可达消息。
(1)在PC1上启动TFTP服务器软件。
(2)在PC2上启动科莱网络分析系统,开始抓包。
(3)在PC1的命令窗口运行命令:tftp -i PC2的IP get 文件名(该文件可能不存在);三、实验结果1.回显请求及其应答消息。
PC1发来的数据包PC2回应PC1的数据报2.超时消息。
Ping 10.16.7.250抓到的数据包3.端口不可达消息。
使用TFTP服务器软件,抓到的额数据包四、思考与讨论1.通过查资料,请描述协议不可达报文的结构以及首部字段的含义。
答:ICMP目标不可达报文如图所示,是ICMP目标不可达报文头部格式。其中代码字段的不同值又代表不同的含义,如,0代表网络不可达、1代表主机不可达等。
北京理工大学微机原理实验报告
![北京理工大学微机原理实验报告](https://img.taocdn.com/s3/m/3c192376852458fb760b5600.png)
微机原理与接口技术实验报告实验内容:汇编语言程序设计实验组别:12姓名:班级:学号:一、实验目的1、熟悉IDE86集成开发环境的使用。
2、通过编程、上机调试,进一步理解汇编语言的设计思路与执行过程。
3、熟悉DOS命令调用,以达到输入输出、返回DOS系统等目的。
4、掌握利用汇编实现求和与求最值的方法。
5、掌握利用汇编实现数制转换的方法。
6、巩固理论知识,锻炼动手编程,独立思考的能力。
二、实验内容(具体内容)1、求从TABLE开始的10个无符号字节数的和,并将结果放在SUM字单元中。
并查看前5个,前8个数之和以及各寄存器和内存的状态。
2、在1的基础上修改程序,求出10个数中的最大值和最小值,最后将最大最小值分别赋给MAX及MIN。
3、求1到 100 的累加和,并用十进制形式将结果显示在屏幕上。
要求实现数据显示,并返回DOS状态。
三、实验方法1、设计思路(1)实验1的设计思路:先将10个要相加的数存在以TABLE为首的10个连续的存储单元中,然后利用循环结构依次取出数值放在AL中并累加,若有进位则加到AH中直至循环10次累加结束,将累加的结果放在SUM中并返回DOS状态。
(2)实验2的设计思路:先将10个要比较的数放在以TABLE为首的10个连续的存储单元中。
将第一个数首先赋给AL和AH(分别存储相对最小和最大值)在利用LOOP循环结构,依次和下面的数进行比较,每次把相对的最大值与最小值存储到AH和AL中直至循环9次比较结束,将AH和AL里面的最大值与最小值赋给MAX和MIN,返回DOS状态(3)实验3的设计思路:先在内存中定义COUNT=100,表示1-100求和,若相求1-n的和并显示只需COUNT的值为n即可,同时定义一块以DNUM为首地址的数据区用于存储累加和的十进制数对应的ASCII码。
先利用AX和LOOP求出1-COUNT的累加和存在AX中;在进行数值转化,AX 依次除10取余数保存,将16进制数转化为10进制ASCII码值并存在DUNM中。
北京理工大学计算机实验一报告表
![北京理工大学计算机实验一报告表](https://img.taocdn.com/s3/m/a5fa8b2aa88271fe910ef12d2af90242a995ab62.png)
北京理工大学计算机实验一报告表北京理工大学计算机实验一报告一、实验目的:1. 了解计算机实验室的硬件设备,熟悉计算机的组成和工作原理;2. 掌握计算机的基本操作和调试方法,熟悉计算机的操作系统和软件环境;3. 学习使用计算机进行数据输入、处理和输出。
二、实验内容:1. 硬件设备:了解计算机的主要硬件组成,包括中央处理器(CPU)、内存、硬盘、显卡等;2. 操作系统:熟悉计算机的操作系统,学习操作系统的基本功能和操作方法;3. 软件环境:了解计算机的软件环境,学习使用常用的办公软件和编程工具;4. 数据输入:学习使用键盘和鼠标进行数据输入,了解数据的输入格式和方式;5. 数据处理:学习使用计算机进行数据处理,包括数据的存储、计算和分析;6. 数据输出:学习使用计算机进行数据输出,包括打印、显示和保存等方式。
三、实验步骤:1. 硬件设备:了解计算机的主要硬件组成,包括CPU、内存、硬盘、显卡等,熟悉各个硬件的功能和作用;2. 操作系统:熟悉计算机的操作系统,学习操作系统的基本功能和操作方法,包括开机、关机、重启等;3. 软件环境:了解计算机的软件环境,学习使用常用的办公软件和编程工具,如Microsoft Office和Visual Studio等;4. 数据输入:学习使用键盘和鼠标进行数据输入,了解数据的输入格式和方式,如文本、数字、图像等;5. 数据处理:学习使用计算机进行数据处理,包括数据的存储、计算和分析,如使用Excel进行数据分析;6. 数据输出:学习使用计算机进行数据输出,包括打印、显示和保存等方式,如使用打印机打印数据报告。
四、实验结果:本次实验我们成功地熟悉了计算机的硬件设备和软件环境,掌握了计算机的基本操作和调试方法。
我们学会了使用键盘和鼠标进行数据输入,使用计算机进行数据处理和输出。
通过实验,我们进一步了解了计算机的组成和工作原理,对计算机的操作系统和软件环境有了更深入的了解。
北京理工大学汇编语言实验四 分支和循环程序设计实验
![北京理工大学汇编语言实验四 分支和循环程序设计实验](https://img.taocdn.com/s3/m/50197d355a8102d276a22f80.png)
实验四分支和循环程序设计实验(设计性实验)一、实验要求和目的1.熟悉汇编语言程序设计结构;2.熟悉汇编语言分支程序基本指令的使用方法;3.掌握利用汇编语言实现单分支、双分支、多分支的程序设计方法;4.了解汇编语言循环程序设计的基本流程;5.熟悉汇编语言循环基本指令的使用方法;6.掌握利用汇编语言的循环指令完成循环程序设计方法。
二、软硬件环境1、硬件环境:计算机系统windows;2、软件环境:装有MASM、DEBUG、LINK、等应用程序。
三、实验涉及的主要知识在实际应用中,经常根据一些条件来选择一条分支执行。
汇编语言的条件判断主要是通过状态寄存器中的状态位、无符号数相减或有符号相减而导致的结果来进行。
1.无条件转移指令JMP无条件转移指令JMP 是使程序无条件转移至目标处,又分为段内转移、段间转移。
2.条件转移指令JXX条件转移指令可分为三大类:1).简单条件转移指令指令。
根据单个标志位的状态判断转移条件。
标志位指令转移条件意义JC CF=1 有进位/借位CFJNC CF=0 无进位/借位JE/JZ ZF=1 相等/等于0ZFJNE/JNZ ZF=0 不相等/不等于0JS SF=1 是负数SFJNS SF=0 是正数JO OF=1 有溢出OFJNO OF=0 无溢出JP/JPE PF=1 有偶数个1PFJNP/JPO PF=0 有奇数个12).无符号数条件转移指令。
假设在条件转移指令前使用比较指令,比较两个无符号数A,B,指令进行的的操作是A-B,其转移指令如下:指令转移条件意义JA/JNBE CF=0 AND ZF=0 A>BJAE/JNB CF=0 OR ZF=1 A>=BJB/JNAE CF=1 AND ZF=0 A<BJBE/JNA CF=1 OR ZF=1 A<=B3).带符号数条件转移指令。
指令转移条件意义JG/JNLE SF=OF AND ZF=0 A>BJGE/JNL SF=OF OR ZF=1 A>=BJL/JNGE SF OF AND ZF=0 A<BJLE/JNG SF OF OR ZF=1 A<=B在汇编程序设计中,要熟练使用循环指令和跳转等指令来实现循环,理解循环体结构中的初始化部分、循环体、结束部分,并且要结合前面分支结构相关的知识点,加深对循环结构的理解和掌握。
北京理工大学-实验四--实验报告表
![北京理工大学-实验四--实验报告表](https://img.taocdn.com/s3/m/7d1e500727d3240c8447efcb.png)
RAM把第一个操作数存放在哪个寄存器上,通过哪组总线传送给CPU
:
数据存储器 DBΒιβλιοθήκη CPU把取到的第一个操作数存放在哪里
GR
步骤5 加法计算
CPU把两个加数放入哪里进行加法运算
ALU 计算器
当两个加数相加结束后,CPU把相加结果存放在哪里
加数一所在的通用寄存器中
00000034
RAM中加数一的编码与内存地址
00000000000011000036
步骤2 取指令
CPU使用哪根总线将PC中的内存地址送至RAM
AB
RAM将CPU传来的指令地址存储在哪里
地址储存器
MAR中存放的是什么具体的二进制编码是什么
指令编码0001110100110110
#
MAR中二进制编码对应的内存地址是什么该内存地址中存放了什么数据该数据放在哪个寄存器中
000A 指令编码 指令寄存器
PC被访问后其中的内容发生了什么变化为什么
PC中的指令地址自动加一
因为这一指令执行完要执行下一次指令
RAM将MDR中的数据通过哪条总线传送给力CPU
DB
CPU将RAM传来的指令存放在哪里
指令寄存器 IR
IR中存放的指令二进制编码是什么
0001 110100 110110
¥
步骤3 指令译码
IR中的操作码和两个操作数的内存地址分别是什么(请分别用用六位二进制数和四位十六进制表示)
0000010001
操作数1:110100 0034
操作数2:110110 0036
译码在哪里进行并通过哪组总线把该操作传递给RAM
CU控制器 CB
步骤4 取数据
CPU通过哪组总线传送地址RAM将这个地址存放在哪里
实验四 方程求根Matlab实验报告
![实验四 方程求根Matlab实验报告](https://img.taocdn.com/s3/m/4a2d5feb9b89680203d825c5.png)
北京理工大学珠海学院实验报告ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY班级2012电气2班学号xxxxxxxxxx姓名陈冲指导教师张凯成绩实验题目(实验四)方程求根实验地点及时间JB501 2013/12/31(3-4节)一、实验目的1.掌握用程序语言来编辑函数。
2.学会用MATLAB编写resecm.m以及Newtoniter.m函数分别实现二分法、牛顿迭代法求解。
二、实验环境Matlab软件三、实验内容1、以书中第11页题目1和第154页题目16为例编辑程序来实现计算结果。
2、使用MATLAB进行编写:第一步:编写resecm.m函数,代码如下第二步:编写Newtoniter.m函数,代码如下第三步:利用上述函数编辑命令:(可见实验结果中的截图)1.在此之前先建立一个名为f.m的M文件,代码如下function y=f(x);y=x^3-x-1;再编代码:clear all;resecm(‘f’,1,2,0.01)得到结果:ans=1.32472.再建文件名为li6_4fun.m的M文件,代码如下function y=li6_4fun(x);y=x^3+2*x^2+10*x-20;和dili6_4fun.m的M文件,代码如下function y=dili6_4fun(x);y=3*x^2+4*x+10;再编代码:得到结果:x=1.3688若在语句中添加format long;语句,且精确到14位,则结果为x=1.36880810782137四、实验题目1、用二分法求方程310x x --=在[]1,2内的近似值,要求误差不超过310-。
16、早在1225年,有人曾求解方程32210200x x x ++-=(见前述题1)并给了高精度的实根* 1.368808107x =,试用牛顿法求得这个结果。
前述题:1、试取01x =,用迭代公式1220210k k k x x x +=++,0,1,2,...k = 求方程32210200x x x ++-=的根,要求准确到310-。
北理工_数据分析_实验4_熟悉.net csharp可视化快速编程
![北理工_数据分析_实验4_熟悉.net csharp可视化快速编程](https://img.taocdn.com/s3/m/4d765e6a9b89680202d82579.png)
北京理工大学现代数据分析实验4实验报告主讲:李明学生:李经2012/10/31实验4数据拟合 (1)4.1实验目的 (1)4.1.1初步熟悉.net csharp可视化快速编程。
(1)4.2实验内容 (1)4.2.1使用CSharp进行简单的界面编程,实现简单的数据操作 (1)4.3实验代码及结果 (1)4.3.1计算a+b^c的值 (1)4.3.2实现阶乘操作 (3)(图表页)图1.初始界面 (2)图2.进行计算,标题栏和最底部文字框中均显示答案 (2)图3.菜单栏中含“Run”,单击效果同工具栏“Run”按钮,同“计算”按钮 3图4.初始界面 (4)图5.进行计算,弹出对话框,显示答案 (4)图6.点击确定后,标题栏也会显示答案 (5)图7.工具栏按钮“Run”,单击效果同单击“计算”,同菜单栏中“Task”中的“Run” (6)实验4数据拟合4.1 实验目的4.1.1初步熟悉.net csharp可视化快速编程。
4.2 实验内容4.2.1使用CSharp进行简单的界面编程,实现简单的数据操作1) 设计一个窗体,实现:输入a、b、c,弹出提示为a+b^c的值。
Math.Pow2) 设计一个窗体,实现:输入数字a,弹出提示为a!。
2) 具有菜单、工具条和状态栏。
4.3 实验代码及结果4.3.1计算a+b^c的值代码:namespace WindowsApplication1{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){int a,b,c;int result;a = int.Parse(textBox1.Text);b = int.Parse(textBox2.Text);c = int.Parse(textBox3.Text);result = a + (int)(Math.Pow(b,c));textBox4.Text = result.ToString();this.Text = "计算结果为:" + a.ToString() + "+" + b.ToString() + "^" + c.ToString() + "=" + result.ToString();}}}结果:图1.初始界面图2.进行计算,标题栏和最底部文字框中均显示答案图3.菜单栏中含“Run”,单击效果同工具栏“Run”按钮,同“计算”按钮4.3.2实现阶乘操作代码:namespace WindowsApplication1{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){int i, j;j = 1;for (i = 1; i <= int.Parse(textBox1.Text); i++){j = j * i;}MessageBox.Show(j.ToString());this.Text = "计算结果为:" + int.Parse(textBox1.Text) + "!=" + j.ToString(); }private void Form1_Resize(object sender, EventArgs e){if (this.Width >= 250 && this.Height >= 150){button1.Left = this.Width - 100;button1.Top = this.Height - 100;}}}}结果:图4.初始界面图5.进行计算,弹出对话框,显示答案图6.点击确定后,标题栏也会显示答案图7.工具栏按钮“Run”,单击效果同单击“计算”,同菜单栏中“Task”中的“Run”图8.图9.图10.图11.(范文素材和资料部分来自网络,供参考。
北京理工大学随机信号分析实验报告
![北京理工大学随机信号分析实验报告](https://img.taocdn.com/s3/m/e1c19fbc02d276a201292e2a.png)
北京理工大学随机信号分析实验报告本科实验报告实验名称:随机信号分析实验实验一随机序列的产生及数字特征估计一、实验目的1、学习和掌握随机数的产生方法。
2、实现随机序列的数字特征估计。
二、实验原理1、随机数的产生随机数指的是各种不同分布随机变量的抽样序列(样本值序列)。
进行随机信号仿真分析时,需要模拟产生各种分布的随机数。
在计算机仿真时,通常利用数学方法产生随机数,这种随机数称为伪随机数。
伪随机数是按照一定的计算公式产生的,这个公式称为随机数发生器。
伪随机数本质上不是随机的,而且存在周期性,但是如果计算公式选择适当,所产生的数据看似随机的,与真正的随机数具有相近的统计特性,可以作为随机数使用。
(0,1)均匀分布随机数是最最基本、最简单的随机数。
(0,1)均匀分布指的是在[0,1]区间上的均匀分布,即 U(0,1)。
实际应用中有许多现成的随机数发生器可以用于产生(0,1)均匀分布随机数,通常采用的方法为线性同余法,公式如下:)(m od ,110N ky y y n n -=Ny x n n /=序列{}nx 为产生的(0,1)均匀分布随机数。
下面给出了上式的3组常用参数: 1、10N 10,k 7==,周期7510≈⨯;2、(IBM 随机数发生器)3116N 2,k 23,==+周期8510≈⨯;3、(ran0)315N 21,k 7,=-=周期9210≈⨯;由均匀分布随机数,可以利用反函数构造出任意分布的随机数。
定理 1.1 若随机变量 X 具有连续分布函数F X (x),而R 为(0,1)均匀分布随机变量,则有)(1R F X x -=由这一定理可知,分布函数为F X (x)的随机数可以由(0,1)均匀分布随机数按上式进行变换得到。
2、MATLAB 中产生随机序列的函数(1)(0,1)均匀分布的随机序列函数:rand用法:x = rand(m,n)功能:产生m×n 的均匀分布随机数矩阵。
北京理工大学-数据结构实验报告-实验四--图书管理系统
![北京理工大学-数据结构实验报告-实验四--图书管理系统](https://img.taocdn.com/s3/m/663ec78da417866fb94a8e09.png)
实验四图书管理系统姓名:任子龙学号:1120140167 班级:05111451一。
需求分析(1)问题描述有一个小型书库保管了大量图书,关于图书有大量信息需要处理,这些信息包括图书的分类、书名、作者名、购买日期、价格等。
现要求编写一个程序以便于对图书的管理。
(2)基本要求:a.建立图书信息.b.提供查找功能,按照多种关键字查找需要的书籍。
例如按书名查找,输入书名后,将显示出该图书的所有信息,或显示指定信息。
c.提供排序功能,按照多种关键字对所有的书籍进行排序,例如按出版日期进行排序。
d.提供维护功能,可以对图书信息进行添加、修改、删除等功能。
(3)数据结构与算法分析将每一本书看作是一个基本单元。
由于涉及添加、修改操作,这里使用了链表作为数据存储结构;同时,考虑到排序功能,尝试使用双向链表。
其中,每本书作为一个结点,数据域包含char 型变量,指针域含有左右指针left和right。
二.概要设计1。
抽象数据类型的定义为实现上述功能,程序中使用了双向链表,只需要定义一种数据类型:typedef struct book{char number[10];char title[20];char author[10];char date[15];char price[10];struct book *right;struct book *left;}BK;注意结点的指针域有left和right两个。
2.本程序包含两个模块(1)主程序模块主函数只包含了Menu_select()函数。
目的是进入主菜单界面,进行功能选择;直到输入操作码0,退出系统;(2)双向链表单元模块——实现书籍信息的链式存储的抽象数据类型.各函数之间的调用关系:三。
详细设计1。
结点类型typedef struct book{char number[10];char title[20];char author[10];char date[15];char price[10];struct book *right;struct book *left;}BK;2.子函数(1)功能菜单调用函数Menu_select()使用户进入主菜单界面,进行功能选择;先进入无限循环,输入操作码进行系统管理工作,直到输入操作码0,退出系统;(2)各种功能函数Initialize()//初始化图书系统信息;Insert()//添加新的图书信息;Sort()//对图书进行排序,本程序可以实现按“图书编号”、“出版日期"、“图书价格”多种关键字进行排序;Search()//实现对图书的查找功能,本程序可以实现按“图书编号"、“出版日期”、“图书价格”多种关键字进行查找;deletebook()//删除无效的图书信息;Print_book()//打印全部图书信息。
北理大学计算机实验基础_实验七实验报告表
![北理大学计算机实验基础_实验七实验报告表](https://img.taocdn.com/s3/m/637ec281cf2f0066f5335a8102d276a200296084.png)
北理大学计算机实验基础_实验七实验报告表一、实验目的本次实验的主要目的是深入了解和掌握计算机系统中的某些关键概念和技术,通过实际操作和观察,提高我们对计算机原理的理解和应用能力。
二、实验环境本次实验在北理大学计算机实验室进行,使用的计算机配置为:处理器_____,内存_____,操作系统_____,实验所用到的软件包括_____等。
三、实验内容及步骤(一)实验内容1、了解计算机存储系统的层次结构,包括高速缓存、内存和外存的特点和工作原理。
2、学习并掌握虚拟内存的概念和配置方法。
3、研究磁盘调度算法,如先来先服务(FCFS)、最短寻道时间优先(SSTF)和扫描算法(SCAN)等。
(二)实验步骤1、计算机存储系统的层次结构探究打开计算机系统,观察内存和高速缓存的参数设置。
运行一些特定的程序,观察数据在不同存储层次之间的传输和处理过程。
记录不同存储层次的访问速度和容量等参数,并进行分析和比较。
2、虚拟内存的配置与观察进入操作系统的设置界面,查找虚拟内存的相关选项。
更改虚拟内存的大小和位置设置,观察系统性能的变化。
使用性能监测工具,收集虚拟内存使用情况的数据,如页面交换频率、内存占用率等。
3、磁盘调度算法的模拟与比较编写磁盘调度算法的模拟程序,实现FCFS、SSTF 和SCAN 算法。
输入一系列磁盘访问请求,运行不同的算法,记录磁盘臂的移动距离和平均寻道时间。
对不同算法的性能进行分析和比较,总结它们的优缺点。
四、实验结果与分析(一)计算机存储系统的层次结构通过实验观察和数据记录,我们发现高速缓存的访问速度极快,但容量较小;内存的访问速度次之,容量较大;外存的访问速度最慢,但容量最大。
在实际应用中,数据会根据其使用频率和重要性在不同存储层次之间自动迁移,以提高系统的整体性能。
(二)虚拟内存的配置当虚拟内存设置较小时,系统容易出现内存不足的错误,导致程序运行缓慢或崩溃;当虚拟内存设置过大时,会占用过多的磁盘空间,并且可能会影响系统的启动和运行速度。
北京理工大学《数据结构与算法设计》实验报告实验四
![北京理工大学《数据结构与算法设计》实验报告实验四](https://img.taocdn.com/s3/m/83a36083d0d233d4b14e6946.png)
《数据结构与算法设计》实验报告——实验四学院:班级:学号:姓名:一、实验目的1.通过实验实践、巩固线性表的相关操作; 2.熟悉VC 环境,加强编程、调试的练习; 3.用C 语言实现线性表的抽象数据类型,实现线性表构造、插入、取数据等基本操作; 4. 理论知识与实际问题相结合,利用上述基本操作实现三种排序并输出。
二、实验内容从键盘输入10个数,编程实现分别用插入排序、交换排序、选择排序算法进行排序,输出排序后的序列。
三、程序设计1、概要设计为了实现排序的功能,需要将输入的数字放入线性表中,进行进一步的排序操作。
(1)抽象数据类型:ADT SqList{数据对象:D={|,1,2,,,0}i i a a ElemSet i n n ∈=≥数据关系:R1=11{,|,,1,2,,}i ii i a a a a D i n --<>∈= 基本操作:InPut(SqList &L)操作结果:构造一个线性表L 。
OutPut(SqList L)初始条件:线性表L 已存在。
操作结果:按顺序在屏幕上输出L 的数据元素。
InsertSort(SqList &L)初始条件:线性表L 已存在。
操作结果:对L 的数据元素进行插入排序。
QuickSort(SqList &L)初始条件:线性表L 已存在。
操作结果:对L 的数据元素进行快速排序。
SelectSort(SqList &L)初始条件:线性表L 已存在。
操作结果:对L 的数据元素进行选择排序。
}ADT SqList⑵主程序流程由主程序首先调用InPut(L)函数创建顺序表,调用InsertSort(L)函数进行插入排序,调用OutPut(L)函数显示排序结果。
调用QuickSort(L)函数进行交换排序,调用OutPut(L)函数显示排序结果。
调用SelectSort(L)函数进行选择排序,调用OutPut(L)函数显示排序结果。
实验四 二阶开环及闭环系统的频率特性曲线
![实验四 二阶开环及闭环系统的频率特性曲线](https://img.taocdn.com/s3/m/6d12e3f5770bf78a65295440.png)
实验四 二阶开环及闭环系统的频率特性曲线(北京理工大学 自动化学院 班级: 姓名: 学号:)摘要:自动控制中有两个曲线是研究的重点,它们分别是波特图和奈奎斯特曲线,本实验将根据如是电路图有计算机绘制以上两种图,并研究相关参数。
关键词:开环、闭环、波特图、奈奎斯特曲线。
一、 实验目的1. 了解和掌握Ⅰ型二阶闭环系统中的对数幅频特性L (ω)和相频特性,实频特性Re(ω)和虚频特性Im(ω)的计算。
2. 了解和掌握欠阻尼Ⅰ型二阶闭环系统中的自然频率ωn 、阻尼比ξ对谐振频率ωr 和谐振峰值L(ωr)的影响及ωr 和L(ωr) 的计算。
3. 了解阻尼比ξ对开环参数幅值穿越频率ωc 和相位裕度的影响及幅值穿越频率ωc 和相位裕度的计算。
4. 了解和掌握Ⅰ型二阶闭环系统对数幅频曲线、相频曲线和幅相曲线的构造及绘制方法。
二、 实验过程被测系统结构所示被测系统传函:()()()()1()()C s G s s R s G s H s φ==+ 以角频率ω为参数的闭环系统对数幅频特性和相频特性为:()20lg |()|, ()()L j j ωφωφωφω==∠自然频率为n ω=阻尼比为ξ=谐振频率为r ωω=谐振峰值为()r L ω=二阶闭环系统模拟电路的各环节参数:积分环节的积分时间常数11i T R C =⨯=1s ,惯性环节的惯性常数32T R C =⨯=0.1s ,开环增益 3/K R R =。
设K=25(R=4K Ω), ωn=15.81rad/s , ξ=0.316.计算得ωr=14.14rad/s ,L (ωr ) =4.44dB 。
二阶闭环系统频率特性测试电路如 图1所示。
图1 二阶闭环系统频率特性测试电路测试结束后(约10min),将显示被测系统的闭环对数幅频、相频特性曲线(bode图)和幅相曲线(奈奎斯特图),分别如下图3、图四所示:图3图4三、实验结果表 1 不同参数系统的谐振频率和谐振峰值开环增益K 惯性常数T积分常数iT谐振频率/(1rad s-⋅) 谐振峰值/dBL计算值测量值计算值测量值25 0.1114.143 14.00 4.443 4.03 0.2 10.604 10.50 7.198 6.67 0.3 8.818 8.00 8.878 7.7720 0.1 0.5 18.708 19.20 6.301 6.09 0.2四、思考题1.说明在实际应用中,开环和闭环的不同特性。
北京理工大学计算机实验四
![北京理工大学计算机实验四](https://img.taocdn.com/s3/m/a7ee2ee926fff705cd170a01.png)
Welcome !!!
欢迎您的下载,
资料仅供参考!
RMA中二进制编码对应的内存地址是什么?该内存地址中存放了什么数据?该数据放在哪个寄存器中?
000A指令编码指令寄存器
PC被访问后其中的内容发生了什么变化?为什么?
PC中的指令地址自动加一因为这一指令执行完要执行下一次指令
RAM将MDR中的数据通过哪条总线传送给力CPU?
DB
CPU将RAM传来的指令存放在哪里?
0000101110111000 0034
RAM中加数二的编码与内存地址
0000000000001100 0036
步骤2取指令
CPU使用哪根总线将PC中的内存地址送至RAM?
AB
RAM将CPU传来的指令地址存储在哪里?
地址储存器
RMA中存放的是什么?具体的二进制编码是什么?
指令编码00011101 00110110
实验四实验报告表
实验名称:一条指令的执行过程
学号姓名班级:实验时间:年月日
实验报告表4-1一条指令执行过程记录表
步骤1用户指定两个加数
加数1,加数2
3000 12
PC中存储的指令地址
00000000 00001011
RAM中对应指令地址中的指令码
00011101 00110110
RAM中加数一的编码与内存地址
指令寄存器IR
IR中存放的指令二进制编码是什么?
0001 110100 110110
步骤3指令译码
IR中的操作码和两个操作数的内存地址分别是什么?(请分别用用六位二进制数和四位十六进制表示)
000001 0001
操作数1: 110100 0034
大学计算机基础实验报告4
![大学计算机基础实验报告4](https://img.taocdn.com/s3/m/ffa47ec776eeaeaad1f33068.png)
实验报告 4 网络应用实验
(实验类型:应用性)
一.实验目的
(1)掌握网络的设置(IP、DNS、网关等);
(2)掌握的资源共享、共享权限设置、对等网使用
(3)掌握Foxmail 邮件客户端设置
(4)掌握Foxmail 邮件客户端使用
二、实验内容实验教材第8章:
实验1 Windows网络设置和对等网的使用
实验5 Foxmail电子邮件的使用
三,实验过程
完成实验1及实验5,结果截图及说明如下
实验一windows7中网络设置和对等网的使用1.网络协议的安装和设置
查看本机的:主机名、MAC地址、ip地址、子网掩码、默认网关等信息。
进行连通性测试:命令行命令:ping172.16.14.254(对默认网关进行连通性测试)
2.共享服务的安装和设置
3.将E盘根目录下的“15土木01班20154679王焱”共享为只读方式
4.将E盘根目录下的“15土木01班20154679王焱”共享为读写方式
6.在“网上邻居”地址栏输入来访问jsj22-18的共享资源
实验五foxmail电子邮件的使用1.Foxmail账户设置
2.foxmail的发送
实验报告 4 网络应用实验15土木01班20154679 王焱
四、实验分析总结
1.通过该实验的实践理解了网络的构成,以及基本的网络知识。
2.学海无涯,计算机基础知识是我们必备的知识,应当多学习。
3.计算机知识需要我们不断的上机实验才能融会贯通。
4.遇到问题多试几种方法,总会有解决的方法。
第11页共11 页。
北京理工大学-计算机网络实践-VLAN配置及VLAN间通信实验报告
![北京理工大学-计算机网络实践-VLAN配置及VLAN间通信实验报告](https://img.taocdn.com/s3/m/d578f126ed630b1c59eeb59a.png)
LAB1 VLAN配置及VLAN间通信一、实验目的:1.掌握在一台交换机上VLAN的划分方法2.掌握跨交换机的VLAN配置方法3.掌握Trunk端口的配置方法4.掌握三层交换的原理和VLAN间通信协议二、实验内容:1.在一台交换机上划分VLAN,测试连通性2.配置Trunk端口,在两台交换机上配置VLAN,测试连通性3.利用S3610三层交换,实现VLAN间通信,测试连通性三、实验环境:1.S3610三层交换机一台,S3100两层交换机两台2.Console线3条,标准网线6根,交换机间连接线2根3.计算机6台4.每6人一组,共用一套实验设备台,分别对交换机进行配置四、实验任务分配我负责在PC机上控制交换机的“超级终端”中输入命令。
五、实验步骤:步骤一、交换机的基本配置在交换机的Console口连接的计算机上点击开始→程序→附件→通讯→超级终端,运行超级终端。
选择com1端口,设置端口属性。
如图1所示。
图1 设置COM1端口属性进入用户视图显示<Quidway>提示符,键入如下命令进入系统视图并将系统名改为S1。
⏹<H3C >system-view⏹[H3C]sysname S1⏹[S1]display ?步骤二:广播风暴实验在两台S3100之间连接成环路,每台计算机上运行Ethereal截获报文。
观察到交换机端口指示灯在不停闪烁,与S3100相连接的两台计算机运行程序变得异常缓慢,最后导致死机。
截获的报文如下图所示。
图2 广播风暴察看捕获报文的种类有ARP,NBNS,Browser,IGMP,MDNS等,其中ARP的帧结如图3所示。
图3 ARP帧结构步骤三、一台交换机上划分VLAN对一台S3100进行设置,实验中我们仅使用了两台计算机,分成两个VLAN,输入指令如下所示:⏹[S1]VLAN 2⏹[S1-VLAN 2]port e 1/0/1 e 1/0/2⏹[S1-VLAN 2]quit⏹ [S1]VLAN 3⏹[S1-VLAN 3]port e 1/0/3 e 1/0/4⏹[S1-VLAN 3]quit设置的结果如图4所示。
北京理工大学计算机实验四
![北京理工大学计算机实验四](https://img.taocdn.com/s3/m/af738f5ecfc789eb172dc8e2.png)
RAM中加数二的编码与内存地址
0000000000001100 0036
步骤2取指令
CPU使用哪根总线将PC中的内存地址送至RAM?
AB
RAM将CPU传来的指令地址存储在哪里?
地址储存器
RMA中存放的是什么?具体的二进制编码是什么?
指令编码00011101 00110110
加数一所在的通用寄存器中
欢迎您的下载,
资料仅供参考!
致力为企业和个人提供合同协议,策划案计划书,学习资料等等
打造全网一站式需求
RMA中二进制编码对应的内存地址是什么?该内存地址中存放了什么数据?该数据放在哪个寄存器中?
000A指令编码指令寄存器
PC被访问后其中的内容发生了什么变化?为什么?
PC中的指令地址自动加一因为这一指令执行完要执行下一次指令
RAM将MDR中的数据通过哪条总线传送给力CPU?
DB
CPU将RAM传来的指令存放在哪里?
实验四实验报告表
实验名称:一条指令的执行过程
学号姓名班级:实验时间:年月日
实验报告表4-1一条指令执行过程记录表
步骤1用户指定两个加数
加数1,加数2
3000 12
PC中存储的指令地址
00000000 00001011
RAM中对应指令地址中的指令编码
00011101 00110110
RAM中加数一的编码与内存地址
CU控制器CB
步骤4取数据
CPU通过哪组总线传送地址?RAM将这个地址存放在哪里?
AB地址储存器
RAM把第一个操作数存放在哪个寄存器上,通过哪组总线传送给CPU?
数据寄存器DB
CPU把取到的第一个操作数存放在哪里?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IR中存放的指令二进制编码是什么?
0001 110100 110110
步骤3指令译码
IR中的操作码和两个操作数的内存地址分别是什么?(请分别用用六位二进制数和四位十六进制表示)
000001 0001
操作数1: 110100 0在哪里进行?并通过哪组总线把该操作传递给RAM?
RMA中二进制编码对应的内存地址是什么?该内存地址中存放了什么数据?该数据放在哪个寄存器中?
000A指令编码指令寄存器
PC被访问后其中的内容发生了什么变化?为什么?
PC中的指令地址自动加一因为这一指令执行完要执行下一次指令
RAM将MDR中的数据通过哪条总线传送给力CPU?
DB
CPU将RAM传来的指令存放在哪里?
加数一所在的通用寄存器中
0000101110111000 0034
RAM中加数二的编码与内存地址
0000000000001100 0036
步骤2取指令
CPU使用哪根总线将PC中的内存地址送至RAM?
AB
RAM将CPU传来的指令地址存储在哪里?
地址储存器
RMA中存放的是什么?具体的二进制编码是什么?
指令编码00011101 00110110
CU控制器CB
步骤4取数据
CPU通过哪组总线传送地址?RAM将这个地址存放在哪里?
AB地址储存器
RAM把第一个操作数存放在哪个寄存器上,通过哪组总线传送给CPU?
数据寄存器DB
CPU把取到的第一个操作数存放在哪里?
GR
步骤5加法计算
CPU把两个加数放入哪里进行加法运算?
ALU计算器
当两个加数相加结束后,CPU把相加结果存放在哪里?
实验四实验报告表
实验名称:一条指令的执行过程
学号姓名班级:实验时间:年月日
实验报告表4-1 一条指令执行过程记录表
步骤1用户指定两个加数
加数1,加数2
3000 12
PC中存储的指令地址
00000000 00001011
RAM中对应指令地址中的指令编码
00011101 00110110
RAM中加数一的编码与内存地址