实验2

实验2
实验2

《纤维化学与物理》课程教学模式改革模拟实验——

实验二、粘度法测定高聚物的分子量实验

分子量是高聚物的重要参数之一,它对高聚物力学性能、溶性、流动性有很大影响,因此通过测定分子量及分子量分布可以进一步了解高聚物的性能,用它来指导控制聚合物生产条件,以获得需要的产品。

粘度法测定高聚物分子量,设备简单,操作便利,又有较好的实验精确度。同时,这一方法一旦经验常数被确定就能适用于各种分子量测定范围,它是高聚物生产和科研中用得最广泛,最常用的方法。

一、目的要求

1、掌握毛细管粘度计测定高聚物分子量的原理。

2、学会用粘度法测定特性粘度。

二、实验原理

测定聚合物分子量虽然方法很多,但各种方法都有它的优缺点和适用的局限性,由不同方法得到的分产量的统计平均意义也不一样。

液体的流动是因受外力作用分子进行不可逆位移的过程、液体分子间存在着分子间作用力,因此当液体流动时,分子间就产生反抗其相对位移的摩擦力(内摩擦力),液体的粘度就是液体分子间这种内摩擦力的表现,粘度法正是根据线型高聚物溶液的粘度随分子量增加的原理来测定高聚物分子量的。

采用稀溶液粘度法测定聚合物的分子量、所用仪器设备简单,操作便利,适用的分子量范围大,又有相当好的实验精确度,因此粘度法是一种广泛应用的测定聚合物分子量的方法。但它是一种相对方法.因为特性粘数与分子量经验关系式中的常数要用具它测定分子量的绝对方法予以制定、并且在不同的分子量范围内,通常要用不同常数的经验式。

通常,将纯溶剂的粘度记作η0,将高分子溶液的粘度记作η,溶液粘度与纯溶剂粘度之比η/η0称为“相对粘度”,用ηr表示:

ηr=η/η0(1)而将溶液粘度增加的分数称为“增比粘度”,用“ηsp”表示:

ηsp =(η-η0)/η0=ηr-1 (2)对于一般低分子溶液,其增比粘度ηsp 与浓度成正比关系,则ηsp /C为常数,ηsp /C 又称“比

浓粘度”。对高分子溶液而言,由于大分子链的特殊性,比浓粘度表现出高粘度的特性,并且其增比粘度随溶液粘度的增加而增加,为了得到粘度与分子量之间的对应关系,往往用消除浓度对增比浓度的影响来求得,即取浓度趋于零时的比浓粘度(因为浓度趋于零时,大分子间作用力可忽略不记),用[η]表示,称为特性粘度(或特征粘度)。(毫升/克)

[]0lim C sp c ηη→= 或 []r 0ln lim C

c ηη→= (3) 高聚物的特性粘度与分子量的关系,还与大分子在溶液里的形态有关。一般大分子在溶液中卷得很紧,当流动时,大分子中的溶剂分子随大分子一起流动,则大分子的特性粘度与其分子量的平方根成正比;若大分子在溶液中呈完全伸展和松散状,当流动时,大分子中溶剂分子是完全自由的,此时大分子的特性粘度与分子量成正比,而大分子的形态是大分子链段和大分子——溶剂分子之间相互作用力的反映。因此,特性粘度与分子量的关系随所用溶剂、测定温度不同而不同,目前常采用一个包含两个参数的马克—哈温克经验式来表示:

[]a KM η= (4)

式中,K 、α是与聚合物种类、溶剂体系、温度范围等有关的常数,需经测定分子量的绝对方法标定。对于常见的聚合物溶液体系,α可以从有关手册中查到,对于大部分高分子溶液来说,α的数值在0.5—1.0之间。

将上式化成对数形式:

log[η]=logK + αlogM (5)

只要将经过仔细分级的样品,测定各级分的[η]和用光散射法、渗透压法、超速离心等直接方法测定相对应的分子量,就可以作出logM 的线性关系图,此时直线的斜率为a ,直线的截距为logK ,从而求出K 与a.

三、粘度的求得

1、特性粘度的求得

(1)外推法〈多点法〉

高分子溶液的粘度比纯溶剂的粘度要大得多,溶液的粘度除了与聚合物的分子量有密切关系外,还对溶液浓度有很大的依赖性,所以用粘度法测定聚合物的分子量时要消除浓度对粘度的影响。特性粘度是当溶液浓度超于零时的比浓粘度,表示它们关系的经验式很多,其中常以两个经验式(Huggins 方程式和Kraemer 方程式)表达粘度对浓度的依赖关系:

[][]2

'K C sp

C ηηη+= (6) [][]2''r ln K C C

ηηη=- (7) 以ηsp/c 对C 或ln ηr/c 对C 作图都可以得[η] 外推到)2C=0时的截距为[η]。如下图 可知:溶液的浓度C 与溶液的比浓粘度η

SP /C 或与溶液的比浓对数粘度ln ηr /C 成直线关系(如

图1),在给定体系中K ˊ和K ”均为常数,这样以ηSP /C 对C 或以ln ηr /C 对C 作图并将其直线外推

至C=0处,其截距均为[η]。所以[η]被定义为溶液浓度趋近于零时的比浓粘度或比浓对数粘度。

图1 ηsp /c —c 和ln ηc /c —c 图

外推法求特性粘度需要在几个了同浓度下测定其粘度,从而求得ηsp/c 或 ln ηr/c 对C 的关系,因此又称多点法,此方法比较麻烦,不适应于生产上快速测定的需要,现在经常采用简化的“一点法”。

(2)一点法

通过测定一个浓度下的ηsp 和ηr 求得特性粘度[η]的方法,称为“一点法”。 当'''12

K K +=时,由上(6)和(7)式解出下列关系: [

]η=

(8)

C---溶液浓度(克/毫升) 对于不同的高聚物--溶液体系生产上常采用不同的经验方程式。许多实验表明:很多高分子溶液中'''12

K K +=,其中顺1,4聚丁二烯体系可采用此公式。 在粘度法测定聚合物分子量时,测定溶液粘度的绝对值是很困难的,所以一般都是测定其相对粘度,本实验采用的是毛细管计(乌氏粘度计)。如图(2)

一般被测溶液的浓度是比较稀的,所以在平时实验中选用纯溶剂流出时间100--200秒之间,动能校正项可忽略。

于是:

r t t η= (9) 0

11sp r t t ηη=-=- (10) 通过实验,测定纯溶剂、溶液(不同浓度)流经毛细管a 与b 之间的时间t 、t0,用一点法求得

[η],再用此公式[]a KM η=求得分子量M 。

2、设备仪器

