文档库 最新最全的文档下载
当前位置:文档库 › 最新c语言大学生实验报告模板优秀范文

最新c语言大学生实验报告模板优秀范文

最新c语言大学生实验报告模板优秀范文
最新c语言大学生实验报告模板优秀范文

c语言大学生实验报告模板优秀范文

C语言一经出现就以其功能丰富、表达能力强、灵活方便、应用面广等特点迅速在全世界普及和推广,小编整理了c语言大学生实验报告模板优秀范文,希望能帮助到您。

c语言大学生实验报告模板优秀范文一

做完这个课程设计,我们的自信一下子提高了;尽管对于有些人这种程序会很简单,可对我们c语言初学者来说,已经很不容易了。这次体验为以后的学习计算机的我们增强了信心。享受劳动成果的滋味实在很美妙啊!虽然对着电脑做程序,有点累有点热,可是当看到劳动成果时,真是别有一番滋味在心头啊!世上无难事,只怕有心人,的确如此。做完这个程序最大的收获就是感受到了集体的力量,当然个人的智慧也是很重要的哦!

忙碌了一个多星期,在大家的共同努力下,我们总算将此程序设计出来。尽管不是自己独立完成,但仍然很高兴,因为在设计的过程中,让我了解到要设计一个程序,查找资料是至关重要的,在他人的基础上,再根据自己所学进行修改与调试,最后设计出自己想要的程序,这过程艰辛,但只要你持之以恒,成功指日可待。

c语言大学生实验报告模板优秀范文二

为期一个星期的c++实训已经基本结束,但是给了我很大的影响。通过这次实训,使我明白C++语言这门课程光仅仅是听课是远远不够的,上机训练也不容忽视。

通过上机训练,才能够明白自己知识的不足,才能够有的放矢,更

加深刻的理解C语言中的知识点。

通过实训,我找到了许多知识漏点,学到了很多以前不懂的知识,以前认为自己已经懂了的知识点也理解更加深刻了。

尤其是遇到了自己当时不知道如何编写的C++语言题目如何编写,通过自己的学习和同同学的交流后,试编和改错,最后能够顺利的编写出来,带来的也有成就感。并增加了我们对C++语言的兴趣和学好C++语言的信心。

与同学们交流的过程中,了解了程序的多种解决方法,知道了不同编写方法有不同的特点。总结C++语言实训的几个重要作用:

1.加深对课堂讲授内容的理解

课堂上要讲授许多关于C++语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C++语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C++语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差。

学习C++语言不能停留在学习它的语法规则,而是利用学到的知识编写C++语言程序,解决实际问题。即把C++语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握C++语言、自己编写的程序是否能够正确地解题。

自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对C++语言的理解和程序开发

能力。

2.熟悉程序开发环境、学习计算机系统的操作方法

一个C++语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓”环境”就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握C++语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。

3.学习上机调试程序

完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断出现麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺利运行,但是运行结果显然是错误的。开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。

通过这次为数不多的几天计算机实践学习,我们更好的了解了一些关于C++语言的知识,理解巩固了我们C++语言的理论知识。C++语言这门课程对于我们应用电子专业的同学也相当重要,我们会再将来继续学习并熟悉这门课程。

c语言大学生实验报告模板优秀范文三

一、实习目的

1。掌握在集成环境中编辑、编译、连接和运行C程序的方法。

(1)运行TC

(2)启动TC集成环境,输入一个源程序,编译并运行。

2。掌握单步执行、设置/去除断点,观察变量或表达式的值。

(3)在该程序中按CTRL+F7单步招待并在观察窗口中查看变量和表达式的值。

(4)设置/去除断点,继续调试。

1、熟练掌握if.switch分支语句的使用。

2、熟练掌握for.while.do.while循环语句的使用。

3、熟练掌握函数的定义、说明、参数传递及嵌套和递归调用方法。

4、熟练掌握一维数组、二维数组、字符数组的定义、说明和使用方法。

熟练掌握结构体和指针的综合应用链表的操作

二、实习地点

北京交通干部管理学院计算机系机房十三号.

三、实习成果

熟练掌握TC集成环境的使用方法。认真编写实习报告和实习总结,描述实习操作和心得体会,总结在这次实习中的业务收获,作出自我评价。熟练掌握并应用TC程序设计的各个知识点。掌握结构体和指针的联合使用,学会链表的构造和常用操作方法,认真编写实习日志和实习体会。并通过各种途径查找所需资料,拓宽视野,培养自学能力。

四、实习心得

在短短一周的实习期间使我获取了不少新知识也巩固了许多老知识。我体会到了老师和同学们的热心帮助,无论面对学习中多大的困难,同学们都会帮助你,老师也会帮助你,大家就像兄弟姐妹一样。老师安排我们有具有的分工:

