Tutorial实验手册
实验指导手册Ver2012

操作系统实验指导手册赵霞北京工商大学计算机与信息工程学院2012-9目录前言 (3)实验1:Linux的安装与基本操作 (4)目的与要求 (4)1.用Ubuntu 11.04的光盘安装系统 (4)2.操作系统启动模式 (4)3.用户管理 (5)4.进程管理 (7)5.文件系统命令 (7)6.vim编辑器 (9)7.使用U盘 (11)参考命令: (11)要求: (11)8.基本网络管理命令 (12)9.其他网络管理命令 (12)10.SSH服务与客户端 (13)11.网络服务器配置 (13)实验2:shell编程和GCC编程环境 (15)目的 (15)1.shell编程 (15)2.GCC编程环境 (16)3.GDB调试 (18)实验3:编程与调试:进程管理 (22)目的 (22)1.练习1 (22)2.练习2 (23)3.练习3 (24)4.练习4 (25)5.练习5 (26)实验4:编程与调试:内存管理 (28)目的 (28)1.练习1 (28)2.练习2 (29)3.练习3 (30)实验5:编程与调试:文件操作 (31)目的 (31)1.练习1 (31)2.练习2 (33)3.练习3 (36)实验6:编程与调试:网络通信 (41)目的 (41)1.练习1 (41)2.练习2 (42)3.练习3 (44)4.练习4 (46)实验7:编程与调试:线程编程 (48)目的 (48)1.练习1 (48)2.练习2 (49)综合实验 (56)1.题目: (56)2.目的 (56)3.实验要求与评价 (56)4.实验内容及学时安排 (57)前言本实验指导手册供学习《操作系统》课程的学生和教师使用。
实验内容包括:独立实验共7个,综合实验1个。
实验1偏重使用和操作,实验2-7偏重编程和开发,由教师根据课时安排和学生的实际情况选择。
学生也可以根据自己的情况和兴趣在课外学习和研究使用参考。
给读者的建议:1、对于Linux操作系统的初学者,配合各类Linux操作系统使用类的书籍使用,建议到图书馆里借阅适合自己的相关参考书。
Python Tutorial 手册

Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. Python’s elegant syntax and dynamic typing, together with its interpreted nature, make it an ideal language for scripting and rapid application development in many areas on most platforms. Python 是一种容易学习的强大语言。它包括了高效的高级数据结构,提供了一个简单但很有效的方式进 行面向对象编程。Python 优雅的语法,动态类型,以及它天然的解释能力,使其成为了大多数平台上应 用于各领域理想的脚本语言以及开发环境。 The Python interpreter and the extensive standard library are freely available in source or binary form for all major platforms from the Python Web site, /, and can be freely distributed. The same site also contains distributions of and pointers to many free third party Python modules, programs and tools, and additional documentation. Python 解释器及其扩展标准库的源码和编译版本可以从Python 的Web 站点, /, 及其所 有镜像站上免费获得,并且可以自由发布。该站点上也提供了Python 的一些第三方模块,程序,工具, 以及附加的文档。 The Python interpreter is easily extended with new functions and data types implemented in C or C++ (or other languages callable from C). Python is also suitable as an extension language for customizable applications. Python 的解释器很容易通过C 或C++ (或者其它可以由C来调用的语言)来实现功能和数据结构的扩 展。因此Python 也很适于做为定制应用的一种扩展语言。 This tutorial introduces the reader informally to the basic concepts and features of the Python language and system. It helps to have a Python interpreter handy for hands-on experience, but all examples are self-contained, so the tutorial can be read off-line as well. 这个手册介绍了一些Python 语言及其系统的基本知识与概念。这有助于读者对Python 有一个基本的认 识,当然所有的例子都包括在里面文中了,所以这本手册很适合离线阅读。 For a description of standard objects and modules, see the Python Library Reference document. The Python Reference Manual gives a more formal definition of the language. To write extensions in C or C++, read Extending and Embedding the Python Interpreter and Python/C API Reference. There are also several books covering Python in depth. 需要有关标准对象和模块的详细介绍的话,请查询Python 库参考手册 文档。Python 参考手册 提供 了更多的关于语言方面的正式说明。需要编写C或C++扩展,请阅读Python 解释器的扩展和集成 以 及Python/C API 参考手册。这几本书涵盖了各个深度上的Python知识。 This tutorial does not attempt to be comprehensive and cover every single feature, or even every commonly used feature. Instead, it introduces many of Python’s most noteworthy features, and will give you a good idea of the language’s flavor and style. After reading it, you will be able to read and write Python modules and programs, and you will be ready to learn more about the various Python library modules described in the Python Library Reference. 本手册不会涵盖Python 的所有功能,也不会去解释所用到的所有相关的知识。相反,它介绍了许 多Python 中最引人注目的功能,这会对读者掌握这门语言的风格大有帮助。读过它后,你应该可以阅读 和编写Python 模块和程序,接下来可以从Python 库参考手册 中进一步学习Python复杂多变的库和模块。
Using this tutorial 如何使用此指南

Using this tutorial 如何使用此指南This tutorial is meant to be used as a step-by-step guide to certain operations in TuneLab Pro. 本指南将一步一步的指导您在TuneLab Pro中的操作. Many of these operations involve the keyboard.有相当一部分操作涉及到键盘的使用。
However, the keys that you press when this tutorial is displayed do not always go to TuneLab Pro.然而,当此帮助页面显示时,您按下键盘键并不总是能够回到TuneLab Pro操作界面。
In fact, every time you call this tutorial and every time you click in it, the tutorial acquires the "focus" of the keyboard.实际上,每当您查看本指南或者在本指南显示的区域内操作鼠标时,焦点总是被当前的指南页面获得的。
To make the keys go to TuneLab Pro, you need to give the focus back to TuneLab Pro. 要想使用键盘来控制TuneLab Pro 的操作,您需要使焦点回到TuneLab Pro界面中。
You can do that by clicking anywhere inside the TuneLab Pro window. 您可使用鼠标点击TuneLab Pro窗口来实现。
Remember to do that whenever the instructions in this tutorial call for using the keyboard.当执行本指南中使用键盘的操作时,记得上述的提示。
Analyst software软件操作指南2A-1Tutorial forManual MS_MS

