实验三 汇编数据寻址的方法

实验三 汇编数据寻址的方法
实验三 汇编数据寻址的方法

实验三汇编数据寻址的方法(2学时)实验目的

通过实验掌握下列知识:

1、DEBUG命令:G,N,W,L及Q。

2、8086系统中数据在内存中的存放方式和内存操作数的几种寻址方式。

3、8086指令:INC,DEC,LOOP,INT 3,INT 20H,寄存器SI,DI。

4、8086汇编语言伪操作:BYTE PTR,WORD PTR。

5、求累加和程序和多字节加减法程序。

实验类型:验证

实验内容和步骤

一、内存操作数及各种寻址方式使用

程序内容:

MOV AX,1234

MOV [1000],AX

MOV BX,1002

MOV BYTE PTR[BX],20

MOV DL,39

INC BX

MOV [BX],DL

DEC DL

MOV SI,3

MOV [BX+SI],DL

MOV [BX+SI+1],DL

MOV WORD PTR[BX+SI+2],2846

操作步骤

一、内存操作数及各种寻址方式使用

程序内容:

MOV AX,1234

MOV [1000],AX

MOV BX,1002

MOV BYTE PTR[BX],20

MOV DL,39

INC BX

MOV [BX],DL

DEC DL

MOV SI,3

MOV [BX+SI],DL

MOV [BX+SI+1],DL

MOV WORD PTR[BX+SI+2],2846

操作步骤

1)用A命令键入上述程序,并用T命令逐条运行。

2)每运行一条有关内存操作数的指令,要用D命令检查并记录有关内存单元的内容并注明是什么寻址方式。

注意D命令显示结果中右边的ASCII字符及双字节数存放法。

思考:有关指令中BYTE PTR及WORD PTR伪操作不加行不行?试一试。

寄存器寻址

2、设DS=当前段地址,BX=0300H,SI=0002H;请用DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装入0AH,0BH,0CH,0DH, 0EH。在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程,当数据传送完毕时,AX中的内容是什么。

程序清单如下:

MOV AX,BX

MOV AX,0304H

MOV AX,[0304H]

MOV AX,[BX]

MOV AX,0001[BX]

MOV AX,[BX][SI]

MOV AX,0001[BX][SI]

把bx,si以及ds:300到ds:304设置为0a,0b,0c,0d,0e

用-a输入代码

分析:MOV AX,BX 把bx送入ax中,ax=0300H

MOV AX,0304H ax=0304

MOV AX,[0304H] 把0304地址的内容赋给ax,ax=0e

MOV AX,[BX] 因为,bx=0300,所以ax=[0300]=0a

MOV AX,0001[BX] ax=[0301]=0b

MOV AX,[BX][SI] ax=[0300]2=[0302]=0c

MOV AX,0001[BX][SI] ax=0001[0300]2=[0303]=od

二、求累加和程序:

程序内容:

MOV BX,1000

MOV CX,10

SUB AX,AX

LOP: ADD AL,[BX]

ADC AH,0

INC BX

J: LOOP LOP

INT3

操作步骤:

1)用A命令将程序键入到100H开始的内存中,在键入时记下标号LOP和J的实际

地址,在键入LOOP指令时LOP用实际地址值代替。

2)用命令N AA将此程序命名为文件AA(文件名可任取)。

3)用R命令将BX:CX改为程序长度值(即最后一条指令后面的地址减去开始地址)。

4)用命令W 100将此程序存到AA命名的磁盘文件中。

5)用命令Q退出DEBUG。

6)用命令DEBUG AA再次调入DEBUG和文件AA,可用U命令检查调入程序。

若调入DEBUG时忘了加AA文件名,可用N命令和L命令将文件调入。

7)用E命令在内存地址1000H处键入16个数字

8)用命令G=100 J(J用实际地址代替),使程序运行并停在断点J上,检查AX,BX的值是否符合你的预计值。

9)用T命令运行一步,观察程序方向(IP值)和CX值是否与你的估计一样,若不一样,

检查程序是否有错。

10)重复G J与T,再检查AX是否正确。

11)用G命令使程序运行到结束,检查AX值是否正确。

三、多字节加法程序。

程序:

MOV DI,1000

MOV CX,8

MOV SI,2000

CLC

LOP: MOV AL,[SI]

ADC [DI],AL

INC SI

INC DI

LOOP LOP

INT 20

步骤:

用命令键入此程序

用E命令在1000H开始处键入一个8字节被加数,在2000H开始处键入一个8字节加数,均为低字节在前面。

用G命令运行此程序,并用D命令检查其结果(存放在哪里?),是否正确?

将INT 20H指令改为INT 3,有何区别?若这条指令不加,行不行?试一试。

四。自编程序:

用16位减法指令编一个32位(4字节)数减法程序,两个源数及结果存放地址同上题。调试并做记录。

MOV DI,1000

MOV CX, 4

MOV SI ,2000

CLC

LOP:MOV AL[SI]

SBB [DI],AL

INC SI

INC DI

LOOP LOP

INT 20

数据处理的基本方法