恒温装置(玻璃缸水槽)一个,搅拌马达一台,温度计0~50℃一支,水银接触温度0~50℃一支,继电器一台,秒表,最小读数为0.1秒一块,乌氏粘度计一支,加热器一个,烧杯50ml 一个,容量瓶25ml 一个,砂蕊漏斗G2一个,吸耳球一个。

3、药品

聚乙烯醇,蒸馏水

4、实验操作:

(1)纯溶剂流出时t0的测定:将干净烘干的粘度计,用过滤的纯溶剂洗2到3次,再固定在恒温30±0.1℃水槽中,使其保持垂直,并使E 球全部浸泡在水中并过a 线,然后将过滤好的纯溶剂从A 管加入10~50ml 左右,恒温10~15分钟,开始测定,闭紧C 管上的乳胶管,用吸耳球从B

管将纯溶剂吸入G球的一半,拿下吸耳球打开C管,记下纯溶剂流经ab刻度线之间的时间为t0。重复三次测定,每次误差<0.2秒,取三次的平均值。

(2)溶液流经时间t的测定:

取洁净干燥的聚乙烯醇试样,在分析天平下准确称取0.05±0.001-0.002g,溶于50ml烧杯内(加纯溶剂10ml左右),微微加热,使其完全溶解,但温度不宜高于60℃,待溶质完全溶解后用G2砂蕊漏斗滤至15ml容量瓶内,(用纯溶剂将烧杯洗2~3次滤入容量瓶内)。恒温15分钟左右,用准备好的纯溶剂稀释到刻度,反复摇均匀,再加入粘度计内,(15ml左右)。恒温10~15分钟即测定,测定方法同测定溶剂一样。

四、数据记录及处理

测得数据记入下表:

根据[η]=KM a,聚乙烯醇在水溶液中,30C时,K=42.8×10-3 ,α=0.64。

五、注意事项

1、恒温水槽温度严格控制30±0.1℃,如果高于或低于要重做。

2、加热器、恒温玻璃水槽配用500~600W之间加热器为宜,否则功率太小,加热时间长,功率太大温度波动大。

3、所用玻璃仪器洗净烘干。

4、所用仪器用纯溶剂洗2~3次,然后装满纯溶剂放好。

5、溶剂、溶液倒入回收瓶。

6、使用粘度计时要小心,否则易折断粘度计管。

六、思考题

1、粘度法测定聚合物分子量的原理是什么?

2、聚合物分子量大小与其粘度有何关系?为什么?

3、影响实验结果的主要因素是什么?

4、粘度法测定聚合物分子量应该注意什么?

5、样品溶液制备时,样品分子量高低与相同溶解条件下溶解时间有何对应关系,请解释原因?

6、高聚物样品分子量高低,与其流经时间长短有何对应关系?

七、参考文献

1、焦剑,雷渭媛主编,高聚物结构、性能与测试.北京,化工出版社,2003年.

2、张俐娜,薛奇,莫志深,金熹高编著,高分子物理近代研究方法.武汉,武汉大学出版社,2003年.

3、何平笙,杨海洋,朱平平,瞿保均编,高分子物理实验.合肥,中国科技大学出版社,2002年.

4、吴承佩等.高分子化学实验.合肥,安徽科学技术出版社,1989年.

5、北京大学.《高分子物理实验》,北京大学出版社.1983.

6、于同隐.复旦大学.《高分子实验技术(修订版)》,复旦大学出版社.1993年12月.

7、蔡再生编.《纤维化学与物理》.北京:中国纺织出版社.2009年3月.

8、潘祖仁.《高分子化学》.北京:化学工业出版社.2003.

9、何曼君,陈维孝,董西侠等.《高分子物理》.上海:复旦大学出版社.2007年3月.

10、殷敬华,莫志深.《中国科学院研究生教学丛书-现代高分子物理学(上、下册)》.北京:科学出版社.2001年3月.

11、George Odian,PRINCIPLES OFPOLYMERIZATION, Fourth Edition. 2004 by John Wiley & Sons,2004.

操作系统实验题目2

实验报告撰写要求实验报告要求具有以下内容: 一、实验目的 二、实验内容 三、实验要求 四、算法流程图 五、给出测试数据及运行结果 六、实验体会或对改进实验的建议

实验1 进程调度(2学时) 一、实验目的 通过实验加强对进程调度算法的理解和掌握。 二、实验内容 编写程序实现基于优先级的时间片轮转调度算法。 三、实验要求 1、假定系统有5个进程,每个进程用一个进程控制块PCB来代表,进程控制块的结构如下图1.1所示: 图1.1 其中: 进程名:作为进程的标识,假设五个进程的进程名分别为p1,p2,p3,

p4,p5。 指针:进程按顺序排成循环链表,用指针指出下一个进程的进程控制块首地址,最后一个进程中的指针指出第一个进程的进程控制块首地址。 要求运行时间:假设进程需要运行的单位时间数。 已运行时间:假设进程已经运行的单位时间数,初值为0。 状态:可假设有两种状态,就绪状态和结束状态。进程的初始状态都为就绪状态。 2、每次运行所设计的处理器调度程序调度进程之前,为每个进程随机确定它的要求运行时间。 3、此程序是模拟处理器调度,因此,被选中的进程并不实际启动运行,而是执行 已运行时间+1 来模拟进程的一次运行,表示进程已经运行过一个单位时间。 4、在所设计的程序中应有显示语句,能显示每次被选中的进程名以及运行一次后进程队列的变化。

实验2 银行家算法(2学时) 一、实验目的 理解银行家算法,掌握进程安全性检查的方法及资源分配的方法。 二、实验内容 编写程序实现银行家算法,并验证程序的正确性。 三、实验要求 编制模拟银行家算法的程序,并以下面给出的例子验证所编写的程序的正确性。 例子:某系统有A、B、C、D 4类资源共5个进程(P0、P1、P2、P3、P4)共享,各进程对资源的需求和分配情况如下表所示。 现在系统中A、B、C、D 4类资源分别还剩1、5、2、0个,请按

实验2-循环结构

实验2 循环结构 程序填空 1. 题目描述:马克思曾经出过这样一道趣味数学题:有30个人在一家小饭馆里用餐,其中有男人、女人和小孩。每个男人花了3先今,每个女人花了2先令,每个小孩花了1先令,一共花去50先令。问男人、女人以及小孩各有几个人。以下是完成此项工作的程序,请将未完成的部分填入,实现其功能,并在计算机上调试程序,以测试填入的部分是否正确。代码: #include using namespace std; int main() { int n; //n记录解的个数 int a,b,c; //分别记录男、女、小孩的人数 n=0; //初始化n的值 for(a=1;a<=30;a++) { for(b=1;b<=30;b++) { c=30-a-b; if(3*a+2*b+c==50) { cout<<"男人有:"< using namespace std; int main() { int n, k=1, s=0, m ; for (n=1 ; n<=100 ; n++) { k=1 ; s=0 ; m=n; while (m>=1&&m<=100 )