II A. Manual MS-MS Setup and Acquisition教程本教程描述如何在manual tune window 下setup 和进行 Product, Precursor and Neutral Lose 扫描实验。
使用4个化合物混合物(有一个共同碎片离子)溶液(1mL , 1ng/μL ) ,也可自行选择化合物配置。
1. Q1 Single MS Experiment(Q1全扫描):点击T左边的hourglass icon (standby)使仪器在standby状态,点击Hardware Configuration,激活MassSpecOnly 。
先点击T,再点击navigation bar下的 manual-tuning 。
激活(开动)装有化合物的syringe pump (10 μL/min) (API3000,手动、API2000 通过syringe pump drop down menu控制). 从scan type menu中选择Q1 scan。
Gas settings 推荐以下值: Neb/Gas1 - 8 (API3000) or 25 (API2000), turbo/Gas2 - off, Temp – off, and IS – default。
输入 mass range(能包括化合物分子离子峰)和 scan time :5 second。
进入advanced MS tab ,and select fast profile for step of .2 and select MCA。
Input a DP of 40 and a FP of 250 under the compound header。
检查和调整离子源的位置(参见section 1-2)。
点击Acquire进行 Q1 experiment。
(To obtain optimal values, manual tuning is required of all compound dependent parameters.)下谱图中四个化合物的分子离子分别为 M/Z 251.2,265.0, 279.2 and 311.2。
模拟CMOS集成电路设计实验指导手册

目录第一部分.前言第二部分.实验的基础知识第三部分.实验内容1.cadence virtuoso schematic进行电路图的绘制2.cadence virtuoso analog environment电路性能模拟3.cadence virtuoso layout editor进行版图设计4.cadence virtuoso DRC Extract LVS以及后仿真等。
第四部分.附件1.Cadence schematic simple tutorial2.cadence virtuoso layout editor tutorial3.SMIC0.18um library第一部分.前言本实验为微电子系专业选修课程《模拟CMOS集成电路设计》的配套实验。
本实验围绕如何实现一个给定性能参数要求的简单差分运算放大器而展开。
通过该实验,使得学生能够建立模拟集成电路设计的基本概念,了解设计的基本方法,熟悉模拟CMOS集成电路设计的典型流程,了解在每一个流程中所应用的EDA工具,并能较熟练地使用每个流程对应的设计工具。
通过让学生自己分析每个流程中所出现的问题,把课程所学知识联系实际,从而增强学生分析问题、解决问题的能力。
本实验的内容以教材一至十章内容为基础,因此,该实验适合在开课学期的后半部分时间开展。
本实验讲义内容安排如下,首先是前言,其次是基础知识,接下来是实际实验内容,具体分成四个过程,最后是附录。
建议在实际实验开始之前依次浏览三个附件文档。
第二部分.实验的基础知识该实验内容所涉及的基础知识包括两部分:电路方面、流程方面和EDA设计工具使用方面。
1.电路有关的基础知识。
该实验是围绕如何实现基于SMIC0.18um工艺下,一个给定性能参数要求的简单差分运算放大器而展开,因此,以电流镜做负载的基本五管差分运算放大器的性能分析是该实验的理论基础。
具体内容在讲义以及课件相关章节中有详细介绍。
以下用一张图简单重述该电路的有关性能与各元件参数之间的关系分析结论。
python实验指导手册

实验1开始python编程目的和要求(1)了解什么是python(2)了解python的特性(3)学习下载和安装python(4)学习执行python命令和脚本文件的方法(5)学习python语音的基本语法(6)下载和安装Anaconda的方法(7)学习使用python的集成开发环境Anaconda&spyder的方法实验准备了解python(1)简单易学(2)Python是开源的、免费的(3)Python是高级语言(4)高可移植性(5)Python是解释型语言(6)Python全面支持面向对象的程序设计思想(7)高可扩展性(8)支持嵌入式编程(9)功能强大的开发库实验内容本实验主要包含以下内容(1)练习下载python(2)练习安装python(3)练习执行python命令和脚本文件(4)练习下载和安装pywin32(5)练习使用python的文本编辑juperNotebook(6)练习使用python的集成开发环境spyder1.下载python☐访问如下网址:选择下载python3.4系列最新版本2.安装python☐在Windows7中安装后,在开始菜单的所有程序中会出现一个Python2.7分组。
单击其下面的Python2.7(commandline-32bit)菜单项,就可以打开python命令窗口,如图1-5所示。
也可以打开Windows命令窗口,然后运行python命令,来打开python命令窗口。
3.执行python命令和脚本☐创建一个文件MyfirstPython.py,使用记事本编辑它的内容如下:#MyfirstPythonprogramprint('IamPython')☐保存后,打开命令窗口。
切换到MyfirstPython.py所在的目录,然后执行下面的命令:pythonMyfirstPython.py☐运行结果如下:IamPython4.下载和安装Pywin32访问下面的网址可以下载Pywin32安装包。
Vensim使用手册