第六节数据处理的基本方法 前面我们已经讨论了测量与误差的基本概念,测量结果的最佳值、误差和不确定度的计算。然而,我们进行实验的最终目的是为了通过数据的获得和处理,从中揭示出有关物理量的关系,或找出事物的内在规律性,或验证某种理论的正确性,或为以后的实验准备依据。因而,需要对所获得的数据进行正确的处理,数据处理贯穿于从获得原始数据到得出结论的整个实验过程。包括数据记录、整理、计算、作图、分析等方面涉及数据运算的处理方法。常用的数据处理方法有:列表法、图示法、图解法、逐差法和最小二乘线性拟合法等,下面分别予以简单讨论。 列表法是将实验所获得的数据用表格的形式进行排列的数据处理方法。列表法的作用有两种:一是记录实验数据,二是能显示出物理量间的对应关系。其优点是,能对大量的杂乱无章的数据进行归纳整理,使之既有条不紊,又简明醒目;既有助于表现物理量之间的关系,又便于及时地检查和发现实验数据是否合理,减少或避免测量错误;同时,也为作图法等处理数据奠定了基础。 用列表的方法记录和处理数据是一种良好的科学工作习惯,要设 计出一个栏目清楚、行列分明的表格,也需要在实验中不断训练,逐步掌握、熟练,并形成习惯。 一般来讲,在用列表法处理数据时,应遵从如下原则:

(1) 栏目条理清楚,简单明了,便于显示有关物理量的关系。 (2) 在栏目中,应给出有关物理量的符号,并标明单位(一般不重复写在每个数据的后面)。 (3) 填入表中的数字应是有效数字。 (4) 必要时需要加以注释说明。 例如,用螺旋测微计测量钢球直径的实验数据列表处理如下。 用螺旋测微计测量钢球直径的数据记录表 从表中,可计算出 D i D = n = 5.9967 ( mm)

数值分析实验报告176453

实验报告 插值法 数学实验室 数值逼近 算法设计 级 ____________________________ 号 ____________________________ 名 _____________________________ 实验项目名称 实验室 所属课程名称 实验类型 实验日期

实验概述: 【实验目的及要求】 本次实验的目的是熟练《数值分析》第二章“插值法”的相关内容,掌握三种插 多项式插值,三次样条插值,拉格朗日插值,并比较三种插值方法的 优劣。 本次试验要求编写牛顿多项式插值,三次样条插值,拉格朗日插值的程序编码,并 去实现。 【实验原理】 《数值分析》第二章“插值法”的相关内容,包括:牛顿多项式插值,三次样条插值, 拉格朗日 插值的相应算法和相关性质。 【实验环境】(使用的软硬件) 软件: MATLAB 2012a 硬件: 电脑型号:联想 Lenovo 昭阳E46A 笔记本电脑 操作系统: Win dows 8专业版 处理器:In tel ( R Core ( TM i3 CPU M 350 @2.27GHz 2.27GHz 实验内容: 【实验方案设计】 第一步,将书上关于三种插值方法的内容转化成程序语言,用 MATLA B 现; 第二步,分别用牛顿多项式插值,三次样条插值,拉格朗日插值求解不同的问题。 【实验过程】(实验步骤、记录、数据、分析) 实验的主要步骤是:首先分析问题,根据分析设计 MATLA 程序,利用程序算出 问题答案,分析所得答案结果,再得出最后结论。 实验一: 已知函数在下列各点的值为 试用4次牛顿插值多项式 P 4( x )及三次样条函数 S ( x )(自然边界条件)对数据进行插值。 用图给出{( X i , y i ), X i =0.2+0.08i , i=0 , 1, 11, 10 } , P 4 ( x )及 S ( x )。 值方法:牛顿 在MATLAB 件中

太原理工大学数值计算方法实验报告

本科实验报告 课程名称:计算机数值方法 实验项目:方程求根、线性方程组的直接解 法、线性方程组的迭代解法、代数插值和最 小二乘拟合多项式 实验地点:行勉楼 专业班级: ******** 学号: ********* 学生姓名: ******** 指导教师:李誌,崔冬华 2016年 4 月 8 日

y = x*x*x + 4 * x*x - 10; return y; } float Calculate(float a,float b) { c = (a + b) / 2; n++; if (GetY(c) == 0 || ((b - a) / 2) < 0.000005) { cout << c <<"为方程的解"<< endl; return 0; } if (GetY(a)*GetY(c) < 0) { return Calculate(a,c); } if (GetY(c)*GetY(b)< 0) { return Calculate(c,b); } } }; int main() { cout << "方程组为:f(x)=x^3+4x^2-10=0" << endl; float a, b; Text text; text.Getab(); a = text.a; b = text.b; text.Calculate(a, b); return 0; } 2.割线法: // 方程求根(割线法).cpp : 定义控制台应用程序的入口点。// #include "stdafx.h" #include"iostream"

心得体会 使用不同的方法,可以不同程度的求得方程的解,通过二分法计算的程序实现更加了解二分法的特点,二分法过程简单,程序容易实现,但该方法收敛比较慢一般用于求根的初始近似值,不同的方法速度不同。面对一个复杂的问题,要学会简化处理步骤,分步骤一点一点的循序处理,只有这样,才能高效的解决一个复杂问题。

数值分析实验三