操作系统实验2

武汉工程大学计算机科学与工程学院 《操作系统》实验报告 专业班级13计工01班实验地点计工403机房学生学号1305120610 指导教师张立 学生姓名李敏实验时间2014-10-19 /2014- 10-26 实验项目实验二、创建线程及线程通信 实验类别操作性()验证性()设计性(√)综合性()其它实 验 目的及要求(1)熟悉Windows中的线程及进程的创建 (2)掌握利用Windows中的同步机制实现线程同步及通信。 成绩评定表 类别评分标准分值得分合计 上机表现积极出勤、遵守纪律 主动完成实验设计任务 30分 实验报告及时递交、填写规范 内容完整、体现收获 70分 说明: 评阅教师:张立 日期: 2015 年 11 月 1 日

实验内容 一、实验内容 要求:创建线程,利用互斥实现线程共享变量通信。 示例程序:Thread.exe 简要说明: 1、点“创建线程”按钮,创建两个线程,一个线程不断对一个变量加1, 结果显示在第一个文本框中。另一个线程不断对另一个变量减1,结果显示在第二个文本框中。这两个线程之间没有交互,仅用于演示线程的创建。 2、演示线程互斥,点“线程互斥”按钮,创建两个线程,一个线程不断循 环,每次循环对共享变量x做100次加1操作(这100次加1操作作为一个临界区CSa),另一个线程不断循环,每次循环对共享变量x做100次减1操作(这100次减1操作作为一个临界区CSb),结果显示在第三个文本框中。可以看到结果是从0到100,然后又从100回到0。可见CSa 和CSb两个临界区是互斥的。 3、除了没有互斥,其它同2,结果显示在第四个文本框中。可见CSa和CSb 两个临界区的执行是有交叉的,CSa的执行可能被CSb打断,CSb的执行也可能被CSa打断 二、源代码 UINT ThreadA(LPVOID pParam) { CThreadDlg * pParent=(CThreadDlg *)pParam; pParent->DoThreadA(); return 0; } UINT ThreadB(LPVOID pParam) { CThreadDlg * pParent=(CThreadDlg *)pParam; pParent->DoThreadB(); return 0; } UINT ThreadC(LPVOID pParam) { CThreadDlg * pParent=(CThreadDlg *)pParam; pParent->DoThreadC(); return 0; } UINT ThreadD(LPVOID pParam) { CThreadDlg * pParent=(CThreadDlg *)pParam; pParent->DoThreadD(); return 0;

实验07 循环结构程序设计(二)

实验七循环结构序程序设计(二) 循环结构是三种基本程序结构之一,是用于解决复杂问题的一类程序结构。在实验六中已经学习了循环结构的基本概念,以及DO循环语句和DO WHILE循环语句的基本功能和使用规则,但这仅是循环结构的基本内容,还需要学习和掌握循环结构的综合应用,以及更复杂的循环结构,用于解决更复杂的问题。 循环结构允许嵌套,嵌套的循环结构称为多重循环,即一个循环结构的循环体中包含另一个循环结构,根据实际需要可使用多层嵌套。FORTRAN90新增了强制性终止循环语句CYCLE 和EXIT,使用这两条语句可在循环体执行过程中提前终止本次循环或者整个循环。这两条语句的使用虽然不符合结构化程序设计思想,但使用得当,可使用程序简洁、短小、高效。 本次实验是学习和掌握循环结构的综合应用的一次实系统验活动。通过本次实验,能够设计和编写比较复杂的循环结构程序。 一.实验目的 1.进一步掌握三种基本循环结构的使用。 2.掌握强制性终止循环语句EXIT和CYCLE的基本功能和使用规则,以及相互区别。 3.掌握嵌套循环结构概念和应用。 4.掌握顺序结构、选择结构和循环结构相互嵌套和综合应用。 5.掌握设计和编写较复杂程序的基本技能。 二.实验内容1 1.问题描述 公元五世纪末,我国古代数学家张丘建在《算经》中提出了“百钱买百鸡问题”:“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问公鸡、母鸡、小鸡各几何?”意思是:公鸡每只5元,母鸡每只3元,小鸡一元三只。100元买100只鸡。公鸡、母鸡、小鸡各买多少只?编写程序实现之。 2.算法设计 求解本题,有两个限定条件:其一是所有的鸡共计100只;其二是所有买鸡的钱共计100元。根据这两个条件可列出下面两个方程式:(设公鸡、母鸡和小鸡数分别为x、y、z) x+y+z=100 5x+3y+z/3=100 这是一个三元一次方程组,但是其限定条件也就是方程式只有两个,这就意味着它是一个多解题。求解该问题,有多种解法,可利用计算机快速计算的特点采用试探法求解该问题。

操作系统实验二

操作系统实验实验二进程管理 学号 1215108019 姓名克帆 学院信息学院 班级 12电子2

实验目的 1、理解进程的概念,明确进程和程序的区别。 2、理解并发执行的实质。 3、掌握进程的创建、睡眠、撤销等进程控制方法。 实验容与要求 基本要求:用C语言编写程序,模拟实现创建新的进程;查看运行进程;换出某个进程;杀死进程等功能。 实验报告容 1、进程、进程控制块等的基本原理。 进程是现代操作系统中的一个最基本也是最重要的概念,掌握这个概念对于理解操作系统实质,分析、设计操作系统都有其非常重要的意义。为了强调进程的并发性和动态性,可以给进程作如下定义:进程是可并发执行的程序在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立单位。 进程又就绪、执行、阻塞三种基本状态,三者的变迁图如下: 由于多个程序并发执行,各程序需要轮流使用CPU,当某程序不在CPU上运行时,必须保留其被中断的程序的现场,包括:断点地址、程序状态字、通用寄存器的容、堆栈容、程序当前状态、程序的大小、运行时间等信息,以便程序再次获得CPU时,能够正确执行。为了保存这些容,需要建立—个专用数据结构,我们称这个数据结构为进程控制块PCB (Process Control Block)。 进程控制块是进程存在的惟一标志,它跟踪程序执行的情况,表明了进程在当前时刻的状态以及与其它进程和资源的关系。当创建一个进程时,实际上就是为其建立一个进程控制块。 在通常的操作系统中,PCB应包含如下一些信息: ①进程标识信息。为了标识系统中的各个进程,每个进程必须有惟一的标识名或标 识数。 ②位置信息。指出进程的程序和数据部分在存或外存中的物理位置。 ③状态信息。指出进程当前所处的状态,作为进程调度、分配CPU的依据。 ④进程的优先级。一般根据进程的轻重缓急其它信息。 这里给出的只是一般操作系统中PCB所应具有的容,不同操作系统的PCB结构是不同的,我们将在2.8节介绍Linux系统的PCB结构。

实验2-循环结构程序设计

实验2 循环结构程序设计 一、实验目的 1.学习循环语句for、while和do-while语句的使用方法。 2.学习用循环语句实现各种算法,例如穷举法、迭代法等。 3.进一步熟悉C语言集成环境的使用方法 二、实验内容 1.用while循环实现数据统计问题。:从键盘输入一批任意数量的整数,统 计其中不大于100的非负数数值的个数。 2.编写并调试程序,使用do-while循环控制语句实现上面的数据统计问 题。调试数据仍参照上面给出的几种情况设计使用。 3.编写并调试程序,使用for循环控制语句实现上面的数据统计问题。 4.阶乘累加问题。编写程序,求1+2!+3!+…+n!的值。 三、实验指导 1.用while循环实现数据统计问题。 ?编程分析 由于输入数据个数是不确定的,因此每次执行程序时,循环次数都是不确定的。在进行程序设计时,确定循环控制的方法是本实验的一个关键问题。循环控制条件可以有多种确定方法: (1).使用一个负数作为数据输入结束标志。 (2).输入一个数据后通过进行询问的方式决定是否继续输入下一个数 据。 ?参考程序 参考程序一 /* 使用负数作为数据输入结束标志的程序 */ #include "stdio.h" void main()

{ int m,counter=0; while(1) { printf("请输入一个整数:"); scanf("%d",&m); if(m<0) break; if(m<=100) counter++; printf("\n"); } printf("符合要求的整数个数为: %d\n",counter); } 参考程序二 /* 通过进行询问的方式决定是否继续输入下一个数据的程序 */ #include int main() { int m,counter=0; char ask; while(1) { printf("请输入一个整数:"); scanf("%d",&m); getchar(); if(m>=0&&m<=100) counter++; printf("继续输入下一个数据?(Y/N)"); ask=getchar();

[人教版必修2]化学实验安全教案

【课题】1-1-1从实验学化学----化学实验基本方法----化学实验安全等【学习目标】1、树立安全意识,初步形成良好的实验习惯 2、能识别一些化学品安全标识。 【重点难点】初步形成良好的实验习惯 【学习方法】通过复习初中化学实验中的安全问题,帮助学生树立安全意识【学习过程】 【阅读与理解】 1、阅读下列材料,解决有关问题,有何启发?[2003上海春季高考题] ①早在1785年,卡文迪许在测定空气组成时,除去空气中的O2、N2等已知气体后,发现最后总是留下一个体积不足总体积1/200的小气泡。 ②1892年,瑞利在测定氮气密度时,从空气中得到的氮气密度为 1.2572g/L,而从氨分解得到的氮气密度为I.2508g/L。两者相差0.0064g/L。 ③瑞利和拉姆赛共同研究后认为:以上两个实验中的“小误差”可能有某种必然的联系,并预测大气中含有某种较重的未知气体。经反复实验,他们终于发现了化学性质极不活泼的惰性气体——氩。 请回答下列问题: 空气缓慢通过下图a-d装置时,依次除去的气体是______________。 A O2、N2、H2O、CO2 B CO2、H2O、O2、N2 C H2O、CO2、N2、O2 D N2、O2、CO2、H2O 材料①、②中的“小误差”对测定空气组成和氮气密度的实验而言是(填“主要因素”或“次要因素”)。 材料③中科学家抓住了“小误差”而获得重大发现说明。 2、阅读课本第4页“一、化学实验安全” 3、复习初中课本中有关实验基本操作的内容,总结归纳有关实验安全的知识 4、以下图片,请同学们想一下在哪些地方见过?你知道什么意义吗? 【归纳】按下列分类方法归类: ◇人身安全,如:不能直接尝任何药品, ◇仪器安全,如:热的试管不能直接用冷水冲洗,酒精灯内酒精不能少于◇药品安全,如:用剩的药品不能直接放回原瓶, ◇操作安全,如:稀释浓硫酸时不能将水倒入浓硫酸, ◇环境安全,如:有污染的尾气不能直接排放, 【思考与交流】化学实验室常见危险品及其保存 1.易燃液体 特性:易挥发,遇明火易燃烧;蒸气与空气的混合物达到爆炸极限范围,

上海大学操作系统(二)实验报告(全)

评分: SHANGHAI UNIVERSITY 操作系统实验报告 学院计算机工程与科学 专业计算机科学与技术 学号 学生姓名

《计算机操作系统》实验一报告 实验一题目:操作系统的进程调度 姓名:张佳慧学号 :12122544 实验日期: 2015.1 实验环境: Microsoft Visual Studio 实验目的: 进程是操作系统最重要的概念之一,进程调度又是操作系统核心的主要内容。本实习要求学生独立地用高级语言编写和调试一个简单的进程调度程序。调度算法可任意选择或自行设计。例如,简单轮转法和优先数法等。本实习可加深对于进程调度和各种调度算法的理解。实验内容: 1、设计一个有n个进程工行的进程调度程序。每个进程由一个进程控制块(PCB)表示。进程控制块通常应包含下述信息:进程名、进程优先数、进程需要运行的时间、占用CPU的时间以及进程的状态等,且可按调度算法的不同而增删。 2、调度程序应包含2~3种不同的调度算法,运行时可任意选一种,以利于各种算法的分析比较。 3、系统应能显示或打印各进程状态和参数的变化情况,便于观察诸进程的调度过程。 操作过程: 1、本程序可选用优先数法或简单轮转法对五个进程进行调度。每个进程处于运行R(run)、就绪W(wait)和完成F(finish)三种状态之一,并假设起始状态都是就绪状态W。为了便于处理,程序进程的运行时间以时间片为单位计算。进程控制块结构如下: 进程控制块结构如下: PCB 进程标识数 链指针 优先数/轮转时间片数 占用 CPU 时间片数 进程所需时间片数 进程状态 进程控制块链结构如下:

其中:RUN—当前运行进程指针; HEAD—进程就绪链链首指针; TAID—进程就绪链链尾指针。2、算法与框图 (1) 优先数法。进程就绪链按优先数大小从高到低排列,链首进程首先投入运行。每过一个时间片,运行进程所需运行的时间片数减 1,说明它已运行了一个时间片,优先数也减 3,理由是该进程如果在一个时间片中完成不了,优先级应该降低一级。接着比较现行进程和就绪链链首进程的优先数,如果仍是现行进程高或者相同,就让现行进程继续进行,否则,调度就绪链链首进程投入运行。原运行进程再按其优先数大小插入就绪链,且改变它们对应的进程状态,直至所有进程都运行完各自的时间片数。 (2) 简单轮转法。进程就绪链按各进程进入的先后次序排列,进程每次占用处理机的轮转时间按其重要程度登入进程控制块中的轮转时间片数记录项(相当于优先数法的优先数记录项位置)。每过一个时间片,运行进程占用处理机的时间片数加 1,然后比较占用处理机的时间片数是否与该进程的轮转时间片数相等,若相等说明已到达轮转时间,应将现运行进程排到就绪链末尾,调度链首进程占用处理机,且改变它们的进程状态,直至所有进程完成各自的时间片。 (3) 程序框图

人教版生物生物必修二教材课后习题答案

人教版生物生物必修二教材课后习题答案 第 1 章遗传因子的发现 第 1 节《孟德尔的豌豆杂交实验(一)》 (一)问题探讨 1. 粉色。因为按照融合遗传的观点,双亲遗传物质在子代体内混合,子代呈现双亲的中介性状,即红色和白色的混合色——粉色。 2. 提示:此问题是开放性问题,目的是引导学生观察、分析身边的生物遗传现象,学生通过对遗传实例 的分析,辨析融合遗传观点是否正确。有些学生可能举出的实例是多个遗传因子控制生物性状的现象(如人体的高度等),从而产生诸多疑惑,教师对此可以不做过多的解释。只要引导学生能认真思索,积极探讨,投入学习状态即可。 (二)实验 1. 与每个小组的实验结果相比,全班实验的总结果更接近预期的结果,即彩球组合类型数量比DD : Dd : dd=1 : 2 : 1,彩球代表的显性与隐性类型的数值比为3:1。因为实验个体数量越大, 越接近统计规律。 如果孟德尔当时只统计10株豌豆杂交的结果,则很难正确地解释性状分离现象,因为实验统计 的样本数目足够多,是孟德尔能够正确分析实验结果的前提条件之一。当对 1 0株豌豆的个体做统计时,会出现较大的误差。 2. 模拟实验的结果与孟德尔的假说是相吻合的。因为甲、乙小桶内的彩球代表孟德尔实验中的雌、雄配子,从两个桶内分别随机抓取一个彩球进行组合,实际上模拟雌、雄配子的随机组合,统计的数量也足够大,出现了3: 1 的结果。但证明某一假说还需实验验证。 (三)技能训练提示:将获得的紫色花连续几代自交,即将每次自交后代的紫色花选育再进行自交,直至自交后代不再出现白色花为止。 (四)旁栏思考题不会。因为满足孟德尔实验条件之一是雌、雄配子结合机会相等,即任何一个雄配子(或雌配子)与任何一个雌配子(或雄配子)的结合机会相等,这样才能出现3: 1 的性状分离比。 (五)练习 基础题 1.B。 2.B。 3. (1)在F1 水稻细胞中含有一个控制合成支链淀粉的遗传因子和一个控制合成直链淀粉的遗传因子。在F1 形成配子时,两个遗传因子分离,分别进入不同配子中,含支链淀粉遗传因子的配子 合成支链淀粉,遇碘变橙红色;含直链淀粉遗传因子的配子合成直链淀粉,遇碘变蓝黑色,其比例 为 1 : 1。

操作系统(2)实验六

SHANGHAI UNIVERSITY <操作系统>实验报告 学院计算机工程与科学学院学号10122050 姓名王杰 指导老师张建 日期2014.03.07

实验六FAT文件系统实验 一、实验目的: 1、从系统分析的角度出发,了解FAT文件系统的组织结构和文件的存储方式。 2、进一步理解操作系统文件管理的基本思想。 二、实验内容: 1..进入DEBUG环境,装入FAT文件系统结构。 执行命令:L 0 0 0 21 2.观察1.44M软盘中FAT12文件系统结构。 执行命令:D 0000 软盘有两面,每面80个磁道,每个磁道18个扇区,每个扇区512个字节,所以软盘的容量是2*80*18*512 = 1474560, 1474560/1024/1024大约为1.44M。 3.分析文件分配表结构,了解用簇链映射的文件的链式存储结构。 执行命令:D 200

◆思考:上面屏幕显示首簇号为003的文件共包括几个扇区?它分布在哪几个物理扇区上? 答:首簇号为003的文件共包括2个扇区,它分布在0道0面2、3扇。 4.观察1.44M软盘中文件目录表FDT以及文件目录结构 执行命令:L 0 0 0 21 说明:将逻辑扇区0H开始的共21H个物理扇区装入DS:0000H起始的内存。 执行命令:D 2600 说明:显示从2600H地址开始的FDT文件表。 思考:①计算1.44M的软盘根目录最多可以容纳多少文件? 答:1.44MB软盘的文件目录表FDT共14个扇区,每个文件的目录登记项占用32个字

节,用作目录的一个扇区(512字节)最多只能装入512/32=16个文件。因此,1.44MB软盘的根目录下最多可建文件或子目录224个。 ②上图屏幕显示的文件BAK.txt的目录项中标示该文件的首簇号在何处?该文件是什么属性? 答:首簇号在第2行的1A~1B字节处,首簇号为002,该文件属于归档文件。 书上显示的文件office.txt首簇号在第6行的1A~1B字节处,首簇号为091,属归档文件。 ③书上面的屏幕显示第1~2行目录项表示的是什么项目? 答:第1~2目录项表示卷标。 5.观察1.44M软盘中文件目录表的长文件名目录结构 思考:①书上面屏幕显示的2~3行是什么目录项? 答:长名的第一项,也是最后一项。 ②若有一个文件名共长34个字符,要占多少目录项? 答:四个目录项,三个长目录项和一个短目录项。 6.自己动手做: ①观察测试软盘的FDT区,找到名为BAK的文件目录。该文件是什么类型的文件?文件放在磁盘的哪个位置?占用几个存储单位?调出其内容看看。 该文件为BAK.txt,属于归档文件。察看其首簇号为002,对应了数据区21H逻辑扇区。执行:L 0 0 0 21 D 2600 察看内容执行:L 8000 0 21 8

操作系统实验2

《操作系统》实验报告 一实验目的: 1、加深对进程概念及进程管理各个部分内容的理解; 2、熟悉进程管理中主要数据结构的设计及进程调度算法,进程控制机构,同步机构,通信机构的实施。二实验内容 要求设置PCB,进程控制原语,进程调度算法,能描述进程调度中不同进程状态之间的转换,设计一个允许n个进程并发运行的进程管理模拟系统。该系统包括有简单的进程控制,同步及通信机构,其进程调度算法可任意选择。每个进程用一个PCB表示,其内容可根据具体情况设置。各进程之间应有一定的同步关系。系统在运行过程中能显示或打印各进程的状态及有关参数的变化情况,以便观察诸进程的运行过程及系统的管理过程。 三实验要求 实验报告要求1、写出进程管理的思想。2、画出算法流程图和设置的数据结构。 3、写出调试程序出现的问题及解决的方法。 4、打印实验报告及程序清单。 5、报告给出测试的结果。四实验环境: Windows8.0 开发语言c++ 五实验前的准备 1、阅读教材,了解有关PCB的知识。进程控制块的作用是使一个在多道程 序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本 单位,一个能与其它进程并发执行的进程。或者说,OS是根据PCB来 对并发执行的进程进行控制和管理的。PCB通常是系统内存占用区中 的一个连续存区,它存放着操作系统用于描述进程情况及控制进程运行

所需的全部信息,它使一个在多道程序环境下不能独立运行的程序成为 一个能独立运行的基本单位,一个能与其他进程并发执行的进程。 2、上网查阅相关程序,学习与PCB相关知识与应用。 六实验原理及设计方案 1、实验原理; 假设系统有 5 个进程,每个进程用一个进程控制块 PCB 来代表。为每个进程任意确定一个要求运行时间和到达时间。按照进程到达的先后顺序排成一个循环队列。再设一个队首指针指向第一个到达进程的首址。执行处理机调度时,开始选择队首的第一个进程运行。另外,再设一个当前运行进程的指针,指向当前正在运行的进程。进程运行一次后,估计运行时间减一,输出当前运行进程的名字进程运行一次后,以后的调度则将当前指针依此下移一个位置,指向下一个进程,即调整当前运行指针指向该进程的链接指针所指进程,以指示应运行进程。同时还应判断该进程的剩余运行时间是否为零。若不为零,则等待下一轮的运行,若该进程的剩余运行时间为零,则将该进程的状态置为完成态 C,并退出循环队列。若就绪队列不空,则重复上述的(5)和(6)步骤直到所有的进程都运行完为止。在所设计的调度程序中,应包含显示或打印语句。显示或打印每次选中的进程的名称及运行一次后队列的变化情况。 2、设计方案 (1)设计一个有 N 个进程共行的进程调度程序。每个进程由一个进程控制块 PCB 表示。进程控制块包括以下信息:进程名,进程优先数,进程需要运行的时间,占用 CPU的时间以及进程的状态等。 (2)本调度程序用时间片轮转算法。 (3)编写程序并调试运行。 3、程序流程图

实验四 循环结构

实验报告 班级:电信13-1班学号:130******** 姓名:谢朗星成绩: 实验四循环结构 一、实验目的 1.掌握循环结构C程序的编写和调试方法。 2.掌握循环结构C程序中使用while语句和do while语句。 二、实验内容和步骤 1.调试下面三个程序,分析执行的结果。 1. #include int main( ) { int sum=0,i=1; while(i<=100) { sum=sum+i; i++; } printf(“%d\n”,sum); return 0; } 5050 在该程序中,先判断i是否<=100,如果是,在循环体先执行了sum=sum+i,接着再执行i++,然后再返回判断i是否<=100,接着再重复上步骤,直到i>100,然后输出最终结果,结束该程序。 2. #include int main( ) { int sum=0,i=1; while(i<=100) { sum=sum+i; i++; printf(“%d\n”,sum);} return 0;

} 在该程序中,先判断i是否<=100,如果是,在循环体先执行了sum=sum+i,接着再执行i++,然后输出当次运行的结果,然后再返回判断i是否<=100,接着再重复上步骤,直到i>100,结束该程序。 3.#include int main( ) { int sum=0,i=1; do { sum=sum+i; i++; printf(“%d\n”,sum); }while(i<=100); return 0; } 在该程序中,在循环体中先执行了sum=sum+i,接着再执行i++,然后输出当次运行的结果,接着再判断i是否<=100,如果是,返回执行循环体,接着再重复上步骤,直到i>100,结束该程序。 2.编写如下2道题目的程序,要求详细写出程序编写、编译、运行的过程,源程序关键执 行语句需要给出注释。 (a)统计全单位人员的平均工资。单位的人数不固定,工资数从键盘先后输入,当输入-1 时表示输入结束(前面输入的是有效数据) 分析:循环执行的条件while(i!=-1) , 循环结束条件是单位的人数n,循环体采用累加的方法。 (b)求∑= 20 1 n !n 分析:循环体采用累加和累乘。(a) #include int main() {