Vensim ® PLE 快速参考与自学手册台湾科技大学摘要1.File(档案)与cutting/pasting(剪下/贴上) 的操作如微软窗口系统之功能‧2.许多功能列中经常使用的功能项目都放在工具栏的按钮,以利操作‧3.专门术语:”click”即按压鼠标左键再释放之‧”drag” 即按压鼠标左键不释放而移动鼠标‧”right-click” 即按压鼠标右键再释放之‧而”control-click” 即按ctrol键及按鼠标左键再释放之,结果与”right-click”相同‧4.Vensim使用默认变量,无论建立任何模块,系统自动建立必要变量而使用它;如标题栏的FINAL TIME变数‧________________________Copyright 2002, Craig W. Kirkwood. All rights reserved. (Email: craig.kirkwood@) Updated on December 12, 2002 by Jennifer Cihla Vender using VensimPLE Version 5.0c1。
分析工具注意事项:1.若有较多的模拟执行,则分析工具是无法运作的。
因此,在实验中,必须仔细地追踪在窗口中所显示的结果。
2.大部分窗口显示有关工作变量的信息。
在窗口中选择一变量,用鼠标双击变量即成工作变量。
3.在分析工具所输出图形左上角功能列如右图,其中最左边的键是删除窗口键。
在其右边则是锁住删除功能键,再按一次则可恢复删除功能。
其右边则是打印机功能键可 以打印此窗口内容。
其右边键则是复制窗口至回纹夹。
最后键则是储存窗口内容于档案。
4.在图形内有多个曲线,这些曲线会使用不同颜色显示。
黑白打印机打印时很难区隔它,因此在Option 功能键,选择”Show Line Markers on Graph Lines”可以在曲线上标示不同数字以示区隔。
实验四 Tutorial4 shell编程

Tutorial 4 shell 编程1 实验简介本次实验内容主要包括:Shell 变量的定义及其应用,Shell 中的特殊字符,条件判断结构与循环结构,函数的定义和使用。
2 实验目的(1)了解Shell 的作用和主要分类(2)练习编写简单的Shell 程序3 实验步骤(1)创建一个简单的列目录和日期的shell 脚本并运行。
步骤:①输入下列命令,创建一个新文件:$ cat >new_file②输入下列行:echo “Your files are”lsecho “today is”date 按回车键将光标移到一个新行,按Ctrl+D键保存并退出。
③检查文件内容,确保它是正确的:$cat new_file④运行脚本,输入它的文件名:$. /new_script 该脚本不运行⑤输入下列命令,显示文件的权限:ls –l new _file 权限表明该文件不是可执行。
要通过简单调用文件名来运行脚本,必须有权限。
⑥输入下列命令,使new_file变成可执行文件。
chmod a+x new_file⑦要查看新的权限,输入:$ls –l 现在拥有文件的读、写和执行权限。
⑧输入新脚本的名字以执行它:$. /new_file所有输入到文件的命令都执行,并输出到屏幕上。
(也可以用vi创建新文件,用:wq 命令退出)(2)用Shell 语言编制一Shell 程序,该程序在用户输入年、月之后,自动打印数出该年该月的日历。
用vi times 或cat> times 命令均可echo "please input the month:" read monthecho "please input the year:"read yearcal $month $year$ bash times (试试用此命令执行脚本)(3)命令执行控制符练习①命令顺序执行用法:$ cd ..;pwd;ls②命令替换符的用法:$ echo Today is `date …+%A‟`③条件执行命令用法:用vi 命令建立两个文件file1 和file2,然后执行下列文件,将文件file1 复制到file2,如果成功则删除file1$ cp file1 file2 && rm file1④后台执行命令用法:在后台顺序执行两命令,20 秒后跳出提示信息“Tea isready”:$ ( sleep 20; echo Tea is ready ) &⑤命令组合符用法:将两命令的输出送到mydoc,mydoc 的第 1 行是Report,后面是file3 的内容:$ ( echo Report; cat file3 ) > mydoc(4)元字符的引用(1)$ echo “* is a wildcard.”#消除*字符的特殊含义(2)$ echo …The prompter is “$”‟ #消除双引号字符的特殊含义(3)$ echo “Don‟t do that!”#消除单引号字符的特殊含义(4)$ echo “Name ID Age Class” #消除空格符的特殊含义(5)编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同则显示“Match”,并显示“End of program”,如果不同则显示“End ofprogram”(先用vi 或cat>命令建立脚本)echo -n "word1:" read word1echo -n "word2:" read word2if test "$word1"="$word2" thenecho "Match"fiecho "End of program."(6)修改上述程序,编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同显示“Match”,不同则显示“Not match”,最后显示“End of program”。
Tutorial 使用指南