首先,在计算机机房里同学们积极的对C语言进行巩固与实习,老师热心的讲解同学们提出的问题和实习过程中应该注意的事项和同学们的任何。老师把我们分为几组,每一组十一个人,并且分配了具体的任务,在我们实习结束后每一组的同学都把自己组里的成果展示给大家一起分享,告诉大家编程的原理、方法等,使同学们既有动手能力,又能提高语言表达能力。

然后同学们把自到自己的小组里,大家具体分工,你编这道题,我编这道题……我们不会的地方就去问学习比较好一些的同学,或者去问老师,老师和同学们总是那么的热心,只要你还不明白,不论你问多少次,老师和同学们都会耐心地给你细心的讲解,直到讲会为止。

最后我们把每天收获到的知识和心得都以实习日志的形式写好,最后交给老师。我们把自己的成果交给老师,就这样,这次实习圆满结束。

这次实习是有益的,它不仅让我们学习到了C语言的知识,更让我们学习到了同学们之间的那种团队精神,为我以后踏入社会工作准备了很多良好的知识与经验。

C语言见习报告篇六:

题目:从键盘输入一组学生的姓名、课程、成绩,编写程序按从高

到低的顺序对成绩排序,并能根据输入的姓名,显示该生的课程名称、成绩和名次。

1.2 实训目的

[参考本文档的说明,用一小段话说明小学期实训的目的] 第2章设计说明

2.1 题目选择

[所选择的题目具体内容。]

2.2 业务分析

[用流程图描述业务流程,用文字说明流程以及数据结构的设计思路。]

第3章系统设计

[要求在本章中给出类、属性、方法的设计结果,或函数、数据结构的设计结果,可结合源程序进行说明。]

3.1模块结构设计

[列出类命名、各属性和方法命名、类型等,或函数声明、数据类型定义等,并结合流程图说明各部分的关联关系]

3.2 主要程序源码

[此部分裂成主要的程序源码,并以文字说明各部分的关系。] 第4章程序调试与运行

[此部分说明所使用的开发工具情况,以及对程序进行调试的方法和过程,要求以具体案例说明调试过程及结果。列出程序运行的输入数据及输出结果]

c语言大学生实验报告模板优秀范文四

在这个星期里,我们在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。

由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。

学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。个人认为课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:

1、加深对课堂讲授内容的理解

课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用c语言这个工具解

决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c 语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。

学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。

通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去”掩盖”程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。

2、熟悉程序开发环境、学习计算机系统的操作方法

一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓”环境”就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。

3、学习上机调试程序

完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断出现麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺利运行,但是运行结果显然是错误的。开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。程序的调试是一个技巧性很强的工作,对于初学者来说,尽快掌握程序调试方法是非常重要的。有时候一个消耗你几个小时时间的小小错误,调试高手一眼就看出错误所在。

通过这次为数不多的几天计算机实践学习,我们了解了一些关于c语言的知识,理解巩固了我们c语言的理论知识,着对我们将来到社会工作将会有莫大的帮助。同时它让我知道,只要你努力,任何东西都不会太难。

大一上期C语言实验报告1熟悉实验环境

成都工业学院·计算机工程学院 《程序设计基础》实验报告 1.实验目的 (1)熟悉C语言运行环境,了解和使用Visual6.0++集成开发环境(2)熟悉Visual6.0++环境的功能键和常用的功能菜单命令 (3)掌握C语言程序的书写格式和C语言程序的结构 (4)掌握C语言上机步骤,以及编辑、编译和运行一个C语言程序的方法 (5)熟悉Visual6.0++环境下的程序调试方法 2.实验内容 (1)按照实验步骤编辑、编译、运行第一个”Hello World”程序(2)利用实验指导中的第二个程序熟悉调试工具,在已知x,y值的情况下,计算出x和y的和、差、积、商,并显示出来(3)编写一个程序,输入a、b、c三个值,输出它们的和与平均值c 3.源程序 (1)#include void main() {printf(”Hello World”);} (2)#include void main() {int x=5,y=2; int s,d,p,q; s=x+y; d=x-y; p=x*y; q=x/y; printf(“和:%d差:%d积%d商:%d“,s,d,p,q);}

(3)#include void main() {int a,b,c.sum; float ave; Printf(“Please enter the a,b,c:”); scanf(“%d%d%d”,&a,&b,&c); sum=a+b+c; ave=(float)sum/3; printf(“sum=%d,ave=%f\n”,sum,ave);} 4.运行结果 (1) (2) (3)输入18、46、69测试得出答案如下

汇编语言实验报告

汇编语言实验报告 专业: 班级: 姓名: 学号: 2011年12月14日

目录 实验1 利用DEBUG调试汇编语言程序段 (3) 实验2 初级程序的编写与调试实验(一) (11) 实验3 初级程序的编写与调试实验(二) (20) 实验4 汇编语言程序上机过程 (28) 实验5 分支程序实验 (33) 实验6 循环程序实验 (40) 实验7 子程序实验 (45)