必修2-课本实验

必修2化学 第一章 物质结构 元素周期律 1、科学探究:钾在空气中的燃烧、钾与水的反应P6 操作步骤: 1、将一干燥的坩埚加热,同时取一小块钾,擦干表面的煤油后迅速投到热坩埚中。回忆钠与氧气反应,进行对比。 2、培养皿中放入一些水,然后取绿豆大的钾,用滤纸吸干表面的煤油投入培养皿中。回忆钠与水反应进行对比。 实验现象: 1、钾迅速熔化成一个小球,燃烧,产生紫色火焰。 2、钾浮在水面上,熔化成小球,四处游动,发出咝咝的声音,产生紫色火焰。反应后的溶液滴入酚酞试液后变红。 3、科学探究:Mg 、Al 金属性强弱的比较P15 操作步骤:1、取一小段镁带,用砂纸除去表面的氧化膜,放入试管中,向试管中加入2 mL 水,并滴入2滴酚酞溶液,观察现象。过一会儿加热试管至水沸腾,观察现象。

2、取一小段镁带和一小片铝,用砂纸磨去它们表面的氧化膜,分别放入两支试管,再各加入2mL1 mol/L盐酸。观察发生的现象。 实验现象:1、镁与冷水反应缓慢,镁条表面溶液变红,加热后,反应迅速,有大量气泡产生,溶液变红。 2、镁带和铝片都与盐酸反应,生成无色气体。镁带比铝片反应剧烈。 4、实验1-2:Na与Cl2的反应P21 取一块绿豆大的金属钠(切去氧化层),用滤纸吸净煤油,放在石棉网 上,用酒精灯微热,待钠熔成球状时,将盛有氯气的集气瓶迅速倒扣在钠 第二章化学反应与能量 1、实验2-1:化学反应过程中能量的变化P33 在一支试管中加入6mol/L的盐酸,再插入用砂纸打磨光的铝条,观察现象,并用温度 2、实验2-2:化学反应过程中能量的变化P34 将约20 g Ba(OH)2·8H2O晶体研细后与约10 g NH4Cl晶体一起放入烧杯中,并将烧杯放在滴有几滴水的玻璃片或小木板上,用玻璃棒快速搅拌,闻气味,用手触摸杯壁下部,试着用手拿起烧杯,观察现象。 3、实验2-3:化学反应过程中能量的变化P34