使用指南(Tutorial)修订版序从首次接触这个软件到现在,有一段时间了。
那时由于急着使用,因此对一些认为不太重要的地方没有进行整理。
后来才发现,其实每一部分都是很有用的。
此修订,一个是将LineSim(Tutorial)与后加的Crosstalk(Tutorial)的目录统一起来,再有就是原文基础上增加了多板仿真(Tutorial)一节。
同样,对于那一时期我整理的BoardSim 、LineSim使用手册,也有同样的一个没有对一些章节进行翻译整理问题(当初认为不太重要)。
而实际上使用时,有一些东西是非常重要的,同时也顺便进行了翻译。
此外,通过使用,对该软件有了更多一些理解,显然以前只从字面翻译的东西不太好理解,等我有时间将它们重新整理后,再提供给初学的朋友。
对在学习中给予我大量无私帮助的Aming、pandajohn、lzd 等网友表示忠心的感谢。
P o q i0552002-8-202002-8-20目录使用指南(TUTORIAL ) 1 第一章 LINESIM4 1.1 在L INE S IM 里时钟信号仿真的教学演示 4 第二章 时钟网络的EMC 分析 7 2.1 对是中网络进行EMC 分析7 第三章 LINESIM'S 的干扰、差分信号以及强制约束特性 8 3.1 “受害者”和 “入侵者” 8 3.2如何定线间耦合。
8 3.3 运行仿真观察交出干扰现象9 3.4 增加线间距离减少交叉干扰(从8 MILS 到 12 MILS ) 93.5 减少绝缘层介电常数减少交叉干扰 93.6 使用差分线的例子(关于差分阻抗) 93.7仿真差分线 10第四章 BOARDSIM114.1 快速分析整板的信号完整性和EMC 问题 11 4.2 检查报告文件 11 4.3 对于时钟网络详细的仿真 11 4.4 运行详细仿真步骤: 11 4.5 时钟网络CLK 的完整性仿真 12 第五章 关于集成电路的MODELS 145.1 模型M ODELS 以及如何利用T ERMINATOR W IZARD 自动创建终接负载的方法 14 5.2 修改U3的模型设置(在EASY.MOD 库里CMOS,5V,FAST ) 14 5.3 选择模型(管脚道管脚)C HOOSING M ODELS I NTERACTIVELY (交互), P IN -BY -P IN 14 5.4 搜寻模型(F INDING M ODELS (THE "M ODEL F INDER "S PREADSHEET ) 15 5.5 例子:一个没有终接的网络 15 第六章 BOARDSIM 的干扰仿真 186.1 B OARD S IM 干扰仿真如何工作 186.3仿真的例子:在一个时钟网络上预测干扰 18 6.3.1加载本例的例题“DEMO2.HYP” 18 6.3.2A UTOMATICALLY F INDING "A GGRESSOR"N ETS 18 6.3.3为仿真设置IC模型 19 6.3.4查看在耦合区域里干扰实在什么地方产生的 19 6.3.5驱动IC压摆率影响干扰和攻击网络 20 6.3.6电气门限对比几何门限 20 6.3.7用交互式仿真"CLK2"网络 20 6.4快速仿真:对整个PCB板作出干扰强度报告 20 6.5运行详细的批模式干扰仿真 21第七章关于多板仿真237.1多板仿真例题,检查交叉在两块板子上网络的信号质量 23 7.2浏览在多板向导中查看建立多板项目的方法 24 7.3仿真一个网络A024 7.4用EBD模型仿真24HyperLynxHyperLynx是高速仿真工具,包括信号完整性(signal-integrity)、交叉干扰(crosstalk)、电磁屏蔽仿真(EMC)。
tutorial 中文手册2.2

感 谢本tutorial Manual 2.2翻译文档在许多网友的关心和支持下,得以翻译成功,在此对他们表示热烈地感谢:蝈蝈、fiona、kailinziv、Yan、杀毒软件、tiny0o0、timothy、prolee等关心TG手册翻译的热心朋友。
关于本文档内容说明:由于本手册由不同网友翻译,可能对某些概念有不同的理解,翻译可能不大一样,但决不影响理解,欢迎大家探讨。
再一次对各位网友的努力和汗水表示感谢!如有什么问题可以联系我:Mail:tiny0o0@注:本文档内容版权归X Y Z scientific company 所有,谢绝任何意图商用。
I、TrueGrid介绍True Grid是一套优秀的、功能强大的通用网格生成前处理软件。
它可以方便快速生成优化的、高质量的、多块结构的六面体网格模型。
作为一套简单易用,交互式、批处理前处理器,True Grid支持三十多款当今主流的分析软件。
True Grid是基于多块体结构(multiple-block-structured)的网格划分工具,尽管这个指南手册开始会提供一些介绍信息,新手还是强烈要求阅读用户手册(True Grid® User’s Manual)的前2章,用户指南和参考手册。
True Grid是几何和网格形成过程是分开进行。
曲面和曲线形成的方式有以下几种:内部产生,从CAD/CAE系统导出IGES格式导入TG,或用vpsd命令导入多边曲面。
块网格(block mesh)初始化然后通过各种变换与几何模型匹配形成最后的有限元模型。
True Grid网格划分过程:运用block命令初始化块网格;块网格部分会被删掉以使拓扑结构与划分目标对应;块网格部分通过移动,曲线定位,曲面投影等方法进行变换;网格插值、光滑和Zoning(控制边界节点分布)等技术可以用来形成更好的网格;块网格之间独立形成,然后通过块边界面(BB)和普通节点合并命令(指定容差范围内合并)将各块网格合并成完整的有限元模型。
freescale实验教程

第一部分基础实验第一章基础理论1.1 单片机程序设计与应用系统开发过程单片机的行为是受程序控制的,因此开发与使用单片机必然会遇到程序设计的问题,单片机设计是一个硬件与软件结合的问题,而其软件设计的工作往往占有更多的成分。
一个完整的嵌入式系统开发过程,除了硬件电路的设计外,软件工作包括程序编辑、汇编或编译、程序下载、程序调试、脱机验证等过程。
程序的编辑就是按照一定的格式,采用汇编或者C等高级语言进行编写。
早期的单片机程序设计在DOS环境下符合一定的格式编辑,然后采用一个合适的软件汇编,生成二进制等CPU能识别的目标代码,将单片机(内带程序存储器的情形)或程序存储器放入编程器,编程器通过串口或USB等接口与PC机相连,将PC机存放的CPU能识别的代码下载到单片机或程序存储器中。
图1-1是一个简单的说明:图1-1 程序设计过程采用以上方式进行开发的情形下,单片机必须是能从电路板上取下来,这对贴片封装的单片机就无能为力了。
此时为了能在线仿真调试,需要昂贵的仿真头和仿真电缆与软件,而且几乎没有仿真器能做到100%的功能仿真,甚至有的问题正是来自于仿真器。
随着技术的发展,采用ISP技术,只要在目标电路板上预留一个接口,通过一个很小的下载器,与PC机串、并口或USB口相连,就可以进行程序的调试与下载,尤其是有的单片机具有JTAG接口,下载调试更加方便,调试尽可能少占用单片机资源,更有甚者,像freescale的单片机,内置背景调试控制器(BDC ,Background Debug Controller),支持一线ISP和程序调试。
目前程序开发需要的各种软件,如编辑、汇编、编译、链接、调试、下载等都集成到一个环境下(集成开发环境IDE),这些开发环境有的是针对某种单片机,由单片机厂商提供,有的则比较通用一些,这些开发环境如Silicon Laboratories,AVR Studio,Keil uVision,Freescale CodeWarrior等。
实验指导手册

[11]实验指导手册(共34页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--《数据结构》实验指导手册计算机教研室1.实验教学的目的:通过实验,加深对算法与数据结构基本知识的理解,掌握数据结构的理论和设计技术及其使用,培养学生数据结构的设计、开发能力。
2.实验教学的要求:学生每次实验前必须根据实验指导手册,设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,必须学会使用在线帮助解决实验中遇到的问题,必须应用理论知识分析问题、解决问题。
3.实验内容:实验1:VC6的使用一、实验目的理解和掌握如何使用Visual C++环境编写C/C++程序。
二、实验环境装有Visual C++的计算机。
本次实验共计4学时。
三、实验内容1、熟悉VC6环境掌握如何创建控制台应用程序。
掌握一些常用快捷键,例如编译F7,运行Ctrl+F5,调试运行F5,单步运行F10/F11,设置断点F9,格式化代码Alt+F8。
2、掌握如何编译程序理解编译过程中的错误信息,并掌握如何排错。
3、掌握如何调试程序掌握如何通过设置断点来单步调试程序,如何查看当前变量的值。
4、实验题:完成实验教材的实验题、、。
要求:实现该实验结果。
通过该实验题,熟悉VC6环境下的程序编写、编译、调试。
实验2:顺序表基本运算一、实验目的(1)掌握顺序表的各种基本运算的实现。
(2)能够利用基本运算进行顺序表的操作。
二、实验环境装有Visual C++的计算机。
本次实验共计2学时。
三、实验内容1、顺序表基本运算实现顺序表的各种基本运算;并在此基础上设计一个主程序,完成如下功能:(1)初始化顺序表L(元素类型为char型)(2)依次采用尾插法插入a, b, c, d, e元素(3)输出顺序表L(4)输出顺序表L的长度(5)判断顺序表L是否为空(6)输出顺序表L的第3个元素(7)输出元素’a’的位置(8)在第4个元素位置上插入’f’元素(9)输出顺序表L(10)删除顺序表L的第3个元素(11)输出顺序表(12)释放顺序表提示:可以参考上课教材、实验教材的实验题。
Tutorial 1 熟悉MATLAB工作环境

Tutorial 1 熟悉MATLAB 工作环境一、实验目的1.熟悉启动和退出MATLAB 软件的方法。
2.熟悉MATLAB 软件的运行环境。
3.熟悉MATLAB 的基本操作。
二、实验设备及条件计算机一台(带有MATLAB6.0以上的软件环境)。
三、实验内容1.练习下面指令:cd,clear,dir,path,help,who,whos,save,load 。
2.建立自己的工作目录MYBIN 和MYDATA ,并将它们分别加到搜索路径的前面或者后面。
3.求23)]47(*212[÷-+的算术运算结果。
4.M 文件的建立,建立M 文件,求出下列表达式的值:5.利用MATLAB 的帮助功能分别查询inv 、plot 、max 、round 函数的功能和用法。
四、运行环境介绍及注意事项1.运行环境介绍打开Matlab 软件运行环境有图1-1所示的界面。
⎥⎦⎤⎢⎣⎡-+=++=+=545.0212),1ln(21185sin 22221i x x x z e z o 其中图1-1 MATLAB的用户界面图1-1MATLAB用户界面中有File、Edit、View、Web、Windows、Help六个主菜单,每一个菜单之下又各有下一级子菜单。
1为当前路径选择窗口,可点击打开文件夹选择框选择当前工作路径。
2中内容可通过点击3和4分别显示分类帮助文件夹和工作空间,工作空间窗口显示当前已经定义的变量值。
5中内容可通过点击6和7分别显示指令历史记录与当前目录下文件。
8为指令窗口,在符号“>>”后键入指令,执行相关动作,本次实验内容便在指令窗口内输入并运行,每输完一条指令,回车即执行。
2.在指令窗操作时应特别注意以下几点1)所有输入的指令、公式或数值必须按下回车键以后才能执行。
例如:>>(10*19+2/4-34)/2*3 (回车)ans=234.75002)所有的指令、变量名称都要区分字母的大小写。
实验二 Tutorial 2 Linux 基本命令操作2