实验1 利用DEBUG调试汇编语言程序段一.实验目的 1.熟悉DEBUG有关命令的使用方法; 2.利用DEBUG掌握有关指令的功能; 3.利用DEBUG运行简单的程序段。 二.实验内容 1.进入和退出DEBUG程序; 1)开始—运行,输入cmd,点确定进入命令窗口 2)在命令窗口中输入dubug进入debug程序 3)进入debug窗口后,输入q命令退出debug 2.学会DEBUG中的 1)D命令(显示内存数据D 段地址:偏移地址) 例1:-D100;显示DS段, 0100开始的128个节内容

说明:指定要显示其内容的内存区域的起始和结束地址,或起始地址和长度。 ①DSEGREG[起始地址] [L 长度] ;显示SEGREG段中(缺省内默认为DS), 以[起始地址] (缺省内为当前的偏移地址),开始的[L 长度] (缺省内默认为128)个字节的内容. ② D SEGREG[段地址:偏移地址] ;显示SEGREG段中(缺省内默认为DS), [段地址:偏移地址]开始的[L 长度] (缺省内默认为128)个字节内容 -D ;默认段寄存器为DS,当前偏移地址(刚进入debug程序偏移地址为0100H) -D DS:100 ;显示DS段, 0100H开始的128个字节内容 -D CS:200 ;显示CS段, 0200H开始的128个字节内容 -D 200:100 ;显示DS段, 0200:0100H开始的128个字节内容

汇编语言程序设计实验报告

微机原理实验报告 实验名称汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH, 97H,64H,BBH,7FH,0FH,D8H。编程并显示结果:如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H 的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD 码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再 将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 第1页

99223344H = xxxxxxxxH 四、实验代码及结果 实验代码见代码附录 1.1程序运行结果 图1 无符号最大值结果截图 1.1 程序运行结果

图2 有符号最大值截图2.0 程序运行结果

图3 BCD码显示3.0 程序运行结果

图4 ASCII码显示4.0 程序运行结果

图5 移动次数显示5.0 程序运行结果

C语言实验报告参考答案 原

C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.编写程序: (1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 (2)a=160,b=46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。 答案: (1) #include main() {

int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } (2) #include main() { int a,b,c,d; float x; a=160; b=46; c=18;

d=170; x=(a+b)/(b-c)*(c-d); printf("(a+b)/(b-c)*(c-d)=%f\n",x); } 3. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b 时,将0赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 2、(1) 编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7

汇编语言综合实验报告

XXXX大学XX学院 实验报告 课程名称:汇编语言 学号: 姓名: 系: 专业: 年级: 指导教师: 职称: 20xx~20xx学年第一学期

实验项目列表 序号实验项目名称成绩指导教师 1 实验一汇编程序的汇编及运行 2 实验二顺序程序设计 3 实验三分支循环程序设计 4 实验四 DOS功能调用 5 实验五子程序设计 总平均

福建农林大学金山学院实验报告 系:专业:年级: 姓名:学号:实验课程:汇编语言 实验室号:__ __ 实验设备号:实验时间: 90分钟 指导教师签字:成绩: 实验一汇编程序的汇编及运行 1.实验目的和要求 (1)熟悉汇编程序的汇编、连接、执行过程 (2)生成LST文件,查看LST文件 (3)生成OBJ文件,修改语法错误 (4)生成EXE文件 (5)执行 2.实验环境 IBM—PC机及其兼容机 实验的软件环境是: 操作系统:DOS 2.0以上;调试程序:https://www.wendangku.net/doc/af14146085.html,;文本编程程序:EDIT.EXE、WPS.EXE;宏汇编程序:MASM.EXE(或ASM .EXE);连接装配程序:LINK .EXE;交叉引用程序:CREF.EXE(可有可无)。 3.实验内容及实验数据记录 (1)将数据段输入,取名1.txt,保存在MASM文件夹下。生成LST文件,(不必连接、运行)用EDIT查看1.LST文件。试回答:DA1,DA2的偏移量分别是多少?COUNT的值为多少? DA TA SEGMENT ORG 20H NUM1=8 NUM2=NUM1+10H DA1 DB ‘IBM PC’ DA2 DB 0AH, 0DH COUNT EQU $-DA1

合肥工业大学汇编程序设计实验报告完整代码

合肥工业大学 计算机与信息学院实验报告

课程:汇编语言程序设计 专业班级:信息安全13-1 学号:2013211869 姓名:马骏 实验一Debug程序的使用 一.实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 二.实验内容 1、利用DEBUG程序中的“E”命令,将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H 单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H单元中。要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 三.实验过程和程序 实验将”12345678H”和”FEDCBA98H”分别送入起始地址为DS:200H和DS:204H 的两个单元中。还包含两个附加题,一是从DS:0000H 开始的5个16 位带符号数分别记为x,y,z,v,w,E命令初始化为:540,1,-1,1080,0, 试求 w=(v-(x*y+z-540))/x,二是统计bx中1的个数 四.实验结果(包括必要的截图) 将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H 两个单元中。DS:0204H和

