c++实验指导书指导书-新
- 格式:doc
- 大小:290.50 KB
- 文档页数:28
μVision2 支持所有的Keil 80C51 的工具软件,包括C51 编译器、宏汇编器、链接器/定位器、软硬件调试器和目标文件到HEX 格式文件转换器等,μVision2 可以自动完成编译、汇编、链接程序等操作。
μVision2 具有强大的软件环境、友好的操作界面和简单快捷的操作方法。
双击桌面上的Keil μVision2 快捷图标,可以进入如图1-1 所示的集成开发调试环境,各种调试工具、命令菜单都集成在此开发环境中。
菜单栏提供了各种操作菜单,如编辑器操作、工程维护、程序调试、窗体选择以及操作帮助等。
工具栏按钮和快捷键可以快速执行μVision2命令。
常用的菜单栏及相对应的工具栏按钮与快捷键介绍如表1-1~表1-6所列。
图1-1μVision2 集成环境界面表1-1 文件菜单和文件命令(File)表1-2 编辑菜单和编辑器命令(Edit)表1-3视图菜单(View)表1-4工程菜单和工程命令(Project)表1-5 调试菜单和调试命令(Debug)表1-6外围器件菜单(Peripheral)第2章单片机原理实验通过本章的实验,旨在使学生掌握Keil C51 的操作方法,学习80C51 的指令系统及汇编语言的程序设计方法。
2.1系统认识实验2.1.1实验目的1. 学习Keil C51 集成开发环境的操作;2. 熟悉TD-51 系统板的结构及使用。
2.1.2实验设备PC机一台2.1.3实验内容编写实验程序,将00H~0FH共16个数写入单片机内部RAM的30H~3FH空间。
通过本实验,学生需要掌握Keil C51软件的基本操作,便于后面的学习。
2.1.4实验步骤1. 创建Keil C51 应用程序在Keil C51 集成开发环境下使用工程的方法来管理文件,所有的源文件、头文件甚至说明性文档都可以放在工程项目文件里统一管理。
下面创建一个新的工程文件C51.Uv2,以此详细介绍如何创建一个Keil C51 应用程序。
《电器控制与PLC》实验指导书实验一三相笼型异步电动机单向点动、长动控制一、实验目的及要求①熟悉控制电路中各电器元件结构、型号规格、工作原理、使用方法及其在电路中所起的作用。
②通过实验加深对三相异步电动机点动和长动控制电路工作原理的理解。
③掌握三相异步电动机点动和长动控制电路安装接线的步骤、方法、调试及排除故障的方法。
二、实验装置及仪表三相笼型异步电动机 1台三相刀开关 1个按钮 3只交流接触器 1只熔断器 5只热继电器 1只万用表 1块接线端子板 1组电工工具 1套导线若干根三、电气原理图实验电气原理图如图1.1所示。
四、实验步骤(一)熟悉、检查电器元件查看本次实验各电器元件,并将其型号规格等填入表1-1内。
检查各电器元件的质量,用万用表的欧姆档检测各电器的常开、常闭触点的通断情况,以及熔断器、刀开关的通断情况。
(二)按图接线按图1-la主电路和图l-1c点动控制电路接线,从刀开关的下端开始自上而下地接线,先接主电路后接控制电路,最后接电源进线。
主电路使用导线的粗细按电动机的工作电流选取,中小容量电动机的辅助电路一般可用截面积为lmm2左右导线。
(三)检查电路接线完成后,仔细检查电路有无漏接、短接、错接以及接线端的接触是否良好。
检查主电路,断开FU2,切除控制电路,用万用表欧姆档对各接点作通断检查。
检查控制电路,断开FU1,接通FU2,用万用表欧姆档对各接点作通断检查。
自检无误后,清理线头杂物,把主令开关安放在便于操作的位置上,查看三相电源电压是否正常,经老师检查后,再接通电源。
(四)通电实验1.点动控制合上电源开关Q,接通电源,操作按钮SB2,观察接触器KM、电动机动作情况,理解点动意义.2.电动机正转起动、停止控制断开电源,主电路不变,按图1-1d长动控制电路接控制回路,经老师检查无误后,接通电源,操作SB2、SB1,观察接触器KM动作情况以及电动机运行情况,理解自锁的意义。
3.断开电源,主电路不变,按图1-1b点、长动控制电路接控制回路,经老师检查无误后,接通电源,反复操作SB2、SB3、SB1,观察接触器KM动作情况以及电动机运行情况,理解复合按钮SB3的作用。
前言机械CAD/CAM技术这门课程是一门理论与实践结合非常紧密的课程, 经过系统的实验环节, 能够帮助学生较好地理解相关理论知识, 同时提高实际动手能力, 为将来的工程实践打好基础。
基于上述考虑, 并根据我校实际情况, 本门课程安排了分属于CAD; CAE; CAM三个不同领域的7个实验。
可达到比较全面的实验效果。
实验一将下表进行程序化处理一、编程思路: 设整型变量i为皮带型号: i=0表示O型, I=1为A型, I=2为B型, 以此类推。
用4个一维数组a[7]、 h[7]、 a0[7]、 y0[7]分别存储V带的顶宽, 断面高、节宽和节高。
二、检索V带参数的C++语言参考程序:// sy1.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"#include <stdlib.h>#include <stdio.h>int main(int argc,char **argv){int i;float a[7]={10.0,13.0,17.0,22.0,32.0,38.0,50.0};float h[7]={6.0,8.0,10.5,13.5,19.0,23.5,30.0};float a0[7]={8.5,11.0,14.0,19.0,27.0,32.0,42.0};float y0[7]={2.1,2.3,4.1,4.8,6.9,8.3,11.0};while(1){scanf("%d",&i);if(i>=0 &&i <=6){printf("您需要查找的V带的顶宽为%f,断面高为%f,节宽为%f,节高为%f",a[i],h[i],a0[i],y0[i]);break;}else printf("您输入的V带型号不对, 请重新输入! ");}system("pause");}三、实验步骤: 如下图所示A、用Microsoft Visual Studio 作为实验环境1234输入代码并执行B、用VC++6.0作为实验环境13 4四、实验报告要求1、简述实验步骤( 要求手写) 。
目录实验一 WINDOWS进程初识 (3)1、实验目的 (3)2、实验内容和步骤 (3)3、实验结论 (5)4、程序清单 (5)实验二进程管理 (6)背景知识 (6)1、实验目的 (12)2、实验内容和步骤 (12)3、实验结论 (16)4、程序清单................... 错误!未定义书签。
实验三进程同步的经典算法 .. (17)背景知识 (17)1、实验目的 (19)2、实验内容和步骤 (19)3、实验结论 (22)4、程序清单................... 错误!未定义书签。
实验四存储管理 (23)背景知识 (23)1、实验目的 (31)2、实验内容和步骤 (31)3、实验结论 (48)4、程序清单................... 错误!未定义书签。
实验五文件和设备管理 (49)背景知识 (49)1、实验目的 (53)2、实验内容与步骤............. 错误!未定义书签。
3、实验结论................... 错误!未定义书签。
实验一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++源程序的文件名。
实验一上机操作初步一、实验内容:说明:前三题为必做题目,后两题为选做题目。
1、输出入下信息:(实验指导书P79)*************************Very Good*************************2、计算两个整数的和与积。
(实验指导书P81)3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。
(书P3)4、在屏幕上显示一个文字菜单模样的图案:=================================1 输入数据2 修改数据3 查询数据4 打印数据=================================5、从键盘上输入两个整数,交换这两个整数。
二、参考答案:1、#include <stdio.h>void main( ){ printf(“********************\n”);printf(“ Very Good\n”);printf(“********************\n”);}2、#include <stdio.h>void main( ){ int a,b,c,d;printf(“Please enter a,b:”);scanf(“%d,%d”,&a,&b);c=a+b;d=a*b;printf(“%d+%d=%d\n”,a,b,c);printf(“%d*%d=%d\n”,a,b,d);}3、#include <stdio.h>#include <math.h>void main( ){ double x,s;printf(“Please input value of x:”);scanf(“%lf”,&x);s=cos(x);printf(“cos(%lf)=%lf\n”,x,s);}4、#include <stdio.h>void main( ){ printf(“==================================\n”);printf(“ 1 输入数据 2 修改数据\n”);printf(“ 3 查询数据 4 打印数据\n”);printf(“===================================\n”);}5、#include <stdio.h>void main( ){ int x,y,t;printf(“Please enter x and y:”);scanf(“%d%d”,&x,&y);t=x; x=y; y=t;printf(“After swap:x=%d,y=%d\n”,x,y);}实验二简单的C程序设计一、实验内容:说明:前四题为必做题目,后两题为选做题目。
第二章实训项目PLC基本技能实操实训一 PLC认知实训一、实训目的1.了解PLC软硬件结构及系统组成2.掌握PLC外围直流控制及负载线路的接法及上位计算机与PLC通信参数的设置二、实训设备序号名称型号与规格数量备注1可编程控制器实训装置THPFSM-1/2 12实训导线3号若干3PC/PPI通讯电缆 1 西门子4计算机 1 自备三、PLC外形图四、控制要求1.认知西门子S7-200系列PLC的硬件结构, 详细记录其各硬件部件的结构及作用;2.打开编程软件, 编译基本的与、或、非程序段, 并下载至PLC中;3.能正确完成PLC端子与开关、指示灯接线端子之间的连接操作;五、拨动K0、K1, 指示灯能正确显示;六、功能指令使用及程序流程图1.常用位逻辑指令使用标准触点常开触点指令(LD.A和O)与常闭触点(LDN、AN、ON)从存储器或过程映像寄存器中得到参考值。
当该位为1时, 常开触点闭合;当该位为0时, 常闭触点为1;输出输出指令(=)将新值写入输出点的过程映像寄存器。
当输出指令执行时, S7-200将输出过程映像寄存器中的位接通或断开。
与逻辑: 如上所示: I0.0、I0.1状态均为1时, Q0.0有输出;当I0.0、I0.1两者有任何一个状态为0, Q0.0输出立即为0。
或逻辑: 如上所示: I0.0、I0.1状态有任意一个为1时, Q0.1即有输出;当I0.0、I0.1状态均为0, Q0.1输出为0。
2.与逻辑: 如上所示: I0.0、I0.1状态均为0时, Q0.2有输出;当I0.0、I0.1两者有任何一个状态为1, Q0.2输出立即为0。
3.程序流程图七、端口分配及接线图1.I/O端口分配功能表序号PLC地址(PLC端子)电气符号(面板端子)功能说明1.I0.0 K0 常开触点012.I0.1 K1 常开触点023.Q0.0 L0 “与”逻辑输出指示4.Q0.1 L1 “或”逻辑输出指示5.Q0.2 L2 “非”逻辑输出指示6.主机1M、面板V+接电源+24V 电源正端7.主机1L、2L、3L、面板COM接电源GND电源地端2.控制接线图八、操作步骤1.按下图连接上位计算机与PLC;按“控制接线图”连接PLC外围电路;打开软件, 点击 , 在弹出的对话框中选择“PC/PPI通信方式”, 点击, 设置PC/PPI属性;2.点击 , 在弹出的对话框中, 双击 , 搜寻PLC, 寻找到PLC后, 选择该PLC;至此, PLC与上位计算机通信参数设置完成;3.编译实训程序, 确认无误后, 点击 , 将程序下载至PLC中, 下载完毕后, 将PLC模式选择开关拨至RUN状态。
实验一压力控制回路一、实训目的1、使学生了解常见的压力控制回路,各元件在系统中的作用。
2、了解气压传动中,压力控制的基本知识。
二、实训要求对下例各回路,学生可自选取其中几项,来完成相应的实训报告,实训报告内容:1、动作要求2、整个系统采用的气动元件的名称、数量3、按动作要求模拟出气动系统图(见下例系统图)4、绘制气缸动作控制的位移—步骤图5、选择控制方式:点动、继电器控制、PLC控制、手动控制(1)对点动,列出电磁铁动作顺序图(2)对继电器控制,绘出电气线路图(3)对PLC控制,给出PLC外部接线图,并编出相应的程序6、实训步骤即操作过程(动作过程的简述)三、实训选用的压力控制回路图1、高低压转换回路图42、气缸单向压力回路图53、气缸双向压力回路图6四、实训实例例一以高低压转换回路为例1、动作要求,气缸4的夹紧力可以高低压转换。
2、采用元件及数量,气泵及三联件1套、减压阀2只、手旋阀1只、单作用气1只。
3、气缸动作控制位移—步骤图4、气动系统图,见图35、控制方式,本实训只能用手动方式6、操作过程,(1)把所需的气动元件有布局的卡在铝型台面上,并用气管将它们连接在一起,组成回路。
(2)仔细检查后,打开气泵的放气阀,压缩空气进入三联件,调节减压阀,使压力为0.4MPa后,当把减压阀1和2调到不同压力时,通过手旋旋钮式二位三通阀3便可使系统得到不同的压力,来满足系统的不同需求。
例二以气缸单向压力回路为例1、动作要求到控制方式本实训省略2、操作过程(实训采用继电器控制方式)(1)把所需的气动元件有布局的卡在铝型台面上,并用气管将它们连接在一起,组成回路。
(2)仔细检查后,打开气泵的放气阀,压缩空气进入三联件,调节减压阀,使压力为0.4MPa后,由图可知,气缸首先将被压回气缸的初始位置,然后按下图连接好电气线路:按下主面板上的启动按钮,然后,按下SB2,CT1得电,压缩空气进入双作用气2的无杆腔,因为有单向节流阀的存在,双作用气缸前进的速度较快,当按下SB1后,气缸退回,此时减压阀起作用,调节减压阀的调节手柄,使压差发生变化,气缸退回的速度将变化,实验二、速度控制回路本实训分四个部分:a :单作用气缸速度控制回路b :双作用气缸速度控制回路c :快速回路d :缓冲回路 一:实训目的1、了解速度可变的意义。
C++ 程序设计课程 实验指导书
新疆农业大学计算机与信息工程学院 2007年7月
第二版 1
实验一 Visual C++6.0环境介绍 一、实验目的 熟悉Visual C++6.0环境 熟悉C++程序结构 培养合理书写、编辑C++程序的习惯 掌握C++程序的编辑、编译和运行过程
二、实验前的必要预习
在上第一个实验课之前,请认真回答以下的问题,通过回答这些问题,进一步熟悉C++程序的结构,加深和巩固对理论课内容的理解。 完成以下的配对练习,从右栏中找出对左栏术语的正确解释,并将二者用直线连接,如示例所示:
术语 解释 <= 主函数、C++程序开始执行的地方 >> 转义字符 main 头文件的扩展名 ; 文件包含预处理命令 .cpp 赋值运算符 # include C++源文件扩展名 .h 输出操作由此操作符表达 \ 输入操作由此操作符表达 << 一个C++语句的结束标示 Visual C++6.0 表示函数没有返回值 void 表示输出一个回车符
三、实验内容 C++程序的编辑、编译和运行任何一个c++程序,都必须先经过编辑和编译的过程,最后生成可执行的代码后才能够运行。 1. 编辑 编辑是将编写好的C++源程序输入到计算机中,生成磁盘文件的过程。 C++程序的编辑可以使用计算机软件所提供的某种编辑器进行编辑。将C++程序的源代码录入到磁盘文件中,磁盘文件的名字要用扩展名.cpp。 2. 编译 C++是以编译方式实现的高级语言。C++程序的实现,必须要使用某种C++语言的编译器对程序进行编译。 编译器的功能是将程序的源代码(.cpp)转换成为机器代码的形式,称为目标代码 (.obi);然后,再使目标代码进行连接,生成可执行文件(.exe),等待下一步的执行过程。 详细分析编译过程又可分为三个子过程。 1) 预处理过程 源程序经过编译时,先进行预处理过程,如果源程序中有预处理命令,则先执行这些预 2
处理命令,执行后再进行下面的编译过程。可见,预处理命令是最先执行的。如果程序中没有预处理命令,就直接进行下面的编译过程。 2) 编译过程 编译过程主要是进行词法分析和语法分析的过程,又称源程序分析。这阶段基本上与机器硬件无关,主要进行的是对程序的语法结构的分析。分析过程中,发现有不符合要求的语法错误,及时报告给用户,显示在屏幕上。在这个过程中还要生成一个符号表。最终 生成目标代码程序,完成编译阶段的任务。 3) 连接过程 这是编译的最后一个过程。编译后的目标代码文件还不能由计算机直接执行。其主要原因是编译器对每个源文件分别进行编译,如果一个程序有多个源文件,编译后这些源文件的目标代码文件还分布在不同的地方,因此需要把它们连接到一块。即使该程序只有一个源文件,这个源文件生成的目标代码文件还需要系统提供的库文件中的一些代码,因此,也需要把它们连接起来。总之,基于上述原因,将用户程序生成的多个目标代码文件和系统提供库文件中某些代码连接在一起还是十分必要的。这种连接工作由编译系统中的连接程序(又称连接器)来完成。连接器将由编译器生成的目标代码文件和库中的某些文件连接处理,生成一个可执行文件,存储这个可执行文件的扩展名为.exe,因此,有人又称它为 exe文件。库文件的扩展名为.1ib。 3. 运行 一个C++的源程序经过编译和连接后生成了可执行文件。运行可执行文件的方法很多,一般在编译系统下有运行功能,通过选择菜单项便可实现。 程序被运行后,一般在屏幕上显示出运行结果。用户可以根据运行结果来判断程序是否有算法的错误。一个程序编好后,在生成可执行文件之前需要改正编译和连接时出现的一切致命错和警告错,这样才可能生成无错的可执行文件。在程序中存在警告错时,也会生成可执行文件,但是一般要求改正警告错后再去运行可执行文件。有的警告错会造成结果的错误。 使用Visual C++6.0版本编译系统编辑C++源程序、编译C++程序和运行C++程序以获得结果的过程如下: (1)编辑C++源程序 启动VisualC什6.0编译系统后,出现Visual C++6.0的主窗口,该窗口的菜单栏中有如下9个菜单项: File 实现与文件有关的所有操作,如打开、关闭、打印等。 Edit 实现编辑操作,如复制、剪切、粘贴、查找和移动等。 View 修改显示状态,包括工具栏以及像Workspace窗口之类的子窗口等。 Insert 用于在工程中增加文件或组件。 Proiect 用于控制整个工程。 Build 用于编译、连接和调试等。 Tools 用于定制VC抖6.0的工具以及访问其他一些工具。 Window 用于改变窗口大小及焦点状态。 Help 使用MSDN库及其他帮助。 编辑c++源程序时,选择File菜单项,出现一个下拉式菜单,再选择该菜单中的New选项(热键为Ctrl+N),这时又出现一个“New”对话框。该框中 有4个选项卡,选择“Files”选项卡,在它的列表框中,选择“C++Source File”(C++源文件)列表项,在屏幕右边的 File文本框中输入文件名,如“abc”,在Location文本框中指定该文件所在的位置,如“e:\vc”,然后单击“OK”按钮出现编辑屏幕。 在编辑屏幕上,可以键入C++的源程序。例如,键入以下名字为abc.cpp的C++源程序。 3
#include void main(){ cout<< "新的一学期开始了!" <} 该程序由一个main()主函数组成。选择File菜单,在File的下拉式菜单中选择Save菜单,保存到abc.cpp文件中。 (2)编译连接和运行源程序这里分单文件程序和多文件程序两种情况进行讲述; ·单文件程序 单文件程序是指该程序只有一个文件,前面输入的例子程序就是一个单文件程序。选择菜单项Build,出现Build的下拉式菜单,在该下拉式菜单中选择“compileabc.cpp”菜单项,这时系统开始对当前的源程序进行编译,在编译过程中,将所发现的错误显示在屏幕下方的“Build”窗口中。所显示的错误信息中指出该错误所在的行号和该错误的性质。用户可根据这些错误信息进行修改。当你用鼠标双击错误信息行时,该错误信息对应的行将高亮显示,或在该行前面用一个箭头加以指示。在修改时采用全屏幕编辑方式根据提示信息中指出的错误性质进行更改。往往因为一个错误而出现多行错误信息,因此,常常在修改一条错误后,再重新编译,如果有错误,再继续修改,直到没有错误为止。在没有错误时,显示错误信息的窗口内将显示如下信息: abcl.obj—0 error(s),0 warning(s) 编译无错后,自动进行连接,并生成以源文件名为名字的可执行文件(.exe)。 执行可执行文件的方法是选择“Build”菜单项中“Execute abc.exe”选项。这时,运行该可执行文件,并将结果显示在另外一个显示执行文件输出结果的窗口中。执行上述程序的可执行文件后,在屏幕上显示出如下结果。按任意键后,屏幕恢复显示源程序窗口。 ·多文件程序 多文件程序是指该程序由两个(或两个以上)文件组成。下面将以一个具体例子来说明编译连接和运行这种程序的方法。 abcl.cpp文件的内容如下: #include int maxint(int,int); void main() { int a,b,c; a=20;b=30; c=maxint(a;b); cout << a << “和”<< b << “和为:”<< c << endl; } abc2.cpp文件的内容如下: int maxint(int x,int y) { return x+y; } 该程序由两个文件abcl.cpp和abc2.cpp组成,每个文件的编辑方法与前面单文件程序的编辑方法相同。编译这种程序的方法如下: ①在某个指定目录(如e:\vc)下建立好这两个C++的源文件。 ②创建一个新的工程文件(chl),方法是选择菜单栏中的File菜单项,出现一个下拉 式菜单,再选择该菜单中的New选项(热键为Ctrl+N),这时又出现一个“New” 对话框。该框中有4个选项卡,选择“Projects”选项卡,在它的列表框中,选择 4
“Win32Console Application'’列表项,在屏幕右边的Projectname文本框中输入工 程名,如“chi”,在Location文本框中指定该文件所在的位置,如“e:\vc”,然 后单击“OK”按钮,则创建了chl工程。 ③将程序文件添加到工程中。选 择菜单栏中菜单项“Project”,在它的下拉式菜单中 选取“Addtoproject”菜单项,再在它的下拉式菜单中选取“Files'’菜单项,出现 一个“搜寻”对话框,在其中选择文件abcl.cpp,单击“打开”按钮,将该文件添 加到chl工程中。采用同样的步骤将abc2.cpp添加到chl工程中。这样就完整地建 立了chl工程文件。 ④编译连接工程文件。选取菜单栏中Build菜单项,在该菜单项的下拉式菜单中,再 选择“Buildchl.exe”菜单项。这时便对工程文件中所添加的C++源文件进行编译 和连接。如果发现有错误,将在显示错误信息的窗口中显示出错误信息,根据错误 信息行的内容对源程序中出现的错误进行修改,直到没有错误信息为止,这时生成 了可执行文件,其名字是工程文件名。 ⑤运行工程文件。经过前面4步后,生成了以工程文件名为名字的可执行文件。执行 该文件的方法是选择菜单栏中“Build”菜单项,在该菜单项的下拉式菜单中选择 “E,(ecutechl.exe”选项。这时执行该文件并将输出结果显示在另一个窗口中。该 程序执行后输出。
四、 实验练习 1. 模仿练习 编写程序显示字符串“ 新疆农业大学 ” 2. 调试练习 以下程序不能够正确编译,找出所有错误并改正,使它能够正确编译,正确执行,显示结果。 1) # include void main(){ int i=125 cout<<”i=”<<125<} 2)正确的输出
3)错误的程序 3. 编程练习 编写程序输出如下图所示图形