Tutorial 2 Linux 基本命令操作21 实验简介虽然目前linux 图像界面的使用已相当的方便,但是有些操作还是在字符界面下使用比较灵活。
除此之外,使用字符界面登陆linux 系统,系统资源的消耗也比较少,从而可以提高系统性能。
本次实验内容主要包括:linxu 下文件和目录操作命令的使用方法。
2 实验目的(1)掌握远程登录Linux 系统的软件putty 的基本用法。
(2)掌握文件和目录的区别(3)熟悉文件和目录的相关操作:建立、复制、移动、删除、重命名、查找、统计等(4)掌握输入、输出重定向的用法(5)掌握find 的常见查找模式(6)理解文件的类型及查看3 实验准备(1)了解远程登录的概念,以及远程登录软件putty。
(2)了解linux 命令行的基本概念,掌握通配符的使用方法。
(3)了解绝对路径和相对路径的概念及表达方法。
4 远程登录软件putty的基本用法实验步骤基本做法同实验1.5 Linux 文件和目录操作命令说明:在下面的文档中的$为系统提示符。
(1) 使用cd 和pwd 命令,掌握相对路径和绝对路径。
对照右图,假如从目录user3 开始,键完以下命令后,你的位置会在哪里。
请将结果填在横线上。
$pwd /home/user3$cd ..$pwd$cd..$cd usr$pwd$cd /usr$pwd$cd.. /tmp$pwd$cd.$pwd(2)检查当前的子目录pwd。
$ pwd(3) 在你的注册目录下创建(mkdir)子目录:dir1、dir2。
$ mkdir dir1 dir2(4) 在你的主目录中创建一个叫junk 的目录。
将这个目录变为工作目录,应当使用什么命令?这个新目录的绝对路径名是什么?(5) 在主目录创建以下目录,要求只能用一个命令行:junk/dira/dirljunk/dirajunk/dira/dir2junk/dira/dirl/dirc你碰到什么问题了吗?如果碰到问题,在重试之前,将刚才创建的所有目录删除,这个删除应该使用哪一个命令?mkdir –p junk/dira/dir1/dirc junk/dira/dir2 (-p创建父目录)(6) 在主目录仅使用rmdir 命令,删除在junk 目录下的所有子目录。
实训指导手册