直接寻址方式实现数据相加 寄存器间接寻址实现数据相 加. 附加题一: 从DS:0000H开始的 5 个16 位带符号数分别记为x,y,z,v,w,用E命令初始化为:540,1,-1,1080,0, 试求w=(v-(x*y+z-540))/x

C语言实验报告参考答案

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include <> main() { printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include<> main() { int a,b,c,x,y; a=150; b=20; c=45;

x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 3、编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7 a/c的商=3 a/b的余数=10 a/c的余数=15 4. 编译、连接无错,运行后屏幕上显示以下结果: c =-10 实验二顺序结构程序设计 四、程序清单 1.键盘输入与屏幕输出练习 问题1 D 。 问题2 改printf("%c,%c,%d\n",a,b,c);这条语句

汇编语言综合实验报告

综合性设计性实验报告 班级:计算机科学与技术专2014 级 4 班实验项目名称:循环显示1 0 个数字符号 实验项目性质:综合性 实验所属课程:计算机组成原理与汇编语言 实验室(中心):实验室(4 0 7 ) 指导教师: 实验完成时间: 2016 年 5 月 27

一、实验目的 (1)掌握子程序的定义和调用方法。 (2)掌握子程序的编写方法及参数传递的方法。 二、实验内容及要求 本实验内容主要是编写一个显示过程汇编程序,使得在屏幕上依次显示10 个数字符号,每一行13 个字符,然后循环进行显示。实验要求是在代码段中编写这个过程,并要求用主程序调用该过程。 三、实验设备及软件 实验室(407)电脑一台以及编译器DEBUG MASM LINK软件。 四、设计方案 ㈠题目(老师给定或学生自定) 循环显示10个字符 ㈡设计的主要思路 首先,先定义一个数据段和代码段。数据段内定义一个名称为prl大小为一个字节的字符串,即本人学号。代码段内首先借助段寻址伪指令ASSUME规定好代码段和数据段分别在段寄存器CS、DS。然后start内将数据段段地址放入DS中。接下来定义一个子程序dgdsp,其实现的功能主要是先将bl(字符数目控制)清零,dl(字符范围0-9)赋值为字符0的ascll码。然后定义一个lp循环,循环内调用DOS2号功能显示字符,并bl、dl自增,接着比较dl与字符9的ascll码值的大小,若大于就将dl重置为字符0的ascll码。若小于则跳转到next循环,next循环中主要比较bl与13的大小,若小于则跳转到lp,若大于就进入bbb子程序。bbb子程序主要是先保护DX将其压栈,然后使用DOS9号功能显示prl字符串,最后将DX出栈。然后进入next循环将DX压栈,分别使用DOS0a、02号功能将dl输入显示,最后将DX出栈。分别将bl、al清零,最后跳转到lp子程序继续循环执行。 流程图如下:

汇编语言实验报告——累加

《汇编语言》实验报告 ——累加器制作 2014级计算机科学与工程学院 学号: 姓名 一、实验要求: 1.显示 INPUT N :,提示用户输入数字字串 2.检测输入字串的合法性,非法给出提示 3.将输入数字字串转化为数值,存入变量n 4.累加1~n ,存入变量sum 5.以十进制显示sum 二、流程图: 开始 输入 判断是否为回车 判断是否为数字 是 转化为数值,将堆栈中 的高位数字乘10然后与低位数字相加,放入堆 栈 否 显示“error ” 结束 否 是 判断cx=0 否 将CX加到A X中 是 得出sum的值 将结果除以10并将余数存入堆栈,累计位数cx,直至商为0 将堆栈中的数字依次输出显示,直至cx=0

三、源代码: DATAS SEGMENT str1 db "Input N:","$" str2 db "sum=","$" str3 db 0ah,"error","$" n dw 0 sum dw 0 DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS MOV DS,AX LEA dx,str1;输出提示符 mov ah,9 int 21h input: mov ah,01;输入数字 int 21h cmp al,0dh;判断是否为回车 jz step1 cmp al,"0";判断字符合法性 jb error cmp al,"9" ja error sub al,"0";转化为ASCII码 mov ah,0;此段将高位乘10 push ax mov ax,n shl ax,1 push ax mov cl,2 shl ax,cl

汇编语言实验报告(子程序)

西安财经学院信息学院 姓名 学号 10051704 班级计本1004班 指导教师张娟 《汇编语言程序设计》实验报告 实验名子程序结构程序设计 实验室实验楼403 实验日期 2013/06/09 1、实验目的及要求 1. 学习子程序的编写,主子程序的调用 2. 不同模块间程序的调用和调试 二、实验环境 硬件环境:一台微型计算机; 软件环境:windows 7 链接程序:LINK.EXE 调试环境:DOSBOX虚拟平台。 3、实验内容 数据段中的6个字符,“ABCDEF”,调用子程序将其逐个显示出来。子程序的功能是显示一个字符。 四、实验过程 1. 通过编译程序、链接程序分别生成OBJ和EXE文件后,直接运 行查看结果如下: 2. 反汇编,查看程序的指令,如下所示:

3. 用 -d 查看数据段内存放的数据: 4. 单步执行

查看堆栈段的内容:

继续单步执行:

5、源程序清单 程序源代码如下: DATA SEGMENT MAG DB ‘ABCDEF’ DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV SI, 0 MOV CX, 6 LL: MOV DL, MAG[SI] CALL MADD INC SI LOOP LL MOV AH, 4CH INT 21H MADD PROC MOV AH, 02H INT 21H RET MADD ENDP CODE ENDS END START 6、实验体会 本次实验完成比较顺利。首先,程序是在网上找的,但是我用纸笔写下来仔细地看程序的每一行代码,都弄清楚以后,才建立的文件一步一步执行下来的。其实实验中还是遇到了一些小问题,但都能够顺利解决,所以本次实验不仅巩固了理论知识、培养了动手能力,还增加了做实验的自信心。对以后的学习都有很大的帮助。

2010C语言实验报告参考答案

2010C语言实验报告参考答案

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include main() {

printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include main() { int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y);

x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a;

大学课程汇编语言的实验报告

实验报告 实验课程: 学生姓名: 学号: 专业班级:电气信息类III班 2011年12月20日

目录 (1)汇编语言程序上机过程 (2) (2)字符串处理程序实验 (6) (3)子程序实验 (13) (4)中断程序实验 (21) (5)C++调用汇编子程序 (25)

南昌大学实验报告 ---(1)汇编语言程序上机过程学生姓名:学号:专业班级: 实验类型:□验证■综合□设计□创新实验日期:2011.11.12/13实验成绩:一、实验目的 熟练掌握汇编语言程序的编辑、调试和运行的过程和方法。了解汇编语言程序的汇编、运行环境。 二、实验内容 1.掌握常用的编辑工具软件(如WORD、EDIT)、MASM和LINK的使用; 2.伪指令:SEGMENT,ENDS,ASSUME,END,OFFSET,DUP; 3.利用的INT21H的1号功能实现键盘输入的方法; 三、实验环境 PC微机 DOS操作系统或Windows操作系统 MASM.EXE,LINK.EXE,https://www.wendangku.net/doc/af14146085.html,或宏汇编集成环境 四、实验要求 1.仔细阅读有关伪指令SEGMENT,ENDS,ASSUME,END,OFFSET,DUP的内容; 2.了解利用的INT21H的1号功能实现键盘输入的方法,了解.EXE文件和.COM文件的区别及用INT21H4C号功能返回系统的方法; 3.阅读下面程序段。 五、主要实验步骤 程序: data segment message db'This is a sample program of keyboard and disply' db0dh,0ah,'Please strike the key!',0dh,0ah,'$' data ends stack segment para stack'stack' db50dup(?) stack ends code segment assume cs:code,ds:data,ss:stack start:mov ax,data mov ds,ax mov dx,offset message mov ah,9 int21h again:mov ah,1

哈工大(威海)c语言实验报告册答案

实验1简单判定性问题求解 一、实验学时 完成本实验需4学时。 二、实验目的 1、阅读程序题 (1)掌握C语言数据类型,熟悉如何定义一个整型、字符型的变量,以及对它们赋值的方法; (2)掌握不同的类型数据之间赋值的规律; (3)掌握数据在内存中的存储方式; (4)学会输入、输出函数的基本格式和使用方法; (5)学会使用有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。 2、编程题 (1)如何运用if-else判定性结构进行程序设计; (2)如何运用switch判定性结构进行程序设计。 3、调试题 (1)熟悉C程序的编辑、编译、连接和运行的过程。 三、实验指导 为了达到最佳的实验效果,以下提供几条适于编程的指导意见,可供参考。 1、阅读程序题应先运用自己在课堂所学的知识,推导出结果,在上机时输入计算机,印证自己推导的结果,注意观察数据在内存中的存储方式、含不同种运算符表达式的输出结果。 2、编程题必须首先画出流程图,并反复思考判断程序设计的正确性,完成程序的设计。要注意简单判定性问题的结构选择。 3、调试题应明确程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能情况。

四、实验内容 1、阅读程序题 (1)main( ) { /*定义字符型变量*/ char c1,c2; /*向字符变量赋以整数*/ c1=97; c2=98; printf("%c %c\n",c1,c2); /*以字符形式输出*/ printf("%d %d\n",c1,c2); /*以整数形式输出*/ } 思考:可否改成int c1,c2;输出结果是?相同 (2)main() { int a=7,b=5; printf("%d\n",b=b/a); } 思考:若将printf语句中%d变为%f,可否输出分式的值?可以(3)main() { int a=9; a+=a-=a+a; /*包含复合的赋值运算符的赋值表达式*/ printf("%d\n",a); } 思考:赋值表达式a+=a-=a+a的求解步骤? 第一步:a=a-(a+a)=-9 第二步a=a+a=18 (4)main() { int k=-1; printf("%d,%u\n",k,k);

汇编程序调试实验报告

微机原理与接口技术 作 业 班级: 目录 一、........................................................... 实验目的:2 二、............................................................. 实验环境2 三、............................................................. 实验过程3 (一)................................................. 基础知识储备3

(二)............................................. 汇编语言程序设计3

(三)汇编程序调试 (3) 四、............................................................. 调试实例4 (一)....................................................... 实例一4 (二)....................................................... 实例二6 (三)....................................................... 实例三9 (四)....................................................... 实例四12五、............................................................. 实验总结15 (一)..................................................... 实验收获15 (二)..................................................... 实验感悟16 一、实验目的: 汇编语言是一种用助记符表示的程序设计语言。用汇编语言编写的源程序生成的目标 代码短,占内存少,执行速度快,适合于系统软件、实时控制软件、I/O接口驱动等程序设计。通过本次实验,熟练掌握汇编程序的调试,深入了解MAS汇编语言及其程序设计方法。 、实验环境 EDIT编辑器、MASME编程序、LINK连接程序、TD调试程序

C语言实验报告参考源代码

实验5三种基本结构的综合应用 4.一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:除1和它本身外,不能被其它整数整除的正整数称为素数,1不是素数,2是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的个数。 #include "stdio.h" main() {int i,j,k,m,p,q,n=0; for(i=100;i<=999;i++) {for(j=2;j=i) /*三位数是素数时*/ {k=i%100; /*去掉百位数字*/ if(k>=10) /*十位数字不是0时*/ {for(m=2;m=k) /*两位数是素数时*/ {p=i%10; /*p为个位数字*/ for(q=2;q=p)n++;}}}} printf("%d\n",n);} Key:57 5.求[2,400]中相差为10的相邻素数对的对数。 #include "stdio.h" main() {int i,j,k,m,p,q,n=0; for(i=2;i<=400;i++) {for(j=2;j=i) /*i是素数时*/ {for(k=i+1;k=k)break;} /*k是素数时终止if语句的外层循环*/ if(k>=i+10) /*[i+1,i+9]不是素数时*/ {for(q=2;q

汇编语言模拟电梯实验报告书

一.实训目的 (1) 二.实训内容与要求 (1) 1.基本内容 (2) 2.实训要求 (2) 三.实训设计思路 (1) 1.总体思路 (3) 2.硬件设计 (4) 3.软件设计 (6) 四.模拟电梯源代码 (9) 五.加载调试 (28) 六.实训总结 (30) 1.出现的问题及排除方法 (30) 2.实训注意事项 (30) 3.心得体会 (1) 七.参考文献 (31) 一.实训目的 1.了解电梯调度算法,运用汇编语言编写程序。 2.利用微机实验系统来模拟电梯,实现电梯功能。 3.进一步掌握微机接口的设计方法,正确连各芯片引脚。 4. 加强学生实际应用能力及综合知识运用能力的培养。

二.实训内容与要求 绘制流程图、根据流程图编写程序、选用硬件电路编制应用软件、自主选择硬编制应用软件,并画出详细原理图。 2.实训要求 用键盘、按钮、八段码和LED模拟电梯工作过程。楼层设为8层,键盘数字键1~8用来键入希望停的楼层,8个LED显示希望停的楼层,八段码指示电梯当前所在楼层,按钮用来启、停电梯。电梯正常运行时以每2秒1层的速度上升或下降。要求“电梯”能按以下方式运行: (1)设电梯停在某层。键入1~8数字键,如数字与当前电梯停层同,则什么亦不动作,若不同则相应楼层的LED亮;如按运行键,则电梯自动判别上升或下降一直到达希望停的楼层。 (2)设电梯正在上升或下降运行,若键入新的希望停的楼层数字,则对同方向未到的楼层能停,对其它情况则先停原希望停的楼层,然后按运行键后继续运行)。如下几例: 电梯在2层,向上运行,LED希望在6层停,若键入4,则将在4楼停,若按运行键,则运行至6层停;若键入的不是4而是8,则电梯将先停在6层,再按运行键,运行至8层停若键入的不是4(或8),而是1,则电梯先停在6层,再按 运行键,运行至1层停。

汇编语言程序设计实验报告三(子程序设计实验)

汇编语言程序设计实验报告三(子程序设计实验) 一、实验目的 1、掌握主程序与子程序之间的调用关系及其调用方法。 2、掌握子程序调用过程中近程调用与远程调用的区别。 3、熟练掌握码型变换的程序。 二、实验内容 1、从键盘输入二位非压缩BCD数,存入AX寄存器中,编程实现将其转换为二进制 数,并在屏幕上显示。要求码型转换程序用远程子程序编写,字符显示用近程子程序编写。数据可循环输入,遇‘00’结束。 三、实验准备 1、预习子程序设计的基本方法,根据实验内容要求编写出实验用程序。 2、熟悉键盘输入和字符显示的程序段的编制。 四、实验步骤 1、编辑、汇编源程序,生成可执行文件。 2、执行程序,检查输入、输出结果,看是否正确。如不正确,用DEBUG检查,修改 源程序,再汇编、运行,直到程序正确为止。 3、用DEBUG的T命令或P命令跟踪程序的执行,观察在远程和近程调用过程中,堆 栈的变化情况。 五、实验报告要求 1、分析近程调用和远程调用的主要区别。用DEBUG命令观察执行过程有何不同。 2、分析实验结果及所遇到的问题的解决方法。 主程序流程图 转换子程序TRAN流程图

七、程序清单 STA SEGMENT STACK ’STACK’ DB 100 DUP(0) STA ENDS GSAG SEGMENT PARA ‘CODE’ ASSUME CS:CSAG MAIN PROC FAR STRA T: PUSH DS SUB AX,AX PUSH AX REV: MOV AH,1 INT 21H MOV BL,AL INT 21H MOV AH,AL MOV AL,BL CMP AX,3030H JE ENDTRAN CALL NEAR PTR TRAN CALL FAR PTR CON MOV AL,0DH CALL FAR PTR DISP MOV AL,0AH CALL FAR PTR DISP MOV AL,0AH CALL FAR PTR DISP JMP REV ENDTRAN: RET MAIN ENDP TRAN PROC NEAR AND AX,0F0FH MOV BL,AL MOV BL,AL MOV CL,3 SHL AL,CL MOV CL,1 SHL BL,CL ADD AL,BL ADD AL,AH RET TRAN ENDP CSAG ENDS CSBG SEGMENT PARA’CODE’ ASSUME CS:CSBG

C语言实验报告参考答案

《C语言程序设计》 实 验 手 册

《C语言程序设计》实验课程简介 课程名称:C语言程序设计实验 课程性质:专业必修课 课程属性:专业必修课 学时学分:学时32 学分1 开课实验室:软件实验室 面向专业:网络工程、软件工程、计算机科学与技术 一、课程的任务和基本要求 C语言程序设计实验是面向计算机相关专业学生开设的《C语言程序设计》实验课,是配合《C语言程序设计》课程而开设的实验性教育环节。本课程的主要任务是让学生充分掌握C 语言程序设计的基本概念、各种数据类型的使用技巧、模块化程序设计的方法等。C语言程序设计实验对课程中所涉及的知识进行验证,同时也是学生很好地学习课程的辅助手段。通过C语言上机实验的教学活动,使学生真正全面掌握C语言的基础知识,培养和提高学生的程序开发能力。 二、实验项目 【实验一】最简单的C程序---顺序程序设计 【实验二】逻辑运算和判断选取控制 【实验三】循环结构程序设计(一) 【实验四】循环结构程序设计(二) 【实验五】函数 【实验六】数组(一) 【实验七】数组(二) 【实验八】指针 【实验九】结构体、共用体和文件 【实验十】C程序综合性实验 三、有关说明 1、与其它课程和教学环节的联系: 先修课程:计算机文化 后续课程:面向对象程序设计、Java程序设计、数据结构、软件工程 2、教材和主要参考书目: (1)教材: 《C程序设计习题解答与上机指导》,谭浩强吴伟民著,北京:清华大学出版社,2003年。(2)主要参考书目: 《C语言程序设计》谭浩强主编,清华大学出版社,2003年。

三、实验内容 实验一最简单的C程序---顺序程序设计 (验证性实验 2学时) (一)、实验目的 1.熟悉win-tc程序运行环境 2.掌握运行一个C程序的步骤,理解并学会C程序的编辑、编译、链接方法 3.掌握C语言中使用最多的一种语句——赋值语句 4.掌握数据的输入输出方法,能正确使用各种格式控制符 (二)、实验内容 1.写出下列程序的运行结果 (1)#include void main() { printf(“*****************\n”); printf(“This is a c program. \n”); printf(“****************\n”); } 运行结果及分析:运行结果为: Printf函数语句表示输出引号内的字符串,最后的\n表示换行, 将程序中的\n去掉后,运行结果及分析:运行结果为: 去掉\n后不换行连续显示 (2)#include void main() { int a=100,b=20,sum,sb; sum=a+b; sb=a/b; printf("sum=%d,sb=%d",sum,sb); } 运行结果及分析: sum=100+20=120;sb=100/20=5. (3)#include void main( )

汇编实验报告一

汇编语言程序设计 实验报告 实验名称上机过程及顺序结构与分支结构程序设计实验班级 学号 姓名 日期 成绩 评阅人 软件学院

一、实验目的与意义 1、掌握汇编语言程序设计的基本方法和技能; 2、熟练掌握使用全屏幕编辑程序EDIT编辑汇编语言源程序; 3、熟练掌握宏汇编程序MASM的使用; 4、熟练掌握连接程序LINK的使用; 5、学习数据传送及算数和逻辑运算指令的用法; 6、掌握分支程序的结构; 7、掌握分支程序的设计、调试方法; 8、熟悉在PC机上建立、汇编、连接、调试和运行8086汇编语言程序; 二、实验环境 操作系统:Windows XP 调试软件:Edit Plus 3,MASM 5.0 上机地点:综合楼311 三、实验的预习内容 (1)熟悉上机练习过程和伪指令实验 实验预习内容:在实验前,充分熟悉Edit Plus 3的环境以及配置方法,熟悉各种debug 的常用指令:U、D、T、P、G、A、E及R命令的使用和含义,了解数据传送指令和算数以及逻辑运算指令的用法,在理论上了解数据的存储情况以及DD,DB,DW伪指令的用法和含义。 实验思路:按照书上的程序打入代码,进行汇编、连接和运行程序查看此时程序的运行情况,之后进入debug界面,分别使用U、D、T、P、G、A、E及R命令等常用指令,可查看此时的程序的执行状况以及此时寄存器的存储情况以及对于内存的使用情况。 程序一流程图:

程序二流程图: (2)顺序结构程序设计实验 实验预习内容:在实验前了解十进制,十六进制和ASCII 码之间的转换,了解如何从键盘中输入字符和回车换行,以及在屏幕中显示的汇编指令。 实验思路:从键盘中输入要计算的数字,将其进行平方运算,利用计算得到数字,了解十进制数字、十六进制数字与其对应ASCII 码的转换方法,将数字显示到屏幕上。 程序流程图: (3)分支程序设计实验 实验预习内容:在实验前了解分支结构的特点,明白跳转指令和程序转移指令的使用

C语言实验报告答案

二、编程题(参考答案) 1、 #include “stdio.h” void main() { int Math=82,eng=78,comp=91,average; average=(Math+eng+comp)/3; printf(“Math=%d,eng=%d,comp=%d,average=%d\n”,Math,eng,comp,average); } 2、 #include “stdio.h” void main() { int n=152,d1,d2,d3; d1=n%10; d2=(n/10)%10; d3=n/100; printf(“整数%d的个位数字是%d,十位数字是%d,百位数字是%d\n”,n,d1,d2,d3); } 3、 #include “stdio.h” void main() { int n1,n2; printf(“Enter n1,n2:”); scanf(“%d,%d”,&n1,&n2); printf(“%d+%d=%d\n”,n1,n2,n1+n2); printf(“%d/%d=%d\n”,n1,n2,n1/n2); printf(“%d%%%d=%d\n”,n1,n2,n1%n2); } 三、改错题 原错误行(共三行): /********************************** found ********************************/ #include “stdoi,h” /********************************** found ********************************/ printf(“%d=%d*%d\n”,x); /********************************** found ********************************/ printf(“%d*%d=%d\n”,y); 改正后: #include “stdio.h” printf(“%d=%d*%d\n”,y,x,x); printf(“%d*%d=%d\n”,x,x,y);

汇编语言实验报告

汇编语言程序设计实验报告 学院:计算机科学与技术 专业:计算机科学与技术 指导教师: ** 班级: ** 学号: ** 姓名:**

实验一集成环境及调试工具 一、实验题目 认识Tddebug集成操作软件 二、分析设计思想,绘制实验原理图、流程图 (一)、汇编语言程序的开发过程如图1.1所示,这个过程主要有编辑、编译、链接几个步骤构成。 图1.1 汇编语言程序开发过程 1、源程序的编辑 E: > EDIT TEST.ASM 编辑过程就是将源程序输入内存,生成一个扩展名为ASM的文本文件并存入硬盘。2、源程序的编译 E:>TASM TEST.ASM 编译也称为汇编,就是利用汇编器(如TASM或MASM)对源程序进行编译,生成扩展名为OBJ的目标文件。在编译过程中,检查语法错误,若有错,则不生成目标代码文件,并给出错误信息。根据错误信息应返回到编辑状态,修改源程序。 3、目标程序的链接 E:> TLINK TEST.OBJ 链接过程是利用链接程序(如TLINK或LINK)将用户目标程序和库文件链接、定位,生成扩展名为EXE的可执行文件。链接时,如果链接文件找不到所需要的链接信息,则发出错误信息,不生成可执行文件。 4、调试可执行程序 E:>TD TEST.EXE 如果生成的EXE文件运行后,并没有按照设计意图运行,就需要对程序进行调试,找出错误。再对源程序进行修改,即重复进行编辑、编译、链接、调试,直到生成完全正确的可执行文件为止。 (二)、Tddebug集成操作软件使用说明 1.该软件是集编辑(Edit.exe)、编译(Tasm.exe)、连接(Link.exe)和调试(TD.exe)

相关文档
相关文档 最新文档