操作系统实验二

GDOU-B-11-112广东海洋大学学生实验报告书(学生用表) 实验名称实验二课程名称操作系统课程号 学院(系) 信息学院专业物联网工程班级1131 学生姓名杨光学号201311672119 实验地点实验日期 实验1:线程的创建与撤销 1.实验目的 (1)熟悉Windows系统提供的线程创建与撤销系统调用。 (2)掌握Windows系统环境下线程的创建与撤销方法。 2.实验要求 能正确使用CreateThread()、ExitThread()及Sleep()等系统调用,进 一步理解进程与线程理论。 代码一: // ThreadCreate.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "ThreadCreate.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // The one and only application object CWinApp theApp; using namespace std; void ThreadName1(); static HANDLE hHandle1=NULL; //用于存储线程返回句柄的变量。 DWORD dwThreadID1; //用于存储线程标识符的变量。 int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])

操作系统实验二

操作系统实验 实验二进程管理 学号 1215108019 姓名李克帆 学院信息学院 班级 12电子 2

实验目的 1、理解进程的概念,明确进程和程序的区别。 2、理解并发执行的实质。 3、掌握进程的创建、睡眠、撤销等进程控制方法。 实验内容与要求 基本要求:用C语言编写程序,模拟实现创建新的进程;查看运行进程;换出某个进程;杀死进程等功能。 实验报告内容 1、进程、进程控制块等的基本原理。 进程是现代操作系统中的一个最基本也是最重要的概念,掌握这个概念对于理解操作系统实质,分析、设计操作系统都有其非常重要的意义。为了强调进程的并发性和动态性,可以给进程作如下定义:进程是可并发执行的程序在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立单位。 进程又就绪、执行、阻塞三种基本状态,三者的变迁图如下: I/完时间片 进程调 I/请