实训指导手册所在院系所学专业班级学号学生姓名指导教师二零一一年一月二日编写说明21世纪是经济全球化的世纪,也是国际金融环境面临巨大挑战的世纪,更是全球外汇市场各种金融创新活动层出不穷的世纪。
外汇市场是发生金融危机的主战场,这就要求各国充分发挥外汇市场的作用和对外汇市场进行有效监管,对相关从业人员提出了较高的要求,既要有完备合理的知识结构,又要有较强的实践操作能力。
为了适应新形势对人才的需要,我们开设了“外汇模拟交易”这门课程。
目的是希望学生通过这次实训,对外汇行情的进行了解和分析,在了解外汇行情基础上,根据世界货币国家的利率变动情况对汇率的影响理论与外汇买卖的原理,选择某种货币进行实盘买卖的外汇交易模拟操作;了解和掌握外汇保证金交易的原理,熟悉在保证金交易下的外汇买卖价格的确认并根据外汇买卖原理进行多头(空头)交易的模拟操作。
本指导手册主要包括每次操作训练的内容和目的、每次操作训练的相关知识点及操作步骤,让学生更好地掌握交易基本程序和主要操作技能。
参与编写人员主要有陈伯云、曾祥师、李长云。
金融学教研室实验须知1、实验室是进行实验教学活动的重要场所。
学生应积极参加教学计划规定的各项实验,服从实验指导教师的指导,严格遵守实验室的各项制度和操作规程,室内保持肃静、整洁,不准吸烟,不准高声谈话和乱丢纸屑杂物。
2、有特殊要求的实验室,学生进入时,应按规定穿戴工作衣帽,着装整洁、大方。
3、实验前对实验内容进行认真预习,明确实验的目的、要求、方法和步骤及观察内容。
4、实验时应按要求规范操作,仔细观察实验现象,详细记录实验结果。
5、实验中不得随意动用与规定实验无关的其它仪器、设备、工具、文件与材料,不得使用其它组的仪器设备及材料,不得随意做规定以外的其它实验。
6、实验后,要认真分析实验结果及内容,按时按要求完成实验报告,交指导教师批阅,不得无故不写或不交实验报告。
7、自觉爱护室内的一切仪器设备和其它财产,不得将实验室物品乱拿、乱用、乱拆、乱装或私自带出室外。
Verilog_tutorial 文档

Candence NC-Verilog simulator tutorial第一章介绍这个手册将向你介绍使用NC-Verilog simulator和SimVision。
本文使用的是一个用Veilog硬件编程语言编写的一个饮料分配机,通过这个例子你将学会:·编译Verilog源文件,描述设计,在NC-Launch(用于管理你的大型设计的图形交互接口)上进行设计的仿真。
NCLaunch帮助你配置和启动编译器,描述器和仿真器。
当然你还可以在NCLaunch上运行像SDF compiler,HDL Analysis and Lint,Code Coverage Analyzer,NCBrowse,and Comparescan.之类的工具。
·在SimVision分析环境下进行对设计中的问题的调试。
SimVision是一个candence仿真器统一的图形化的调试环境。
SimVision可以用于调试用verilog,vhdl,SystemC或者它们混合写成的数字,仿真,或数模混合电路的设计。
你可以在以下几种模式运行SimVision:·Simulate模式在Simulate模式下你可以实时的看到仿真的数据。
也就是说,你可以在仿真仿真的过程中就进行数据的分析。
你可以通过对设计设置断点和分步来达到控制仿真的。
为了帮助你追踪整个仿真过程,SimVision提供了几个工具:·控制台窗口Console Window·源浏览器Source Browser·设计浏览器Design Browser·循环阅读器Cycle Viewer·原理图追踪Schematic Tracer·信号流浏览器Signal Flow Browser·波形窗口Waveform Window·寄存器窗口Register Window这些窗口之间是连接了的,所以如果你在一个窗口中选中了一个对象,那么在其它窗口中也会被选中。
transcad实验操作手册(完整版)

• 单击Zoom In工具 并单击地图上任一地 方来放大地图
• 选择File-Save As并输入“mymap” • 单击Save • 选择File-Close来关闭地图
练习:保存并找回地图
地图层的风格
• 点的风格 • 线的风格 • 面的风格
地图背景
File-Properties
练习:使用风格
• 选择File-Open或单击工具条上的 ,然 后打开Tutorial文件夹中的地图文件 NYCSTYLE.MAP
• 选择Map-Layers或单击 • 在层列表中选择Streets,并单击Style。
• 恢复初始的比例尺和中心
– 选择Map-Initial Scale或单击工具框中的
练习:在地图上移动
• 选择File-Open或单击工具条上的 ,然 后打开Tutorial文件夹中的地图文件 Locator.MAP
• 单击Zoom In工具 然后单击地图上的任 一位置。
• 在地图任一部分拖拽一长方形 • 选择Map-Previous Scale或单击 来恢
练习:自动控制地图
练习:自动控制地图
• 选择Map-Scale或单击 ,设定Ratio的 比例为1:100,000,并单击OK。Street显 示,但stores层没有显示。
• 选择Map-Layers或单击 ,单击层列表 中的Stores,并单击Autoscale
练习:自动控制地图
• 更改smallest 比例为1:100,000,单击OK ,然后再单击Close。
– 单击Add Layer来显示File Open对话框 – 选择Geographic File作为文件类型,并选择
计算机网络tutorial