贵州师范大学数学与计算机科学学院学生实验报告 课程名称: 数值分析 班级: 12级信本 实验日期: 2014年 11月5日 学 号: 120703010031 姓名: 李盼 指导教师: 实验成绩: 一、实验名称 实验三:数值积分 二、实验目的及要求 1. 让学生掌握复化梯形法, 复化Simpson 法和Romberg 公式以及变步长梯形法,变步长Simpson 法 2. 让学生能够用这些方法解决一些具体问题 三、实验环境 每人一台计算机,要求安装Windows XP 操作系统,Microsoft office2003、MATLAB6.5(或7.0). 四、实验内容 1 . 要求:分别用复合梯形法,复合Simpson 法和 Romberg 公式计算. 2.给定积分dx x ?3 11, 分别用下列方法计算积分值要求准确到510-, 并比较分析计算时间. 1) 变步长梯形法; 2) 变步长 Simpson 法. 五、算法描述及实验步骤 1复合梯形法 输入:被积函数数据点t,a ; 输出:积分值n T 。 复合Simpson 输入:被积函数)(x f ,积分区间[a,b]和n, 输出:复合Simpson 积分值n S 。 步1 :b a h n -?; (a)(b)n S f f ?-;x a ?. 步2:对k=1,2,…,n 执行 ;4();;2().22 n n n n h h x x S S f x x x S S f x ?+?-?+?-

步3:*6 n n h S S ?。 步4:输出n S 。 Romberg 公式 根据已知数据对其进行多项式拟合得出p(x);()()f x p x ?。 输入 :被积函数)(x f ,积分区间端点a,b,允许误差ε, 输出:Romberg 积分值2n R 。 步1:a b h -?;));()((2 1b f a f h T +?.0;0;0;0111?===k R C S 步2:反复执行步3-步9 步3:.2 ;0h a x S +?? 步4:反复执行步5-步6 步5:.);(h x x x f S S +?+? 步6:若b x ≥,则退出本层循环。 步7:执行 ;3134;2212212T T S S h T T -?+?.63 16364;1511516122122C C R S S C -?-? 步8:执行 .1; ;; ;;2|;|2121212112+?????? -?k k R R C C S S T T h h R R e 步9:若ε≤e 且5≥k ,则退出循环。 步10:.22R R n ? 2:变步长梯形法 功能 求积分dx x ?3 1 1,允许误差为ε。 输入 被积函数)(x f ,a,b,ε. 步1:a b h -?。 步2:)).()((2 1b f a f h T +? 步3:反复执行步4--步10. 步4:.2;0h a x S +=?

实验报告格式范文

实验报告格式范文 实验一撰写可行性研究报告 一、实验目的 1、掌握可行性研究步骤; 2、学习编制可行性研究报告。 二、实验要求 硬件:Intel Pentium 120 或以上级别的CPU,大于16MB的内存。 软件:Win dows 95/98/2000 操作系统,Office 97/2000 软件 学时:2学时 写岀此项实验报告 三、实验内容 1、可行性研究(结构化分析)方法; 2、绘制数据流图,使用Word写实验报告。 四、实验步骤 1 ?引言 1.1 编写目的 可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解。 经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。明确开发风险及其所带来的经济效益。本报告经审核后,交软件经理审查。 1 . 2 项目背景 (1 )待开发的软件产品名称:旅行社机票预定系统。 (2)本项目的提岀者:冯剑。开发者:李翀。用户:旅行社 (3)本软件产品将用于旅行社的机票预定和费用的记录。

1 . 3术语说明 DFD (数据流图):一种描述书记变换的图形工具,是结构化分析方法最普遍采用的表示手段,但数据流图并不是结构化分析模型的全部,数据字典和小说明为数据流图提供了补充,并用以验证图形表示的正确性、一致性和完整性,三者共同构成了被建系统的模型。 1 . 4.系统参考文献 参考文献见附录 2?可行性研究的前提 2.1基本要求 ⑴功能 本软件实现的功能有:为游客提供机票预定服务,提高旅游局的服务质量和服务效率。 对航班数据库的查询和修改,对机票费用记帐数据库的查询和修改,记录旅客信息(姓名、性别、年龄、身份证号、单位、旅行时间、目的地)、航班时间和班次,打印机票和帐单。 (2) 性能 时间:提供的信息必须及时的反映在工作平台上。售票系统的定单必须无差错的存 储在机场的主服务器上。对服务器上的数据必须进行及时正确的刷新。一笔业务在一分钟内完成。空间:运行空间 2M。 (3) 系统的输入和输岀 输入:旅行社定票单。数据完整,详实。 输岀:机票、帐单。简捷,快速,实时。 (4) 处理流程 旅行社将定票信息输入定票系统,系统输岀机票和帐单给旅客。 5 )安全保密要求

大学物理实验数据处理基本方法

实验数据处理基本方法 实验必须采集大量数据,数据处理是指从获得数据开始到得出最后结 论的整个加工过程,它包括数据记录、整理、计算与分析等,从而寻找出 测量对象的内在规律,正确地给出实验结果。因此,数据处理是实验工作 不可缺少的一部分。数据处理涉及的内容很多,这里只介绍常用的四种方 法。 1列表法 对一个物理量进行多次测量,或者测量几个量之间的函数关系,往往 借助于列表法把实验数据列成表格。其优点是,使大量数据表达清晰醒目, 条理化,易于检查数据和发现问题,避免差错,同时有助于反映出物理量 之间的对应关系。所以,设计一个简明醒目、合理美观的数据表格,是每 一个同学都要掌握的基本技能。 列表没有统一的格式,但所设计的表格要能充分反映上述优点,应注意以下几点:1.各栏目均应注明所记录的物理量的名称(符号 )和单位; 2.栏目的顺序应充分注意数据间的联系和计算顺序,力求简明、齐全、有条理; 3.表中的原始测量数据应正确反映有效数字,数据不应随便涂改,确实要修改数据时, 应将原来数据画条杠以备随时查验; 4.对于函数关系的数据表格,应按自变量由小到大或由大到小的顺序排列,以便于判 断和处理。 2图解法 图线能够明显地表示出实验数据间的关系,并且通过它可以找出两个 量之间的数学关系,因此图解法是实验数据处理的重要方法之一。图解法 处理数据,首先要画出合乎规范的图线,其要点如下: 1.选择图纸作图纸有直角坐标纸 ( 即毫米方格纸 ) 、对数坐标纸和 极坐标纸等,根据 作图需要选择。在物理实验中比较常用的是毫米方格纸,其规格多为17 25 cm 。 2.曲线改直由于直线最易描绘 , 且直线方程的两个参数 ( 斜率和截距 ) 也较易算得。所以对于两个变量之间的函数关系是非线性的情形,在用图解法时 应尽可能通过变量代换 将非线性的函数曲线转变为线性函数的直线。下面为几种常用的变换方法。 ( 1) xy c ( c 为常数 ) 。 令 z 1,则 y cz,即 y 与 z 为线性关系。 x ( 2) x c y ( c 为常x2,y 1 z ,即 y 与为线性关系。

数值计算实验报告

(此文档为word格式,下载后您可任意编辑修改!) 2012级6班###(学号)计算机数值方法 实验报告成绩册 姓名:宋元台 学号: 成绩:

数值计算方法与算法实验报告 学期: 2014 至 2015 第 1 学期 2014年 12月1日课程名称: 数值计算方法与算法专业:信息与计算科学班级 12级5班 实验编号: 1实验项目Neton插值多项式指导教师:孙峪怀 姓名:宋元台学号:实验成绩: 一、实验目的及要求 实验目的: 掌握Newton插值多项式的算法,理解Newton插值多项式构造过程中基函数的继承特点,掌握差商表的计算特点。 实验要求: 1. 给出Newton插值算法 2. 用C语言实现算法 二、实验内容 三、实验步骤(该部分不够填写.请填写附页)

1.算法分析: 下面用伪码描述Newton插值多项式的算法: Step1 输入插值节点数n,插值点序列{x(i),f(i)},i=1,2,……,n,要计算的插值点x. Step2 形成差商表 for i=0 to n for j=n to i f(j)=((f(j)-f(j-1)(x(j)-x(j-1-i)); Step3 置初始值temp=1,newton=f(0) Step4 for i=1 to n temp=(x-x(i-1))*temp*由temp(k)=(x-x(k-1))*temp(k-1)形成 (x-x(0).....(x-x(i-1)* Newton=newton+temp*f(i); Step5 输出f(x)的近似数值newton(x)=newton. 2.用C语言实现算法的程序代码 #includeMAX_N) { printf("the input n is larger than MAX_N,please redefine the MAX_N.\n"); return 1; } if(n<=0) { printf("please input a number between 1 and %d.\n",MAX_N); return 1; } printf("now input the (x_i,y_i)i=0,...%d\n",n); for(i=0;i<=n;i++) { printf("please input x(%d) y(%d)\n",i,i);

《数值计算方法》上机实验报告

《数值计算方法》上机实验报告华北电力大学 实验名称数值il?算方法》上机实验课程名称数值计算方法专业班级:电力实08学生姓名:李超然学号:200801001008 成绩: 指导教师:郝育黔老师实验日期:2010年04月华北电力大学实验报告数值计算方法上机实验报吿一. 各算法的算法原理及计算机程序框图1、牛顿法求解非线性方程 *对于非线性方程,若已知根的一个近似值,将在处展开成一阶 xxfx ()0, fx ()xkk 泰勒公式 "f 0 / 2 八八,fxfxfxxxxx 0 0 0 0 0 kkkk2! 忽略高次项,有 ,fxfxfxxx 0 ()()(),,, kkk 右端是直线方程,用这个直线方程来近似非线性方程。将非线性方程的 **根代入,即fx ()0, X ,* fxfxxx 0 0 0 0, ,, kkk fx 0 fx 0 0,

解出 fX 0 *k XX,, k' fx 0 k 水将右端取为,则是比更接近于的近似值,即xxxxk, Ik, Ik fx ()k 八XX, Ikk* fx()k 这就是牛顿迭代公式。 ,2,计算机程序框图:,见, ,3,输入变量、输出变量说明: X输入变量:迭代初值,迭代精度,迭代最大次数,\0 输出变量:当前迭代次数,当前迭代值xkl ,4,具体算例及求解结果: 2/16 华北电力大学实验报吿 开始 读入 l>k /fx()0?,0 fx 0 Oxx,,01* fx ()0 XX,,,?10 kk, ,1,kN, ?xx, 10 输出迭代输出X输出奇异标志1失败标志

,3,输入变量、输出变量说明: 结束 例:导出计算的牛顿迭代公式,并il ?算。(课本P39例2-16) 115cc (0), 求解结果: 10. 750000 10.723837 10. 723805 10. 723805 2、列主元素消去法求解线性方程组,1,算法原理: 高斯消去法是利用现行方程组初等变换中的一种变换,即用一个不为零的数乘 -个 方程后加只另一个方程,使方程组变成同解的上三角方程组,然后再自下而上 对上三角 3/16 华北电力大学实验报告方程组求解。 列选主元是当高斯消元到第步时,从列的以下(包括)的各元素中选出绝 aakkkkkk 对值最大的,然后通过行交换将其交换到的位置上。交换系数矩阵中的 两行(包括常ekk 数项),只相当于两个方程的位置交换了,因此,列选主元不影响求解的结 ,2,计算机程序框图:,见下页, 输入变量:系数矩阵元素,常向量元素baiji 输出变量:解向量元素bbb,,12n

实验数据处理的几种方法

实验数据处理的几种方法 物理实验中测量得到的许多数据需要处理后才能表示测量的最终结果。对实验数据进行记录、整理、计算、分析、拟合等,从中获得实验结果和寻找物理量变化规律或经验公式的过程就是数据处理。它是实验方法的一个重要组成部分,是实验课的基本训练内容。本章主要介绍列表法、作图法、图解法、逐差法和最小二乘法。 1.4.1 列表法 列表法就是将一组实验数据和计算的中间数据依据一定的形式和顺序列成表格。列表法可以简单明确地表示出物理量之间的对应关系,便于分析和发现资料的规律性,也有助于检查和发现实验中的问题,这就是列表法的优点。设计记录表格时要做到:(1)表格设计要合理,以利于记录、检查、运算和分析。 (2)表格中涉及的各物理量,其符号、单位及量值的数量级均要表示清楚。但不要把单位写在数字后。 (3)表中数据要正确反映测量结果的有效数字和不确定度。列入表中的除原始数据外,计算过程中的一些中间结果和最后结果也可以列入表中。 (4)表格要加上必要的说明。实验室所给的数据或查得的单项数据应列在表格的上部,说明写在表格的下部。 1.4.2 作图法 作图法是在坐标纸上用图线表示物理量之间的关系,揭示物理量之间的联系。作图法既有简明、形象、直观、便于比较研究实验结果等优点,它是一种最常用的数据处理方法。 作图法的基本规则是: (1)根据函数关系选择适当的坐标纸(如直角坐标纸,单对数坐标纸,双对数坐标纸,极坐标纸等)和比例,画出坐标轴,标明物理量符号、单位和刻度值,并写明测试条件。 (2)坐标的原点不一定是变量的零点,可根据测试范围加以选择。,坐标分格最好使最低数字的一个单位可靠数与坐标最小分度相当。纵横坐标比例要恰当,以使图线居中。 (3)描点和连线。根据测量数据,用直尺和笔尖使其函数对应的实验点准确地落在相应的位置。一张图纸上画上几条实验曲线时,每条图线应用不同的标记如“+”、“×”、“·”、“Δ”等符号标出,以免混淆。连线时,要顾及到数据点,使曲线呈光滑曲线(含直线),并使数据点均匀分布在曲线(直线)的两侧,且尽量贴近曲线。个别偏离过大的点要重新审核,属过失误差的应剔去。 (4)标明图名,即做好实验图线后,应在图纸下方或空白的明显位置处,写上图的名称、作者和作图日期,有时还要附上简单的说明,如实验条件等,使读者一目了然。作图时,一般将纵轴代表的物理量写在前面,横轴代表的物理量写在后面,中间用“~”

数值分析实验报告模板

数值分析实验报告模板 篇一:数值分析实验报告(一)(完整) 数值分析实验报告 1 2 3 4 5 篇二:数值分析实验报告 实验报告一 题目:非线性方程求解 摘要:非线性方程的解析解通常很难给出,因此线性方程的数值解法就尤为重要。本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法。利用二分法求解给定非线性方程的根,在给定的范围内,假设f(x,y)在[a,b]上连续,f(a)xf(b) 直接影响迭代的次数甚至迭代的收敛与发散。即若x0 偏离所求根较远,Newton法可能发散的结论。并且本实验中还利用利用改进的Newton法求解同样的方程,且将结果与Newton法的结果比较分析。 前言:(目的和意义) 掌握二分法与Newton法的基本原理和应用。掌握二分法的原理,验证二分法,在选对有根区间的前提下,必是收

敛,但精度不够。熟悉Matlab语言编程,学习编程要点。体会Newton使用时的优点,和局部收敛性,而在初值选取不当时,会发散。 数学原理: 对于一个非线性方程的数值解法很多。在此介绍两种最常见的方法:二分法和Newton法。 对于二分法,其数学实质就是说对于给定的待求解的方程f(x),其在[a,b]上连续,f(a)f(b) Newton法通常预先要给出一个猜测初值x0,然后根据其迭代公式xk?1?xk?f(xk) f'(xk) 产生逼近解x*的迭代数列{xk},这就是Newton法的思想。当x0接近x*时收敛很快,但是当x0选择不好时,可能会发散,因此初值的选取很重要。另外,若将该迭代公式改进为 xk?1?xk?rf(xk) 'f(xk) 其中r为要求的方程的根的重数,这就是改进的Newton 法,当求解已知重数的方程的根时,在同种条件下其收敛速度要比Newton法快的多。 程序设计: 本实验采用Matlab的M文件编写。其中待求解的方程写成function的方式,如下 function y=f(x);

大学物理实验数据处理方法总结

有效数字 1、有效数字不同的数相加减时,以参加运算各量中有效数字最末一位位数最高的为准,最后结果与它对其,余下的尾数按舍入规则处理。 2、乘除法以参与运算的数值中有效位数最少的那个数为准,但当结果的第1位数较小,比如1、2、3时可以多保留一位(较小:结果的第一位数小于 有效数字最少的结果第一位数)! 例如:n=tg56° θ=56° d θ=1° θθθθθ2cos d d d dtg dn == 为保留) (,带入848.156n 15605.018056cos 1cos 22=?=∴?=??=≈?=?= ?tg n θθπθθ 3、可以数字只出现在最末一位:对函数运算以不损失有效数字为准。 例如:20*lg63.4 可疑最小位变化0.1 Y=20lgx 01.04 .631.010ln 2010ln 20ln 10ln 20≈===x dx dx dx x d dy 04.364.63lg 20=∴ 4、原始数据记录、测量结果最后表示,严格按有效数字规定处理。(中间过程、结果多算几次) 5、4舍5入6凑偶 6、不估计不确定度时,有效数字按相应运算法则取位;计算不确定度时以不确定度的处理结果为准。 真值和误差 1、 误差=测量值-真值 ΔN=N-A 2、 误差既有大小、方向与政府。 3、 通常真值和误差都是未知的。 4、 相对约定真值,误差可以求出。 5、 用相对误差比较测量结果的准确度。 6、 ΔN/A ≈ΔN/N 7、 系统误差、随机误差、粗大误差 8、 随机误差:统计意义下的分布规律。粗大误差:测量错误 9、 系统误差和随机误差在一定条件下相互转化。 不确定度 1、P (x )是概率密度函数 dx P dx x x P p )x (之间的概率是测量结果落在+当x 取遍所有可能的概率值为1. 2、正态分布且消除了系统误差,概率最大的位置是真值A 3、曲线“胖”精密度低“瘦”精密度高。 4、标准误差:无限次测量?∞∞-=-2 )()(dx X P A X x )(σ 有限次测量且真值不知道标准偏

计算方法实验报告格式

计算方法实验报告格式 小组名称: 组长姓名(班号): 小组成员姓名(班号): 按贡献排序情况: 指导教师评语: 小组所得分数: 一个完整的实验,应包括数据准备、理论基础、实验内容及方法,最终对实验结果进行分析,以达到对理论知识的感性认识,进一步加深对相关算法的理解,数值实验以实验报告形式完成,实验报告格式如下: 一、实验名称 实验者可根据报告形式需要适当写出. 二、实验目的及要求 首先要求做实验者明确,为什么要做某个实验,实验目的是什么,做完该实验应达到什么结果,在实验过程中的注意事项,实验方法对结果的影响也可以以实验目的的形式列出. 三、算法描述(实验原理与基础理论) 数值实验本身就是为了加深对基础理论及方法的理解而设置的,所以要求将实验涉及到的理论基础,算法原理详尽列出. 四、实验内容 实验内容主要包括实验的实施方案、步骤、实验数据准备、实验的算法以及可能用到的仪器设备. 五、程序流程图 画出程序实现过程的流程图,以便更好的对程序执行的过程有清楚的认识,在程序调试过程中更容易发现问题. 六、实验结果 实验结果应包括实验的原始数据、中间结果及实验的最终结果,复杂的结果可以用表格

形式列出,较为简单的结果可以与实验结果分析合并出现. 七、实验结果分析 实验结果分析包括对对算法的理解与分析、改进与建议. 数值实验报告范例 为了更好地做好数值实验并写出规范的数值实验报告,下面给出一简单范例供读者参考. 数值实验报告 小组名称: 小组成员(班号): 按贡献排序情况: 指导教师评语: 小组所得分数: 一、实验名称 误差传播与算法稳定性. 二、实验目的 1.理解数值计算稳定性的概念. 2.了解数值计算方法的必要性. 3.体会数值计算的收敛性与收敛速度. 三、实验内容 计算dx x x I n n ? += 1 10 ,1,2,,10n = . 四、算法描述 由 dx x x I n n ? += 1 10 ,知 dx x x I n n ?+=--101110,则

数值分析实验报告

实验一 误差分析 实验(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 )1.1() ()20()2)(1()(20 1∏=-=---=k k x x x x x p Λ 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 )2.1(0 )(19=+x x p ε 其中ε是一个非常小的数。这相当于是对()中19x 的系数作一个小的扰动。我们希望比较()和()根的差别,从而分析方程()的解对扰动的敏感性。 实验内容:为了实现方便,我们先介绍两个Matlab 函数:“roots ”和“poly ”。 roots(a)u = 其中若变量a 存储n+1维的向量,则该函数的输出u 为一个n 维的向量。设a 的元素依次为121,,,+n a a a Λ,则输出u 的各分量是多项式方程 01121=+++++-n n n n a x a x a x a Λ 的全部根;而函数 poly(v)b = 的输出b 是一个n+1维变量,它是以n 维变量v 的各分量为根的多项式的系数。可见“roots ”和“poly ”是两个互逆的运算函数。 ;000000001.0=ess );21,1(zeros ve = ;)2(ess ve = ))20:1((ve poly roots +

数值分析实验报告之常微分方程数值解

数学与计算科学学院实验报告 实验项目名称常微分方程数值解 所属课程名称数值方法B 实验类型验证 实验日期 2013.11.11 班级 学号 姓名 成绩

【实验过程】(实验步骤、记录、数据、分析) 注:以下图形是通过Excel 表格处理数据得出,并未通过MATLAB 编程序所得! 1、1(0)1dy y x dx y ?=-++???=? 由题可知精确解为:x y x e -=+,当x=0时,y(x)=0。 h=0.1 表1 h=0.1时三个方法与精确值的真值表 图1 h=0.1时三个方法走势图 步长 Euler 法 预估校正法 经典四阶库 精确值 0.1 1.010000 1.005000 1.004838 1.249080 0.2 1.029000 1.019025 1.018731 1.055455 0.3 1.056100 1.041218 1.040818 1.091217 0.4 1.090490 1.070802 1.070320 1.131803 0.5 1.131441 1.107076 1.106531 1.176851 0.6 1.178297 1.149404 1.148812 1.226025 0.7 1.230467 1.197211 1.196586 1.279016 0.8 1.287421 1.249975 1.249329 1.335536 0.9 1.348678 1.307228 1.306570 1.395322 1.0 1.413811 1.368541 1.367880 1.458127

h=0.05(此时将源程序中i的围进行扩大,即for(i=0;i<20;i++)) 表2 h=0.05时三个方法与精确值的真值表步长Euler法预估校正法经典四阶库精确值 0.05 1.002500 1.001250 1.001229 1.011721 0.10 1.007375 1.004877 1.004837 1.024908 0.15 1.014506 1.010764 1.010708 1.039504 0.20 1.023781 1.018802 1.018731 1.055455 0.25 1.035092 1.028885 1.028801 1.072710 0.30 1.048337 1.040915 1.040818 1.091217 0.35 1.063421 1.054795 1.054688 1.110931 0.40 1.080250 1.070436 1.070320 1.131801 0.45 1.098737 1.087752 1.087628 1.153791 0.50 1.118800 1.106662 1.106531 1.176851 0.55 1.140360 1.127087 1.126950 1.200942 0.60 1.163342 1.148954 1.148812 1.226025 0.65 1.187675 1.172193 1.172046 1.252062 0.70 1.213291 1.196736 1.196585 1.279016 0.75 1.240127 1.222520 1.222367 1.306852 0.80 1.268121 1.249485 1.249329 1.335536 0.85 1.297215 1.277572 1.277415 1.365037 0.90 1.327354 1.306728 1.306570 1.395322 0.95 1.358486 1.336900 1.336741 1.426362 1.00 1.390562 1.368039 1.367880 1.458127 图2 h=0.05时三个方法走势图

数值分析实验报告

学生实验报告实验课程名称 开课实验室 学院年级专业班 学生姓名学号 开课时间至学年学期

if(A(m,k)~=0) if(m~=k) A([k m],:)=A([m k],:); %换行 end A(k+1:n, k:c)=A(k+1:n, k:c)-(A(k+1:n,k)/ A(k,k))*A(k, k:c); %消去end end x=zeros(length(b),1); %回代求解 x(n)=A(n,c)/A(n,n); for k=n-1:-1:1 x(k)=(A(k,c)-A(k,k+1:n)*x(k+1:n))/A(k,k); end y=x; format short;%设置为默认格式显示,显示5位 (2)建立MATLAB界面 利用MA TLAB的GUI建立如下界面求解线性方程组: 详见程序。 五、计算实例、数据、结果、分析 下面我们对以上的结果进行测试,求解:

? ? ? ? ? ? ? ? ? ? ? ? - = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - - - - - - 7 2 5 10 13 9 14 4 4 3 2 1 13 12 4 3 3 10 2 4 3 2 1 x x x x 输入数据后点击和,得到如下结果: 更改以上数据进行测试,求解如下方程组: 1 2 3 4 43211 34321 23431 12341 x x x x ?? ???? ?? ???? ?? ???? = ?? ???? - ?? ???? - ???? ?? 得到如下结果:

实验数据处理的几种方法

1.4 实验数据处理的几种方法 物理实验中测量得到的许多数据需要处理后才能表示测量的最终结果。对实验数据进行记录、整理、计算、分析、拟合等,从中获得实验结果和寻找物理量变化规律或经验公式的过程就是数据处理。它是实验方法的一个重要组成部分,是实验课的基本训练内容。本章主要介绍列表法、作图法、图解法、逐差法和最小二乘法。 1.4.1 列表法 列表法就是将一组实验数据和计算的中间数据依据一定的形式和顺序列成表格。列表法可以简单明确地表示出物理量之间的对应关系,便于分析和发现资料的规律性,也有助于检查和发现实验中的问题,这就是列表法的优点。设计记录表格时要做到:(1)表格设计要合理,以利于记录、检查、运算和分析。 (2)表格中涉及的各物理量,其符号、单位及量值的数量级均要表示清楚。但不要把单位写在数字后。 (3)表中数据要正确反映测量结果的有效数字和不确定度。列入表中的除原始数据外,计算过程中的一些中间结果和最后结果也可以列入表中。 (4)表格要加上必要的说明。实验室所给的数据或查得的单项数据应列在表格的上部,说明写在表格的下部。 1.4.2 作图法 作图法是在坐标纸上用图线表示物理量之间的关系,揭示物理量之间的联系。作图法既有简明、形象、直观、便于比较研究实验结果等优点,它是一种最常用的数据处理方法。 作图法的基本规则是: (1)根据函数关系选择适当的坐标纸(如直角坐标纸,单对数坐标纸,双对数坐标纸,极坐标纸等)和比例,画出坐标轴,标明物理量符号、单位和刻度值,并写明测试条件。 (2)坐标的原点不一定是变量的零点,可根据测试范围加以选择。,坐标分格最好使最低数字的一个单位可靠数与坐标最小分度相当。纵横坐标比例要恰当,以使图线居中。 (3)描点和连线。根据测量数据,用直尺和笔尖使其函数对应的实验点准确地落在相应的位置。一张图纸上画上几条实验曲线时,每条图线应用不同的标记如“+”、“×”、“·”、“Δ”等符号标出,以免混淆。连线时,要顾及到数据点,使曲线呈光滑曲线(含直线),并使数据点均匀分布在曲线(直线)的两侧,且尽量贴近曲线。个别偏离过大的点要重新审核,属过失误差的应剔去。 (4)标明图名,即做好实验图线后,应在图纸下方或空白的明显位置处,写上图的名称、作者和作图日期,有时还要附上简单的说明,如实验条件等,使读者一目了然。

(完整版)哈工大-数值分析上机实验报告

实验报告一 题目:非线性方程求解 摘要:非线性方程的解析解通常很难给出,因此线性方程的数值解法就尤为重要。本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法。 前言:(目的和意义) 掌握二分法与Newton法的基本原理和应用。 数学原理: 对于一个非线性方程的数值解法很多。在此介绍两种最常见的方法:二分法和Newton法。 对于二分法,其数学实质就是说对于给定的待求解的方程f(x),其在[a,b]上连续,f(a)f(b)<0,且f(x)在[a,b]内仅有一个实根x*,取区间中点c,若,则c恰为其根,否则根据f(a)f(c)<0是否成立判断根在区间[a,c]和[c,b]中的哪一个,从而得出新区间,仍称为[a,b]。重复运行计算,直至满足精度为止。这就是二分法的计算思想。

Newton法通常预先要给出一个猜测初值x0,然后根据其迭代公式 产生逼近解x*的迭代数列{x k},这就是Newton法的思想。当x0接近x*时收敛很快,但是当x0选择不好时,可能会发散,因此初值的选取很重要。另外,若将该迭代公式改进为 其中r为要求的方程的根的重数,这就是改进的Newton法,当求解已知重数的方程的根时,在同种条件下其收敛速度要比Newton法快的多。 程序设计: 本实验采用Matlab的M文件编写。其中待求解的方程写成function的方式,如下 function y=f(x); y=-x*x-sin(x); 写成如上形式即可,下面给出主程序。 二分法源程序: clear %%%给定求解区间 b=1.5; a=0;

%%%误差 R=1; k=0;%迭代次数初值 while (R>5e-6) ; c=(a+b)/2; if f12(a)*f12(c)>0; a=c; else b=c; end R=b-a;%求出误差 k=k+1; end x=c%给出解 Newton法及改进的Newton法源程序:clear %%%% 输入函数 f=input('请输入需要求解函数>>','s') %%%求解f(x)的导数 df=diff(f);

现代数值计算方法实验三

实验报告 实验三 插值法与拟合实验 一、实验目的 1、懂得利用数据建模两种方法(插值法和拟合多项式法)对一批数据()11,y x , ()22,y x ,……,()n n y x ,进行处理,学会对数据的结果进行误差分析. 2、比较分析这些方法的优缺点,并且在适合的场合应用相应的方法. 二、实验题目 1. 插值效果的比较 实验题目:将区间][5,5-10等分,对下列函数分别计算插值节点k x 的值,进行不同类型的插值,作出插值函数的图形并与()x f y =的图形进行比较: )2 11x x f += ; ()x x f a r c t a n =; ()4 21x x x f += . (1) 做拉格朗日插值; (2) 做三次样条插值. 2. 拟合多项式实验 实验题目:给定数据点如下表所示: 分别对上述数据作三次多项式和五次多项式拟合,并求平方误差,作出离散函数(i x ,i y )和拟合函数的图形. 三、实验原理 数据建模有两大方法:一类是插值方法,要求所要函数()x ?严格遵守从数 据()11,y x ,()22,y x ,……,()n n y x ,;另一类是拟合方法,允许函数()x ?在数据点上的有误差,但是要求达到某种误差指标的最小化.

第一题 ⑴拉格朗日插值算法原理 %malagr.m function yy=malagr(x,y,xx) %用途:拉格朗日插值法求解 %格式:yy=malagr(x,y,xx), x是节点向量,y是节点对应的函数值向量,% xx是插值点(可以是多个),,yy返回插值结果 m=length(x);n=length(y); if m~=n, error('向量x与y的长度必须一致');end s=0; for i=1:n t=ones(1,length(xx)); for j=1:n if j~=i t=t.*(xx-x(j))/(x(i)-x(j)); end end s=s+t*y(i); end yy=s; end ⑵三次样条插值算法原理: %maspline.m function m=maspline(x,y,dy0,dyn,xx) %用途:三阶样条插值(一阶导数边界条件) %格式:m=maspline(x,y,dy0,dyn,xx), x为节点向量,y为数据, %dy0,dyn为左右两端点的一阶导数如果xx缺省,则输出各节点的 %的一阶导数值,,m为xx的三阶样条插值

实验数据处理的基本方法

实验数据处理的基本方法 数据处理是物理实验报告的重要组成部分,其包含的内容十分丰富,例如数据的记录、函数图线的描绘,从实验数据中提取测量结果的不确定度信息,验证和寻找物理规律等。本节介绍物理实验中一些常用的数据处理方法。 1列表法 将实验数据按一定规律用列表方式表达出来是记录和处理实验数据最常用的方法。表格的设计要求对应关系清楚、简单明了、有利于发现相关量之间的物理关系;此外还要求在标题栏中注明物理量名称、符号、数量级和单位等;根据需要还可以列出除原始数据以外的计算栏目和统计栏目等。最后还要求写明表格名称、主要测量仪器的型号、量程和准确度等级、有关环境条件参数如温度、湿度等。 本课程中的许多实验已列出数据表格可供参考,有一些实验的数据表格需要自己设计,表1.7—1是一个数据表格的实例,供参考。 表1.7—1数据表格实例 杨氏模量实验增减砝码时,相应的镜尺读数 2作图法

作图法可以最醒目地表达物理量间的变化关系。从图线上还可以简便求出实验需要的某些结果(如直线的斜率和截距值等),读出没有进行观测的对应点(内插法),或在一定条件下从图线的延伸部分读到测量范围以外的对应点(外推法)。此外,还可以把某些复杂的函数关系,通过一定的变换用直线图表示出来。例如半导体热敏电阻的电阻与温度关系为,取对数后得到 ,若用半对数坐标纸,以lgR为纵轴,以1/T为横轴画图,则为一条直线。 要特别注意的是,实验作图不是示意图,而是用图来表达实验中得到的物理量间的关系,同 时还要反映出测量的准确程度,所以必须满足一定的作图要求。 1)作图要求 (1)作图必须用坐标纸。按需要可以选用毫米方格纸、半对数坐标纸、对数坐标纸或极坐标纸等。 (2)选坐标轴。以横轴代表自变量,纵轴代表因变量,在轴的中部注明物理量的名称符号及其单位,单位加括号。 (3)确定坐标分度。坐标分度要保证图上观测点的坐标读数的有效数字位数与实验数据的有效数字位数相同。例如,对于直接测量的物理量,轴上最小格的标度可与测量仪器的最小刻度相同。两轴的交点不一定从零开始,一般可取比数据最小值再小一些的整数开始标值,要尽量使图线占据图纸的大部分,不偏于一角或一边。对每个坐标轴,在相隔一定距离下用整齐的数字注明分度(参阅图1.7—1)。 (4)描点和连曲线。根据实验数据用削尖的硬铅笔在图上描点,点子可用“+”、“×”、“⊙”等符号表示,符号在图上的大小应与该两物理量的不确定度大小相当。点子要清晰,不能用图线盖过点子。连线时要纵观所有数据点的变化趋势,用曲线板连出光滑而细的曲线(如系直线可用直尺),连线不能

相关文档
最新文档