由于多个程序并发执行,各程序需要轮流使用CPU,当某程序不在CPU上运行时,必须保留其被中断的程序的现场,包括:断点地址、程序状态字、通用寄存器的内容、堆栈内容、程序当前状态、程序的大小、运行时间等信息,以便程序再次获得CPU时,能够正确执行。为了保存这些内容,需要建立—个专用数据结构,我们称这个数据结构为进程控制块PCB (Process Control Block)。 进程控制块是进程存在的惟一标志,它跟踪程序执行的情况,表明了进程在当前时刻的状态以及与其它进程和资源的关系。当创建一个进程时,实际上就是为其建立一个进程控制块。 在通常的操作系统中,PCB应包含如下一些信息: ①进程标识信息。为了标识系统中的各个进程,每个进程必须有惟一的标识名或标识数。 ②位置信息。指出进程的程序和数据部分在内存或外存中的物理位置。 ③状态信息。指出进程当前所处的状态,作为进程调度、分配CPU的依据。 ④进程的优先级。一般根据进程的轻重缓急其它信息。 这里给出的只是一般操作系统中PCB所应具有的内容,不同操作系统的PCB结构是不同的,我们将在2.8节介绍Linux系统的PCB结构。就 执行阻塞 程度为进程指定一个优先级,优先级用优先数表示。 ⑤进程现场保护区。当进程状态变化时(例如一个进程放弃使用CPU),它需要将当时的CPU现场保护到内存中,以便再次占用CPU时恢复正常运行,有的系统把要保护的CPU 现场放在进程的工作区中,而PCB中仅给出CPU现场保护区起始地址。 ⑥资源清单。每个进程在运行时,除了需要内存外,还需要其它资源,如I/O设备、外存、数据区等。这一部分指出资源需求、分配和控制信息。 ⑦队列指针或链接字。它用于将处于同一状态的进程链接成一个队列,在该单元中存放下一进程PCB首址。 ⑧其它信息。 这里给出的只是一般操作系统中PCB所应具有的内容,不同操作系统的PCB结构是不同的,我们将在2.8节介绍Linux系统的PCB结构。 2、程序流程图。