计算机网络tutorialTutorial 02:VLAN 隔离及VLAN 间通信【实验名称】利用两层交换机实现VLAN隔离【实验目的与要求】目的:通过二层交换机配置vlan,用来隔离不同vlan 间的通信要求:1、在二层交换机S2126上建立虚拟局域网vlan10和vlan20;将每个交换机的不同端口分别加入各自的不同vlan;2、将交换机S2126的端口7、15与23配置成access模式;3、检测位于同一交换机的不同vlan端口的计算机之间是否能通讯;5、检测位于同一交换机的相同vlan端口的计算机之间是否能通讯;【实现功能】使在同一VLAN里的计算机系统能进行相互通信,而在不同VLAN里的计算机系统不能进行相互通信。
【实验设备及台套数】每组试验需要以下器材:PC机3-4台、锐捷二层交换机(S2126)1台、双绞线若干【实验拓扑】网络拓扑【实验步骤】实验配置S2126G#configure terminal注:进入交换机全局配置模式S2126G(config)# vlan 10注:创建vlan 10S2126G(config-vlan)# name test10注:将Vlan 10 命名为test10S2126G(config)# vlan 20注:创建vlan 20S2126G(config-vlan)# name test20注:将Vlan 20 命名为test20S2126G(config-if)# interfacefastethernet 0/7注:进入fastethernet 0/7 的接口配置模式S2126G(config-if)# switch access vlan 10 注:将fastethernet 0/7 端口加入vlan 10 中S2126G(config-if)# interfacefastethernet 0/15注:进入fastethernet 0/15 的接口配置模式S2126G(config-if)# switch access vlan 20 注:将fastethernet 0/15 端口加入vlan 20中实验过程清空交换机原有vlan 配置,将fastethernet0/7 口加入vlan 10 , 将fastethernet0/15 口加入vlan 20 。
实验3

三 保存 1. 选择菜单【File(文件)-Save As(另存为)】 命令 2. 在文件名框里添上一个新文件名,比如“我的 工程”。 3. 点击保存按钮。
四 循环录制
(一)设置循环 1.点击网格对齐按钮旁的箭头打开 Snap to Grid(网格 对齐)对话框。
(五)聆听录音结果 1.点击录制音轨的 Restore Strip Size(恢复面板大小)按钮, 显示音轨控制或者直接拖动事件条区右下角的 Vertical Zoom (垂直缩放)按钮。 2.点击 Output(输出)后面的箭头显示可用的输出。 3.选择声卡上的 MIDI 合成器命令启用合适的输出)。 4.在 Ch(通道)输入框,选择一个未使用的 MIDI 通道。 5.在 Patch(音色)输入框,任意选择一个音色。 6.选择菜单命令,打开钢琴卷帘视图。 7.选择菜单命令,打开五线谱视图。 8.选择菜单命令,打开事件列表视图。 9.选择菜单命令,就水平平铺所有视图。 10.点击归零按钮或者按 W 键返回工程的开始处。 11.点击播放或者按空格键。
(二) 设置音轨 1. 在一条音轨上按下待录按钮,启用录制。 2.点击音轨的输出区设置声卡上的 MIDI 合成器(如微软 GS 波表合成器)为输出。 3. 在 Ch(通道)区设置一个未被使用的通道 4.在 Patch(音色)区任意选择一个音色
通常,不要把音轨的输出设置为 MIDI 键盘,而应该设置为一个内部合成器
2.在对话框里选中 Musical Time(音乐时间)按钮,并在右侧 的时长列表里选择 Measure(小节),在 Mode(模式)区选择 Move To(移动到),然后关闭对话框。现在只能在时间标尺上 按照一小节为精度选择。 3. 在时间标尺上选中。 4. 在 Loop/Auto Shuttle(循环/自动梭进)工具栏上,点击 Set Loop to Selection(设置循环到选区)按钮设置 Loop Start(循环开始时间)和 Loop End(循环结束时间)的位置。 5. 点击启用自动循环。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
TinyOSTinyOS是一种专门为嵌入式无线传感器网络所涉及的开源操作系统,它为用户在无线传感器网络有限的资源中能够进行快速的创新和扩展提供了强大的基于组件的架构。
TinyOS 的组件库包括了网络协议,发送服务、传感器驱动和数据采集工具等组件,这些组件都可以在用户的应用程序中被调用。
在这里,TinyOS并不是一个传统意义上的操作系统,它还是一个专门为嵌入式系统所设计的编程框架和用于传感器网络编程的组件库,能够使得基于TinyOS的应用程序足够的小。
同时,TinyOS不支持文件系统,仅仅支持静态内存分配,扩展了一个简单的任务模型并提供了最小设备和网络的抽象。
TinyOS采用了基于组件的编程模型(nesC语言)。
与其他操作系统一样,TinyOS通过层的方式对它自身的软件组件进行组织和管理,处于较低层的组件就越接近与硬件,处于较高层的组件则较接近于应用程序。
一个完整的TinyOS系统应用程序就是由这些组件搭建而成,每一个组件都是一个独立的实体。
在TinyOS的编程中包含了三个概念:命令、事件和任务。
其中,命令和事件是组件之间交互通信的关键机制,任务则是用于传递组件外的消息。
下面将分别介绍这些概念:命令通常是向另一个组件请求服务时所发送的指令,举一个简单的例子就是要求传感器开始进行数据的采集。
与之相对比的是,事件通常是一个组件在完成自身的服务后向外发送的信号。
在传统的操作系统理论中,命令相当于是自上而下的调用而事件相当于回调。
TinyOS编程概览TinyOS操作系统,组件库和所有的应用程序都使用nesC语言进行编程,nesC是一个新型基于组件的结构化编程语言,主要用于进行传感器网络的嵌入式程序开发。
它采用类似于C语言的语法进行编程,因为TinyOS最初是使用汇编和C语言编写的,但是经过长期的使用,研究人员发现汇编和C语言并不能有效、方便地支持面向传感器网络的应用。
因此他们对C语言进行了一定扩展,提出了支持组件化编程的nesC语言,把组件化/模块化思想和基于事件驱动的模型结合在了一起。
TinyOS系统、库及应用程序都是用nesC语言写的语言写的,其目前主要用于诸如传感器网络等嵌入式系统,它具有类似于C 语言的语法,并能与其他软组件链接在一起从而形成一个鲁棒的网络嵌入式系统。
nesC的主要目标是帮助应用程序设计者建立可易于组合成完整、并发式系统的组件,并能够在编译时执行广泛的检查。
TinyOS定义了许多在n esC中所表达的重要概念。
首先,nesC应用程序要建立在定义良好、具有双向接口的组件之上。
其次,nesC定义了并发模型,该模型是基于任务及硬件事件句柄的,在编译时会进行数据争用的检测。
NesC语言在设计中的基本思想主要包括两点。
(1)程序构造机制和组合机制分离:整个程序由多个组件(component)导通(wiring)而成。
组件定义了两种范围,一个是为其接口定义的范围,另一个是为其实现定义的范围。
组件可以以任务(task)形式存在,并具有内在并发性。
线程控制可以通过组件的接口(interface)传递给组件本身。
这些线程可能源于一个任务或者一个硬件中断。
(2)组件的行为规范由一组接口来定义。
接口由组件提供或被使用。
组件提供给用户的功能由它实现的接口体现,而被组件使用的接口则体现了来自于别的提供了该接口的组件提供的功能。
下面将详细介绍nesC语言中的一些关键的组成部分。
1.组件和接口任何一个nesC应用程序都是有一个或多个组件链接起来,从而形成一个完整的可执行程序的。
而接口是一系列声明的有名函数的集合,同时也是连接不同组件的纽带,这条纽带是唯一的,同时也是双向的。
它实际上是组件的提供者(provider)和使用者(user)之间的一条信息传递通道,接口声明了一组函数,称为命令(command),接口的提供者必须实现它们;还声明了另外一组函数,称为事件(event),接口的使用者必须实现它们。
使用接口可以表达组件之间复杂的交互,例如在某些事件中注册感兴趣的操作,而后当事件发生时回调这些操作。
这一点至关重要,因为在TinyOS中,运行时间长的命令都是非阻塞的。
接口由interface 类型定义,其语法如下所示:nesC-file:includes-listopt interface….Interface:Interface identifier { declaration-list}Storage-class-specifier如语法规范所示,在接口标示符后面的声明列表(declaration-list)中给予了相应接口的定义。
声明列表必须由命令或者事件的函数(Storage-class-specifier)组成。
下面,给出一个简单接口定义的例子:如图所示,组件MultiHopEngineM使用了接口Send和组件RadioCRCPacket实现了接口Send,两者通过接口连通起来。
接口代码如下interface Send {command void send(TOS_Msg *m);event void sendDone();}从上面例子可以看出:接口Send包括一个命令send和一个事件sendDone。
提供接口Send的组件RadioCRCPacket需要实现send命令函数,而使用此接口的组件MultiHopEngineM需要实现sendDone事件函数。
同时,一个组件可以使用或提供多个接口以及同一个接口的多个实例。
在nesC中有两种类型的组件,分别称为模块(module)和配置(configuration)。
模块提供应用程序代码,实现一个或多个接口;配置则是用来将其它组件装配起来的组件,将各个组件所使用的接口与其它组件提供的接口连接在一起。
这种行为称为导通(wiring)。
每个nesC 应用程序都由一个顶级配置所描述,其内容就是将该应用程序所用到的所有组件导通起来,形成一个有机整体。
下图为necC的组件类型:图:nesC组件类型2.模块及其组成模块(modules)是主要用C语言来实现的语言规范,他实际上是组件的逻辑功能实体,主要包括命令、事件、任务等的具体实现。
模块的语法定义:Module:module identifier specification module-implementationModule-implementation:implementation {translation-unit}如语法定义所示,translation-unit是一系列C语言声明和定义。
模块中translation-unit的顶层声明属于模块的组件实现范围。
如下面就是一个简单模块的例子。
module BlinkM {provides interface StdControl;uses interface Timer;uses interface Leds;}implementation {bool state;command result_t StdControl.init() {state = FALSE;call Leds.init();return SUCCESS;}command result_t StdControl.start() {return call Timer.start(1000);}command result_t StdControl.stop() {return call Timer.stop();}event result_t Timer.fired() {state = !state;if (state) call Leds.redOn();else call Leds.redOff();return SUCCESS;}}在程序体的2~4行,声明了这个模块所使用和提供的接口名称,然后在implementation 之后,是一系列的C语言声明和定义,可以是:任意标准C语言的声明;定义、任务的声明;定义、命令或事件的实现。
3.配置(Configuration)及其组成配置通过连接一系列其他组件来实现一个组件规范,它主要定义了组件间是怎样相互连接以及如何与配置的规范连接在一起。
配置的语法定义:Configuration:Configuration identifier specification configuration-implementationConfiguration-implementation:Implementation {component-list connection-list}如配置的语法定义所示,component-list中列出来的用来实现此配置的组件列表,connection-list定义了这些组件是怎样互相连接以及如何与配件的规范连接在一起的。
如下是一个简单的配置文件:configuration Blink {}implementation {components Main, BlinkM, TimerC, LedsC;Main.StdControl->BlinkM.StdControl;BlinkM.Timer->TimerC;BlinkM.Leds->LedsC;}配置在implementation之后定义了四个组件Main、BlinkM、TimerC和LedsC,并利用“->”符号将组件中的元素(接口、命令、事件等)联系在了一起,以完成相互之间的调用。
而配置的具体工作原理以及它是如何与模块共同工作的,我们将在后面的小节里为大家详细讲解。
nesC项目文件规范nesC的所有源文件,包括interface、module 和配置,其文件后缀(扩展名)都是“.nc”。
文件名中末尾为M的文件表示Module,如TimerM等。
每一个标准的nesC的应用程序项目都至少包含了4个文件,如:makefile、ponet、program.nc和programM.nc文件。
在makefile文件中,通常包含的内容如下:include ponentinclude $(TOSROOT)/apps/MakeXbowlocalinclude $(MAKERULES)在ponet文件中,定义了顶层的组件名称和传感器板的名称,它将在编译时告诉编译器使用何种内置组件来与传感器板进行数据的通讯。
在MoteWorks中,每一种传感器板都有与之相对应的组件来驱动。
文件内容如下(采用MTS310传感器板,项目名称MyApp):COMPONENT=MyAppSENSORBOARD=mts310program.nc和programM.nc分别为配置和模块文件。
它们构成了整个项目的核心。
MoteWorks的安装与介绍1.MoteWorks介绍MoteWorks是第一款用于工业可开放源代码的,基于标准平台和支持OEM 设备与系统开发的软件平台。