Python实验循环结构

实验五 循环结构(续) 【实验目的】 1.掌握range()函数的使用 2. 掌握For 语句的使用。 3.掌握循环嵌套的使用。 4.掌握一些常用的算法(求素数、穷举法、求和与乘积、递推法)。 【实验内容】 000000000 1、 填空 (1) 在命令行中显示1 到10的数字 range(1,11) 。 (2) 在命令行中显示 1到10的所有偶数 range(2,11,2) 。 (3) 显示所有的大写字符。 for i in range(65,91) : print chr(i) (4) 显示1--100能被3整除的数,并且每5个数打印一行。 i=0 ‘记录能被3整除的个数 for j in range(1,101): if j%3==0: print j, i+=1 if i%5==0: print 2、输出斐波那契级数1、1、2、 3、5、8、13……,此级数项的规律是:前两项的值各为1,从第3项起,每一项是前2项的和。(要求一行输出6项)。 (1) 当某项的数值大于或等于30000时结束。 (2) 求前100项之和。 (1)1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 (2 3、编写程序,输入一个数,判断该数是否为完数。例如6是一个完数,因为6=1+2+3。 x=input ("Enter an integer:") i=1 while True : x=x-i i+=1 if x==i: print "A perfect number." break if x==30000: break print c, if i%6==0: print (2) a=1 b=1 sum=2 i=2 #计数 while True: i+=1 #计数:第i 次 c=a+b a=b b=c sum+=c if i==100: #完成第100次求和后退出循环 break print sum

湖南省长郡中学2020届《高三化学回归教材实验--人教版高中化学教材(必修2)》 Word版

人教版高中化学必修 2 教材实验 目录 1钾的化学性质(必修2,P6) (2) 2卤素单质间的置换反应(必修2,P9) (2) 3金属与水、酸的反应(必修2,P15-P16) (3) 4钠与氯气反应(必修2,P21) (3) 05 放热反应(必修2,P33-P34) (4) 06 吸热反应(必修2,P34) (4) 07 酸碱中和反应的能量变化(必修2,P34) (5) 08 锌铜原电池(必修2,P40-P41) (5) 09 原电池的设计(必修2,P41) (5) 10 水果电池(必修2,P42) (6) 11温度对化学反应速率的影响(必修2,P48) (6) 12催化剂对化学反应速率的影响(必修2,P48) (7) 13甲烷的取代反应(必修2,P61) (7) 14石蜡油的分解实验(必修2,P67) (8) 15乙烯的化学性质(必修2,P68) (9) 16苯的性质实验(必修2,P69) (9) 17*溴苯的制取(必修2,P70) (9) 18*硝基苯的制取(必修2,P70) (10) 19乙醇与金属钠的反应(必修2,P73) (11) 20乙醇的催化氧化(必修2,P74) (11) 21 乙酸的酸性(必修2,P75) (12) 22乙酸的酯化反应(必修2,P75) (12) 23糖类和蛋白质的特征反应(必修2,P79) (13) 24 蔗糖的水解反应(必修2,P79-P80) (13) 25 铝热反应(必修2,P89) (14) 26 证明海带中存在碘元素(必修2,P91) (14) 27*煤的干馏(必修2,P95) (15) 28*石油的蒸馏(必修2,P96) (15)

操作系统实验报告2

《操作系统》实验报告(二) Linux用户管理命令的使用(验证性、2学时) 一、实验目的 1、掌握linux的桌面环境。 2、掌握用户管理命令的使用。 二、实验内容 1、启动进入linux系统 2、用户的管理 ●创建一个新用户user01,设置其主目录为/home/user01:#adduser user01 ●查看/etc/passwd文件的最后一行,看看是如何记录的。tail /etc/passwd ●查看文件/etc/shadow文件的最后一行,看看是如何记录的。 ●给用户user01设置密码:#passwd user01。

●再次查看文件/etc/shadow文件的最后一行,看看有什么变化。 ●使用user01用户登录系统,看能否登录成功。 ●更改用户user01的帐户名为user03:#usermod –l user03 user01。 ●查看/etc/passwd文件的最后一行,看看有什么变化。

删除用户user02。userdel. 3、掌握文件操作简单命令,完成以下操作: 在/root內建立3个目录, 请命名为“homework”,“dd1”和“dd2”(勿打入引号)请在homework下利用vi编辑器,随意编写1个文件, 文件名任意。 4、退出linux系统 操作步骤: 在主菜单上选择“注销”->关闭计算机。 三、实验结果与讨论(根据实验结果回答下列问题) 1、Vi 有哪3种工作模式?分别按什么键切换? Vi有三种基本的工作模式:命令模式、文本编辑模式、最后行模式。 (1)命令模式下输入“a”、“ i”进入文本编辑模式。 (2)文本编辑模式下按ESC进入命令模式。 (3)命令模式下输入“:”进入最后行模式。 (4)最后行模式下自动返回命令模式。 2、用户有哪几种类型? 管理员或管理员组、系统用户、软件创建用户。 四、个人体会 (你对本次实验有什么体会或看法?) 通过本次实验,我更加深入的了解了linux这个软件,linux系统不同于windows系统,图形界面功能不是很强大,但是它的运行速度及响应时间快于windows,而且性能稳定。 本次试验,初步接触了linux系统。对其命令行的操作方式初步了解。深刻感触到我现在对鼠标的依赖。比如U盘的加载与卸载,以前windows系统下只是点一点鼠标就能解决。可是linux系统下需要自己敲命令代码,否则寸步难行。对于命令行方式的了解相信会给我将来学习铺好路,因为以后接触的东西一定会那些没有现成结果的,需要自己动手创建的。我还是不能熟练的应用linux系统调用,还不能靠自己的能力写出实验内容程序。总之,本次试验我受益匪浅,拓展了不同的操作系统方面的知识。相信这只是起步,将来我会在这个基础上进一步发展。

实验四循环结构大全语言程序设计实验报告

循环结构汇编语言程序设 计实验报告 实验四循环结构汇编语言程序设计 一、实验目的 1、学习循环结构的汇编语言程序的设计和调试。 2、学习通过直接对8086计算机的寄存器和内存的直接访问,编写更高效简洁的汇编程序。 3、加深掌握计算机整体的工作过程。 3、加深对排序算法的理解。 二、实验任务 编写程序求出数组A中(20个元素)的最大值和最小值(数组没有排序)。 要求至少采用二种不同的排序算法来实现。( 快速排序,归并排序、堆排序、Shell排序、插入排序、冒泡排序、交换排序、选择排序、基数排序……) 三、实验内容 为了更好地实现老师所布置的实验任务,我们根据情况选取以下两种方式实验。 1、利用冒泡排序的方式求解数组A中元素的最大值最小值。设计流程图如下所示: 2、利用选择排序的方式求得数组A中元素的序列。设计流程图如下所示: 四、实验环境 PC机: winXP/win7(32位)/win7(64位)+winxp 虚拟机 汇编工具:+。 五、实验步骤 1)建立和生成的文件 (1)编写的源程序,源程序名为abc、扩展名为.asm (2)源程序经汇编程序汇编(翻译)后生成二进制目标程序,文件名为 (3)目标程序需要经连接生成可执行程序,文件名为 2)汇编环境

最基本的汇编环境只需要两个文件:和。将这两个文件拷入到已经建好的文件夹(例如huibian)中,并将文件夹huibian放在硬盘根目录C :\>下 3)上机步骤 进入DOS窗口中执行。 4)调试程序 进入DEBUG后,调试程序 5)调试成功后重新汇编、连接并生成可执行代码 6)执行程序,并对运行结果截图。 利用冒泡排序求得数组A中元素的最大值最小值的实验结果如下图所示:(说明:输入 数据为:13,0,59,900,587,1,657,234,34,48) 利用选择排序对数组A中元素排序得到的序列得实验结果如下图所示:(说明:输入数 据为13,0,59,900,587,1,657,234,34,48) 六、实验心得 通过本次循环结构汇编语言程序设计的实验,我初步了解了汇编语言的基本语法,利用汇编语言的循环结构实现了对于数组A中元素的排序以及求得元素中的最大值最小值。另外,在实验过程中,我也了解到了,我们要时刻细心严谨,认真做好每一步,避免出现低级错误。 七、汇编语言代码 1、利用冒泡排序实现求最大值最小值的代码 data segment mes1 db 'the max:$' mes2 db 'the min:$' a dw 13,0,59,900,587,1,657,234,34,48 data ends code segment main proc far assume cs:code,ds:data start: push ds sub ax,ax push ax mov ax,data mov ds,ax ;以下是起泡排序核心代码 mov cx,10 dec cx loop1: mov di,cx mov bx,0

相关文档
最新文档