文档库 最新最全的文档下载
当前位置:文档库 › JDBC实验报告详细

JDBC实验报告详细

JDBC实验报告详细
JDBC实验报告详细

实验二JDBC编程

一、目的

通过Java数据库访问程序的编写、调试,使学生掌握JDBC编程的基本方法,熟悉常用的JDBC API,促进学生对概念的理解,培养动手能力。

二、基本要求

学生需要按时达到指定实验室上机。调试教学中使用的程序示例,并加以修改,增加程序的功能;实现数据库访问的优化。完成实验后,需要按时提交实验报告。

三、实验内容

(1)复习数据库SQL语句的编写。

(2)编写Java数据库(使用ODBC-JDBC驱动)公共模块。

(3)建立数据库应用模型,对数据库进行操作。

(4)调试程序,实现数据库的访问。

3.1数据源的确定

可能是我不知道怎么配置,我的电脑是Windows7系统,和学校WindowsXP 系统的电脑配置方法不太一样,需要在C:\Windows\System32路径中,找到odbcad32.exe才能顺利修改数据源。数据源设置好了以后就可以编辑代码并正常运行了。

下面以一张截图展示我的数据库

3.2数据库信息查询.一

3.2.1代码

import java.sql.*; /*此处提供了SQL包,就可以放心使用SQL语句了*/ public class Students{

public static void main(String args[]){ //look out this "S" of "string" !

String driver="sun.jdbc.odbc.JdbcOdbcDriver";

/*这里定义了driver做驱动器使用,为了美观事先定义,其实放在Class.forName 的括号里也是完全正确的*/

String url="jdbc:odbc:students";

/*此处指定了数据库,要注意两者名字一定要一样,否则找不到数据源*/ String query="select name,num,course,score from students"; //focus on the SQL language :select...from... ! /*需要执行的SQL语句*/

Connection con=null; /*链接的定义*/

Statement s=null; /*Statement对象的定义,两者赋值null 是为了在try块出现异常的时候不会被判断为逻辑错误,认为变量没有赋值*/

try{ /*第一个try块实现了驱动器的启动*/

Class.forName(driver); //look out this "class" should write in Huge one!/*注意此处的Class需要大写!*/

}

catch(ClassNotFoundException e){

System.err.println("ClassNotFoundException:"+e.getMessage());

}

try{ /*第二个try块实现查询功能*/

con=DriverManager.getConnection(url);

/*刚刚定义的url在这里用上,此时程序才真正与数据库相连*/

s=con.createStatement(); /*新建一个Statement*/

ResultSet r=s.executeQuery(query); /*query在这里用上,执行SQL语句,也就是按照我们的要求实现我们想完成的功能*/

System.out.println("name:" + " num:" + " course:" + " score:");

while(r.next()){ /*逐行查询,只要有值就执行while里的语句*/

/*注意以下的每一项name,num等都要与数据库中的题目想吻合*/ String r1=r.getString("name");

String r2=r.getString("num");

String r3=r.getString("course");

String r4=r.getString("score");

/*注意这些名字一定要与数据库中的名字吻合!当然也可以用数字代替,但是我的数据库第一列是ID,所以要注意name是2,num是3,以此类推*/

System.out.println(r1+ r2+ r3+ r4);

}

}

catch(SQLException e){

e.printStackTrace();

}

finally{

try{

s.close(); /*关闭Statement对象*/

con.close(); /*关闭连接*/

}

catch(SQLException e){

e.printStackTrace();

}

} System.out.println("i am lagent");

/*这条语句是一开始用于查找错误使用的*/ }

}

3.2.2运行截图1

3.3数据库信息查询.二

3.3.1代码

import java.sql.*;

import java.util.*;

public class Statement1{ /* pay attention the name of class must not be the same with the public style ! The first time i named it "Statement" so that it can't run successfully *//*英文是编程当时留下的痕迹,当时讲类名写作Statement,与关键字相同,因此出错不能正常运行,我的总结是在拿不准的情况加一个数字就可以避免这样的尴尬情况*/

public static void main(String arg[]){

String driver="sun.jdbc.odbc.JdbcOdbcDriver";

String url="jdbc:odbc:Students";

String query="select * from students where score > 90"; /*整个程序与第一次编写的没有太大变动和突破,主要是对SQL功能的了解和语句利用的熟练,当时的想法是多写多体会,没考虑创新,在此也就不对语句做重复分析了*/ Connection con=null;

Statement s=null;

try{

Class.forName(driver);

}

catch(ClassNotFoundException e){

System.err.println("ClassNotFoundException:"+e.getMessage());

}

try{

con=DriverManager.getConnection(url);

s=con.createStatement();

ResultSet r=s.executeQuery(query);

System.out.println("name:"+" num:"+" course:"+" score");

while(r.next()){

String r1=r.getString("name");

String r2=r.getString("num");

String r3=r.getString("course");

String r4=r.getString("score");

System.out.println(r1+r2+r3+r4);

}

}

catch(SQLException e){

e.printStackTrace();

}

finally{

try{

s.close();

con.close();

}

catch(SQLException e){

e.printStackTrace();

}

}

}

}

3.3.2运行截图2

3.4数据库信息查询.三

3.4.1代码

import java.sql.*;

import java.util.*;

import java.io.*;

public class PreparedStatement1{

public static void main(String arg[]){

String driver="sun.jdbc.odbc.JdbcOdbcDriver";

String url="jdbc:odbc:Students";

String query="select * from students where score > ?";

/*要实现按键盘输入的参数来选择查询数据库中的数据,因此需要用“?”*/ Connection con=null;

PreparedStatement ps=null;

ResultSet r=null;

try{

Class.forName(driver);

}

catch(ClassNotFoundException e){

System.err.println("ClassNotFoundException:"+e.getMessage());

}

try{

System.out.println("您想要查询分数的下限是:");

con=DriverManager.getConnection(url);

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

/*带有缓冲区,可以实现从键盘的输入,从字符流中对文本*/

try{

int ms=Integer.parseInt(br.readLine().trim());

/*将键盘输入的参数赋值给ms*/

//this told me to pay a try and catch , so i put them in a try kuai

ps=con.prepareStatement(query);

/*注意在这里就实现预编译了,这里要注意prepare:小些打头,不是prepared*/ ps.setInt(1,ms); /*1是付给第一个“?”,这里就只有1个*/

r=ps.executeQuery();/*因为已经预编译,这里不用在写query*/ }

catch(Exception e){

System.out.println(e);

}

System.out.println("name:"+" num:"+" course:"+" score");

while(r.next()){

String r1=r.getString("name");

String r2=r.getString("num");

String r3=r.getString("course");

String r4=r.getString("score");

System.out.println(r1+r2+r3+r4);

}

}

catch(SQLException e){

e.printStackTrace();

}

finally{

try{

ps.close();

con.close();

}

catch(SQLException e){

e.printStackTrace();

}

}

}

}

3.4.2运行截图3

1.程序开始运行的程序界面:

2.输入参数后的程序界面:

3.5数据库信息的增添、删除、修改3.5.1代码

import java.sql.*;

public class ALL{

Connection con=null;

Statement s=null;

PreparedStatement ps=null;

String driver="sun.jdbc.odbc.JdbcOdbcDriver";

String url="jdbc:odbc:students";

String query="select name,num,course,score from students";

public void init(){ /*用init()将定义的对象和变量都初始化*/ try{

Class.forName(driver);

}

catch(ClassNotFoundException e){

System.err.println("ClassNotFoundException:"+e.getMessage());

}

try{

con=DriverManager.getConnection(url);

s=con.createStatement();

}

catch(SQLException e){

e.printStackTrace();

}

}

public void output(){ /*先输出数据库的数据*/ try{

ResultSet r=s.executeQuery(query);

System.out.println("name:" + " num:" + " course:" + " score:");

while(r.next()){

String r1=r.getString("name");

String r2=r.getString("num");

String r3=r.getString("course");

String r4=r.getString("score");

System.out.println(r1+ r2+ r3+ r4);

}

}

catch(SQLException e){

e.printStackTrace();

}

}

public void add(){

try{

System.out.println("增加语句之后:");

s.executeUpdate("INSERT INTO students(name,num,course,score) V ALUES('三毛','20115407','JA V A高级应用',59)");

/*执行更新方法,注意V ALUES后所赋的值对V ALUES前的数据库题目要一一对应,而且在所赋的值一定是用单引号包括*/

}catch(Exception e){

e.printStackTrace();

}

}

public void change(){

try{

System.out.println("改变分数之后");

ps=con.prepareStatement("UPDATE students SET score=0 WHERE name='三毛'");/*将name为三毛的一栏数据中的score改为0*/

ps.executeUpdate();

}catch(Exception e){

e.printStackTrace();

}

}

public void destroy(){

try{

s.close();

con.close();

ps.close();

}

catch(SQLException e)

{ e.printStackTrace();

}

}

public static void main(String arg[]){

ALL a=new ALL();

try{

a.init();

a.output();

a.add();

a.output();

a.change();

a.output(); /*把需要实现的功能分开放在方法中,再在主函数中调用,逻辑清晰而且十分简洁漂亮*/

}

catch(Exception e){

e.printStackTrace();

}

finally{

a.destroy();

}

}

}

3.5.2运行截图4

四、实验方法与实验步骤

(1)根据课堂所学知识,写出JDBC编程的步骤,熟悉JDBC编程所用的类及接口,如Connection、Statement、ResultSet等等;

(2)创建程序所要访问的数据库,打开控制面板,建立ODBC数据源,记录给数据库所起的数据源名称。

(3)根据所要实现的功能,编写数据库访问程序。在程序中首先要加载驱动(JDBC-ODBC桥接去掉程序),其次要建立连接,再次创建用于访问数据库的Statement对象,然后利用Statement对象访问数据库。

(4)编译源程序,根据JDK或IDE提示的错误修改源程序,直到编译时无错误出现。

(5)运行编译生成的class文件,如果不能正常运行,根据提示的错误修改源程序。

五、设备或工具使用说明

软件要求:Windows操作系统,JDK 1.4或以上版本,JCREATOR或记事本编辑器,Access。

六、注意事项

在程序中还要注意添加异常处理语句,另外要保证程序中的数据源名称和数据库在ODBC数据源中的名称一致,并且驱动程序的名称不要写错,注意大小写。

七、思考题

如果不使用ODBC-JDBC驱动,如何实现数据库的访问?

八、心得体会

这次编程实践非常用心,也收获很多,学习内容大致如下:数据源下载、数据库查询(全文)、数据库查询(有固定条件)、数据库查询(可从键盘赋参数做查询条件)和数据库内容的增删改。

编程过程中犯了许多低级错误,比如String和Class首字母的大小写、prepareStatement写成PreparedStatement和符号的错误等。还有许多收获和见识都在编码的备注中有所体现。

编程学习是一个循序渐进的过程,自己动手的成长也非常明显,在今后的学习中也一定要注重动手操作。

北京理工大学汇编实验报告3

北京理工大学汇编实验报告3

本科实验报告实验名称:实验三字符串操作实验 课程名称: 课程设计Ⅰ(CPU与汇编)(实 验)实验时间: 第5-10周周五 下午 任课教师:聂青实验地点:10-102 实验教师:苏京霞 实验类型:?原理验证□综合设计□自主创新 学生姓名:罗逸雨 学号/班级:1120141208 05211401 组号:3 学院:信息与电子学院同组搭档: 专业:通信工程成绩:

CX 中值减 1,当 CX 中值减至 0 时,停止重复执行,继续执行下一条指令。当REP无条件重复前缀,重复串操作直到计数寄存器的内容 CX 为0为止。经常与REP 配合工作的字符串处理指令有MOVS、STOS和LODS。 当REPE/REPZ判断计数寄存器的内容 CX 是否为0或ZF=0(即比较的两个操作数不等),只要满足一个则重复执行结束,否则继续执行。可以与 REPE/REPZ 配合工作的串指令有CMPS和SCAS。 当REPNE/REPNZ判断计数寄存器的内容是否为0或ZF=1(即比较的两个操作数相等),只要满足一个则重复执行结束,否则继续执行。可以与 REPE/REPZ 配合工作的串指令有CMPS和SCAS。 3)字符串操作指令 lodsb、lodsw:把DS:SI指向的存储单元中的数据装入AL或AX,然后根据 DF 标志增减 SI; stosb、stosw:把AL或AX中的数据装入ES:DI指向的存储单元,然后根据 DF 标志增减 DI; movsb、movsw:把 DS:SI 指向的存储单元中的数据装入ES:DI指向的存储单元中,然后根据 DF标志分别增减SI和DI; scasb、scasw:把AL或AX 中的数据与ES:DI 指向的存储单元中的数据相减,影响标志位,然后根据DF标志分别增减SI和DI; cmpsb、cmpsw:把DS:SI 指向的存储单元中的数据与 ES:DI 指向的存储单元中的数据相减,影响标志位,然后根据DF标志分别增减SI和DI; rep:重复其后的串操作指令。重复前先判断 CX 是否为0,为0就结束重复,否则CX减1,重复其后的串操作指令。主要用在MOVS和STOS前。一般不用在 LODS 前。 上述指令涉及的寄存器:段寄存器DS和ES、变址寄存器SI和DI、累加器 AX、计数器CX。 涉及的标志位:DF、AF、CF、OF、PF、SF、ZF。 三、实验步骤 1) 编写程序,比较两个字符串BUF1和BUF2所含的字符是否相同,相同则AL 返回0,不同AL返回1,字符串长度要求自动获取,要求用字符串处理方法。提示:输入两个字符串之后,将串操作所必须的寄存器等参数设置好,然后使用串操作指令进行从头到尾的比较,两个字符串相等的条件是串长度相等且对应的字符相同。 2) 编写程序,设有一字符串存放在以BUF为首址的数据区中,其最后一字符‘$’作为结束标志,计算该字符串的长度并输出。提示:从串的第一个字符开始统计,直到遇到定义的字符串结束符为止,看看在这个过程中总共有多少个字符,

汇编实验报告(详细版)

计算机组成与汇编语言(实验报告) 内容: 实验一、六、七、八 院系专业:计算机学院计算机科学与技术 姓名:xxxxxxxxx 学号: 2011004xxxxx 完成时间:2012年12月1日

计算机组成与汇编语言实验报告 姓名xxxx 学号2011004xxxxx 计分 专业软件工程班级xxxx 实验日期2012年 12 月 1日实验名称实验一数制转换 实验目的 ●熟悉各种进制数据之间的相互转换方法。 ●掌握二-十进制数据的相互转换程序设计。 实验内容 1.将编写好的程序1输入、编译、连接并运行。 程序1清单 #include #include #include void main() { int i,l,s0=0,s=0; char a[17]; while(l!=16) { printf("请输入一个16位的二进制数:\n"); gets(a); l=strlen(a); for(i=0;i<16;i++) { if(a[i]!='0'&&a[i]!='1') {

printf("输入的二进制数不正确!!"); break; } } } if(a[15]=='1') s++; for(i=1;i<16;i++) { if(a[15-i]=='1') s+=(1<

说明:如果不是16位二进制则会提示错误。 2.将编写好的程序2输入、编译、连接并运行。 程序2清单 #include #include void main() { int t0,t1,t2,t3,i,j; int a[16]; printf("请输入一个十进制数:"); scanf("%d",&t0); t1=t0; for(i=0;i<16;i++) { t2=t1/2; if(t2>1) a[i]=t1%2; else if(t1==1) { a[0]=1; for(i=1;i<16;i++) a[i]=0; } else if(t1==2) { a[i]=0; a[i+1]=1; for(j=i+2;j<16;j++)

web WEB JSP实验报告书

实验1 网页程序设计-JavaScript 一、实验目的 1. 掌握JavaScript技术,基本掌握JavaScript的开发技巧; 2. 利用文本编辑器建立JavaScript脚本语言进行简单编程。 二、实验要求: 1. 根据以下实验内容书写实验准备报告。 2. 独立完成实验。 三、实验内容 1.显示一个动态的时钟 在文本编辑器“记事本”中输入如下代码程序,请仔细阅读下列程序语句,理解每条语句的作用。源程序清单如下:

现在是北京时间:
运行结果:

汇编实验报告

南华大学 实验名称:汇编语言程序设计实验 学院:计算机学院 专业班级:本2010 电气信息类03班 学号:20104030342 姓名:谢志兴 指导教师:刘芳菊 日期:2012 年 6 月10 日

实验一DEBUG的熟悉 一、实验目的 (1)学习使用DEBUG的命令; (2)使用DEBUG命令在数据段中查看程序运行的结果; (3)利用DEBUG运行简单的程序段。 二、实验内容 1)输入程序观察寄存器变化 使用DEBUG命令,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器的内容变化。注意用T命令执行时,CS: IP寄存器的内容。 MOV AX, 4E20 ADD AX, 1416 MOV BX, 2000 ADD AX, BX MOV BX, AX ADD AX, BX MOV AX, 001A MOV BX, 0026 ADD AL, BL ADD AH, BL ADD BH, AL MOV AH, 0 ADD AL, BL ADD AL, 9C 2)输入下面的程序,这是一个两个数相与的程序。结果存放在MSG2单元中,偏移地址为?值为多少? DSEG SEGMENT MSG1 DW 7856H, 2038H MSG2 DW? DSEG ENDS CSEG SEGMENT ASSUME CS: CSEG, DS: DSEG

START: MOV AX, DSEG MOV DS, AX MOV AX, MSG1 AND AX, MSG1+2 MOV MSG2, AX MOV AL, 0 MOV AH, 4CH INT 21H CSEG ENDS END START 程序的跟踪执行操作 在DOS下直接输入文件主名就可以执行文件了,有的程序会显示结果,可能执行后什么结果都没有,是因为程序中没有显示命令。那么如何查看程序的运行结果呢? 程序执行过程的跟踪操作步骤如下: (1)在DOS下输入:DEBUG 文件名.EXE (2)在DEBUG提示符下输入U命令 如果程序中有数据段,可以看到反汇编后第一句可执行语句为: A地址:B地址MOV AX, K地址如:1261:0000 MOV AX, 1260 其中:K地址就是数据段的段寄存器内容,A地址为代码段段寄存器地址,B地址为程序第一条指令的偏移地址。 (3)可以用T命令单步执行指令,执行到MOV AH, 4CH时结束,也可以用G命令执行整个程序,输入:G=B地址(如:G=0000) (4)用D命令查看程序执行后数据段的变化 输入:D K地址:0 (如:D1260:0)

jsp实验报告49775

Jsp实验报告 课程设计名称:兼职网站 系:交通运输管理学院学生姓名: 班级: 学号: 成绩: 指导教师: 开课时间:2013学年第2 学期

一.设计题目 兼职网站 二.主要内容 本网站涉及兼职信息、用户信息的数据管理。从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。 (1)用户的登录判定 (2)录入兼职的信息,并保存到数据库中 (3)根据用户的需求选择查询方式,查询相关兼职信息 (4)将信息从数据库中删除 三.具体要求 (1)建立数据库表格存储用户数据(用户名及密码)。 (2)建立数据库表格存储兼职信息,主要包括ID、兼职名称、地点、工资和联系方式。 (3)编写jsp 语句连接数据库 (4)利用request函数提交表单,获取输入信息 (5)以SQL语句对数据库进行操作,完成信息的添加,查询及删除等功能。四.进度安排 五.成绩评定 正文 1、系统的需求分析和功能设计 随着电子信息在人们生活中的的使用比重不断增加,人们越来越习惯在网站上查找自己所需

要的信息不仅仅只是因其快捷,更因其接触的面更加广泛,信息的基础量足够大,足以满足人们更加细化的需求。在寻找兼职体验工作生活或赚取生活费用时,可以减少时间的浪费及其他不必要的消耗。 本网站涉及兼职信息、用户信息的数据管理。从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。用户登录后可以根据自己的需要对信息进行添加、查询和删除的操作 2、源程序及注释 主页:<%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> xxx兼职网站 登录:login.jsp主要内容:

汇编实验报告

XXXX大学 实验报告 课程名称汇编语言程序设计成 绩 实验学时 评语: 指导教师: 年月日 班级: 学号: 姓名: 地点: 时间:

实验一汇编语言编程实验 一、实验目的 (1)掌握汇编语言的编程方法 (2)掌握DOS功能调用的使用方法 (3)掌握汇编语言程序的调试运行过程 二、实验内容 1. 将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能调用完 成必要提示信息的显示。 2. 在屏幕上显示自己的学号姓名信息。 3. 循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输 入”Q”或“q”时结束。 4. 实验中使用的DOS功能调用: INT 21H AH 值功能调用参数结果 1 键盘输入并回显AL=输出字符 2 显示单个字符(带Ctrl+Break检查) DL=输出字符光标在字符后面 6 显示单个字符(无Ctrl+Break检查) DL=输出字符光标在字符后面 8 从键盘上读一个字符AL=字符的ASCII码 光标跟在串后面 9 显示字符串DS:DX=串地址, ‘$’为结束字符 4CH 返回DOS系统AL=返回码 例如,实现键盘输入并回显的完整代码: MOV AH 01H INT 21H 三、实验结果 1. 将指定数据区的字符串数据”Let us go !”以ASCII码形式显示在屏幕上,并通过 DOS功能调用完成必要提示信息的显示: 2. 在屏幕上显示自己的学号姓名信息 3.循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输 入”Q”或“q”时结束。

四、实验原理 DATA SEGMENT MES DB 'NUMBER: 03099018 ',0AH,0DH,'NAME: Feng Xiaokang',0AH,0DH,'$' CENT DB 'Let us go !','$' ENTE DB 0AH,0DH,'$' INFO DB 'Origin: ','$' ASCI DB 'ASCII : ','$' MSG1 DB 'If you want to quit please press...q/Q...',0AH,0DH,'$' MSG2 DB 0AH,0DH,'Char: $' RS DB ' ASCII: $' SD DB '' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA ;存储数据 MOV DS,AX MOV DX,OFFSET MES ;显示数据 MOV AH,09H INT 21H MOV DX,OFFSET MSG1 MOV AH,09H INT 21H MOV DX, OFFSET CENT MOV SI, DX T: MOV AL,[SI] CMP AL,'$' JZ C1 AND AL,0F0H ;取高4位 MOV CL,4 SHR AL,CL CMP AL,0AH ;是否是A以上的数 JB A ADD AL,07H A: ADD AL,30H MOV DL,AL ;show character MOV AH,02H INT 21H

汇编实验报告

实验一 DOS常用命令及8088/86指令使用 实验目的 通过实验掌握下列知识: 1、DOS命令: CD,DIR,DEL,RENAME,COPY。 2、8088指令: MOV,ADD,ADC,SUB,SBB,DAA,XCHG 3、DEBUG命令: A,D,E,F,H,R,T,U。 4、BCD码,ASCII码及用十六进制数表示二进制码的方法。 5、8088寄存器: AX,BX,CX,DX,F,IP。 实验类型:验证 内容及步骤 一、DOS常用命令练习 1、开机后,切换到命令提示符窗口下,出现提示符后键入命令DIR, 查看此目录下所有文件。 2、键入命令CD..进入上级目录,再查看此目录下所有文件。 3、将一张3.5寸软盘插到 A驱动器中,用DIR命令查看盘上文件。 4、用命令 COPY https://www.wendangku.net/doc/058124482.html, BUG 复制一个文件。 5、用命令 RENAME BUG BG 将BUG 文件改为BG。 6、用命令 DEL BG 将文件BG删除。 在操作时要注意提示信息,并按提示操作。 二、DEBUG 命令使用 1、键入 DEBUG 进入 DEBUG 控制状态,显示提示符 '- '。 2、用命令 F100 10F 'A' 将'A'的ASCII码填入内存。 3、用命令 D100 10F 观察内存中的十六进制码及屏幕右边的ASCII字符。 4、用命令 F110 11F 41 重复上二项实验,观察结果并比较。 5、用命令 E100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存单元中,再用D命令观察结果,看键入的十六进制数是什么字符的ASCII码? 6、用H命令检查下列各组十六进制数加减结果并和你的手算结果比较: (1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758H,347FH 7、用R命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF和AF的内容。 8、用R命令将AX,BX内容改写为1050H及23A8H。 三、8088常用指令练习 1、传送指令 用A命令在内存100H处键入下列内容: -A 0100↙ ****:0100 MOV AX,1234↙ ****:0103 MOV BX,5678↙ ****:0106 XCHG AX,BX↙ ****:0108 MOV AH,35↙ ****:010A MOV AL,48↙

jsp实验报告

中南民族大学管理学院学生实验报告 课程名称: JSP程序设计 年级: 2010级 专业:信息管理与信息系统 姓名: 学号: 指导教师: 实验地点:管理学院综合实验室 20 学年至 20 学年度第 2 学期

第一章 JSP简介 实验 Tomcat服务器的安装与配置 一、实验目的 本实验的目的是让学生掌握怎样设置Web服务目录、怎样访问Web服务目录下的JSP 页面、怎样修改Tomcat服务器的端口号。 二、实验要求 1、将下载的6.0.13解压到D盘中,并进行调试。 2、用文本编辑器编写一个简单的JSP页面,并保存到Web服务目录中。 三、实验结果 所运行的代码如下; <%@ page contentType="text/html;charset=GB2312"%>

乘法表

<% for(int j=1;j<=9;j++) { for(int i=1;i<=j;i++) { int n=i*j; (i+"×"+j+"="+n+" "); } ("
"); } %>
页面 四、实验结果分析

1、默认的端口号为8080,若修改,在conf目录下的文件中修改端口号。 2、设置虚拟目录。在conf目录下的中前加入: 3、Tomcat服务器必须保持启动。

第二章 JSP页面与JSP标记 实验1 JSP页面的基本结构 一、实验目的 本实验的目的是让学生掌握怎样在JSP页面中使用成员变量,怎样使用Java程序片、Java表达式。 二、实验要求 本实验将用户输入的单词按字典顺序排序。需要编写两个JSP页面,名字分别为和。 三、实验内容 1)页面有一个表单,用户通过该表单输入若干个单词,并提交给页面。 2)负责排序单词,并将排序的全部单词显示给用户。 四、实验结果 实验所用代码如下: <%@ page contentType="text/html;charset=GB2312"%> 请输入单词(用空格分隔):
<%@ page contentType="text/html;charset=GB2312"%> <%@ page import=".*"%> <%! TreeSetdictionary=new TreeSet(); public void addWord(String s) { String word[] = (" "); for(int i=0;i<;i++) { (word[i]); } } %> <%

汇编实验报告..

合肥工业大学计算机与信息学院 实验报告 课程:汇编语言程序设计专业班级: 学号: 姓名:

实验一Debug程序的使用 一.实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 二.实验内容 1、利用DEBUG程序中的“E”命令,将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H 单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H单元中。要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 三.实验过程和程序 1、启动DOS操作系统 2、运行https://www.wendangku.net/doc/058124482.html,程序(若当前盘为C) C:>DEBUG↙ – ;(“–”为DEBUG提示符,仅当屏幕出现该提示符后,才可输入DEBUG命令) 3、用“A”命令编辑和汇编源程序 –A ↙ 186E:0100 MOV AX,[0200]↙ 186E:0103 MOV BX,[0202]↙ 186E:0107 ADD AX,[0204]↙ 186E:010B ADC BX,[0206]↙ 186E:010F MOV [0208],AX↙ 186E:0112 MOV [020A],BX↙ 186E:0116 ↙ 4、用“U”命令反汇编验证源程序 –U CS:0100↙ 186E:0100 A10002 MOV AX,[0200] 186E:0103 8B1E0202 MOV BX,[0202] 186E:0107 03060402 ADD AX,[0204] 186E:010B 131E0602 ADC BX,[0206] 186E:010F A30802 MOV [0208],AX 186E:0112 891E0A02 MOV [020A],BX 186E:0116 – 注意:

JSP技术的运用实验报告

南昌大学实验报告 学生姓名:XXX 学号:xxxxxxxxxx 专业班级:xxxxxxx 实验类型:■验证□综合□设计□创新实验日期:xxxx.xx.xx 实验成绩: 一、实验项目名称: JSP技术的运用 二、实验目的 掌握JSP的基本语法、JSP指令和JSP动作以及JSP的内置对象,每种对象的使用方法与使用技巧,会简单的web应用程序的开发设计。 三、主要仪器设备及耗材 1.Myeclipse开发环境 2.Tomcat服务器 3.联想电脑一台 四、实验内容 1、运用Date函数读取系统当前时间,根据不同的时间段,在浏览器输出不同的问 候语 2、加载文件,制作一个jsp文件,计算一个数的平方,然后再制作一个jsp文件。 在客户端显示出来 3、设计表单。制作读者选购图书的界面,当读者选中一本图书后,单击“确定” 按钮,用”jsp:forward page=”语句将页面跳转到介绍该图书信息页面 4、设计求任意两个整数和的web程序,要求用户通过提交页面输入两整书,并提 交给一个jsp程序,再改程序中计算两个整数和。如果结果为正,跳出“结果为正” 页面,如果结果为负,跳出“结果为负”界面 5、设计一个用户注册表单,提交页面信息后,会输出用户填写的信息 五、实验步骤 1.应用Date函数读取系统当前时间,根据不同的时间段输出不同的问候,主要代码 如下: <%@page language="java"import="java.util.*"pageEncoding="UTF-8"%> 读取系统当前时间 <% Date date=new Date();%>

当前时间是:<%= date.toLocaleString()%>

汇编语言实验报告

汇编语言实验报告 专业: 班级: 姓名: 学号: 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个字节内容

汇编实验报告

XI`AN TECHNOLOGICAL UNIVERSITY 实验报告

西安工业大学实验报告 一、实验目的 1、学习和掌握利用TD-TIPE连机软件调试汇编程序。 2、了解可编程并行接口芯片8255的内部结构、工作方式、初始化编程及应用。 二、实验原理 基本输入输出实验。编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就改变。 三、实验步骤、数据记录及处理 1.步骤: (1)硬件测试; (2)获得端口地址; (3)写出源程序, 2.源代码 (1)程序一 SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE

START: MOV DX, 0646H MOV AL, 90H OUT DX, AL AA1: MOV DX, 0640H IN AL, DX CALL DELAY MOV DX, 0642H OUT DX, AL JMP AA1 DELAY: PUSH CX MOV CX, 0F00H AA2: PUSH AX POP AX LOOP AA2 POP CX RET CODE ENDS END START (2)程序二 SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DX, 0646H MOV AL, 90H OUT DX, AL AA1: MOV DX, 0640H IN AL, DX

汇编实验报告

汇编语言程序设计 实验报告 学号:100511530 班级:电气信息类1005 姓名:陆淑琴 指导老师:李诗高

实验一、汇编语言上机的基本过程及环境 【实验目的】 (1)熟悉汇编语言的编辑、汇编、连接及调试的全过程,重点掌握使用DEBUG调试程序的方法。 (2)了解汇编语言的程序结构。 【实验内容】 (1)在数据段中定义两个数(数据自拟,包含有正数和负数),要求编写程序分别计算出这两个数的和、差、积、商,并用Debug的相关命令查询计算结果(包括对CF,OF,SF,ZF的影响)。 (2)首先对AX,BX,CX寄存器赋初值(数据自拟),再将AX寄存器的中间八位,BX的低四位和CX的高四位拼接成一个新的字,并把结果存入偏移地址为0000H的存储单元。其中BX的低四位作为结果字的高四位,CX的高四位作为结果字的低四位。并用Debug的相关命令查询内存单元的结果字。 源代码: DA TA SEGMENT val1 DW 1000h val2 DW 2000h maxv DW ? DA TA ENDS STACK SEGMENT STACK 'STACK'

DB 100H DUP(?) STACK ENDS CODE SEGMENT 'CODE' ASSUME CS:CODE, DS:DATA,SS:STACK .386 MAIN: MOV AX, DATA; MOV DS, AX PUSH val1 PUSH val2 CALL MAX ; POP maxv ;栈顶返回值出栈 MOV AX, 4c00H INT 21H MAX PROC PUSH BP ;执行该指令前堆栈情况 MOV BP, SP ;执行后堆栈情况 MOV AX, [BP+4] CMP AX, [BP+6] JA EXIT MOV AX, [BP+6] EXIT: MOV [BP+6], AX ;用栈顶返回值 POP BP RET 2 ;执行后堆栈情况 MAX ENDP CODE ENDS END MAIN 【实验步骤】 (1)用编辑软件(记事本、UltraEdit等)编辑一个扩展文件名为ASM的汇编语言源程序。 (2)用汇编程序MASM汇编上述的汇编语言源程序,形成目标代码文件。(扩展名为OBJ) (3)用连接程序LINK连接目标代码文件,形成可执行文件。(扩展名为EXE)(4)用DEBUG32调试可执行文件,观察执行结果,以验证其正确性。

WEB开发技术实验报告

实验一JSP开发环境构建 实验目的:了解动态页面技术及B/S系统 掌握开发环境的构建 理解Eclipse开发WEB应用 实验内容: 实训项目一:安装JDK并配置环境变量 请阐述配置环境变量的方法: 实训项目二:安装TOMCAT并配置Server.xml修改端口号为8090 问题一:如何测试TOMCAT是否已经成功启动? 问题二:在浏览器地址栏输入什么地址可以访问到TOMCA T的测试页? 请阐述配置Server.xml修改端口号为8090基本实验步骤: 实训项目三:应用Eclipse建立项目并浏览一个JSP页面 请阐述应用Eclipse建立项目并浏览一个JSP页面基本实验步骤: 实验心得:(遇到了哪些问题,如何解决的,有那些体会) 实验二JSP语法 实验目的:了解JSP程序的组成元素 掌握JSP中使用JA V A程序片段的方法 实验内容: 实训项目一:编写一个JSP页面输出26个小写英文字母表 实训项目二:编写页面实现九九乘法表 实训项目三:利用成员变量被所有客户共享这一性质,实现一个简单的计数器 实训项目四:使用JA V A表达式输出系统当前时间 实训项目五:编写程序shijian2_9.jsp和computer.jsp两个页面,在第一个页面中使用include动作标记动态包含文件computer.jsp,并向它传递一个矩形的长和宽,computer.jsp 收到参数后,计算矩形的面积,并显示结果。 实训项目六:编写3个JSP页面:main.jsp,first.jsp和second.jsp,将3个JSP文件保存在同一个WEB工程中,main.jsp使用include动作标记加载first.jsp和second.jsp页面。First.jsp 页面可以画一张表格,second.jsp页面可以计算两个正整数的最大公约数。当first.jsp被加载时,获取main.jsp页面include动作标记的param子标记提供的表格行数和列数,当second.jsp 被加载时,获取main.jsp页面include动作标记的param子标记提供的两个正整数的值。 要求:上机编程完成上述实训项目,上机演示给教师检查,从中挑选三个程序的核心代码写在实训报告上 实验核心代码:

实验报告总结(精选8篇)

《实验报告总结》 实验报告总结(一): 一个长学期的电路原理,让我学到了很多东西,从最开始的什么都不懂,到此刻的略懂一二。 在学习知识上面,开始的时候完全是老师讲什么就做什么,感觉速度还是比较快的,跟理论也没什么差距。但是之后就觉得越来越麻烦了。从最开始的误差分析,实验报告写了很多,但是真正掌握的确不多,到最后的回转器,负阻,感觉都是理论没有很好的跟上实践,很多状况下是在实验出现象以后在去想理论。在实验这门课中给我最大的感受就是,必须要先弄清楚原理,在做实验,这样又快又好。 在养成习惯方面,最开始的时候我做实验都是没有什么条理,想到哪里就做到哪里。比如说测量三相电,有很多种状况,有中线,无中线,三角形接线法还是Y形接线法,在这个实验中,如果选取恰当的顺序就能够减少很多接线,做实验就应要有良好的习惯,就应在做实验之前想好这个实验要求什么,有几个步骤,就应怎样安排才最合理,其实这也映射到做事情,不管做什么事情,就应都要想想目的和过程,这样才能高效的完成。电原实验开始的几周上课时间不是很固定,实验报告也累计了很多,第一次感觉有那么多实验报告要写,在交实验报告的前一天很多同学都通宵了的,这说明我们都没有合理的安排好自己的时间,我就应从这件事情中吸取教训,合理安排自己的时间,完成就应完成的学习任务。这学期做的一些实验都需要严谨的态度。在负阻的实验中,我和同组的同学连了两三次才把负阻链接好,又浪费时间,又没有效果,在这个实验中,有很多线,很容易插错,所以要个性仔细。 在最后的综合实验中,我更是受益匪浅。完整的做出了一个红外测量角度的仪器,虽然不是个性准确。我和我组员分工合作,各自完成自己的模块。我负责的是单片机,和数码显示电路。这两块都是比较简单的,但是数码显示个性需要细致,由于我自己是一个粗心的人,所以数码管我检查了很多遍,做了很多无用功。 总结:电路原理实验最后给我留下的是:严谨的学习态度。做什么事情都要认真,争取一次性做好,人生没有太多时间去浪费。 实验报告总结(二): 在分子生物学实验室为期两个月的实习使我受益匪浅,我不仅仅学习到了专业知识,更重要的是收获了经验与体会,这些使我一生受用不尽,记下来与大家共勉: 1.手脚勤快,热心帮忙他人。初来匝道,不管是不是自己的份内之事,都就应用心去完成,也许自己累点,但你会收获很多,无论是知识与经验还是别人的称赞与认可。 2.多学多问,学会他人技能。学问学问,无问不成学。知识和经验的收获能够说与勤学好问是成正比的,要记住知识总是垂青那些善于提问的人。 3.善于思考,真正消化知识。有知到识,永远不是那么简单的事,当你真正学会去思考时,他人的知识才能变成你自己的东西。 4.前人铺路,后人修路。墨守陈规永远不会有新的建树,前人的道路固然重要,但是学会另辟蹊径更为重要。

Java Web实验报告一

实验一开发环境配置及Servlet程序设计 一、实验目的 1、了解并熟悉编程环境、编程工具,包括Tomcat、MyEclipse和JDK; 2、学会配置环境变量; 3、掌握在MyEclipse中编辑简单源程序的方法、创建包和servlet类的方法; 4、掌握在Tomcat中手工创建可执行程序的方法; 5、加强对servlet的生命周期的理解;掌握servlet程序的实现方法。 二、实验内容及要求 本次实验内容分为两部分: 1、验证部分 1)通过手动的方式在Tomcat中建立工程my,在该工程中建立所需的文件夹以及文件web.xml。 2)在MyEclipse中建立一个名为TestLifeCycleServlet.java的servlet。 3)运行该servlet。 2、编程实现部分 编写一个页面程序(JSP程序)和一个后台程序(servlet程序),用户从页面中输入姓名、性别、年龄等信息,并提供一个查询按钮。当用户提交查询按钮时,执行servlet程序,该程序将用户输入的信息显示出来。用户界面的显示效果参见图1所示: 图1 表单显示效果示例 三、实现 1、验证部分 实现过程、必要的配置文件说明、实验结果等。 第一个实验 实验过程 第一步: 打开tomcat文件夹,在webapps中新建一个my的文件夹

第二步 在my文件夹中新建一个WEB-INF文件夹,并把web.xml放入 第三步 把TestLifeCycleServlet.java和index.jsp放入my文件夹中 第四步

让tomcat运行起来 第五步 输入http://localhost:8080/my/servlet/TestLifeCycleServlet web.xml代码 TestLifeCycleServlet TestLifeCycleServlet TestLifeCycleServlet /servlet/TestLifeCycleServlet index.jsp 运行结果 实验二 第一步 先建一个web project命名为wy,在src目录下新建一个Servlet命名为ThreeParams import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class ThreeParams extends HttpServlet{

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

实验报告实验名称汇编语言程序设计 | | 专业班级:信息安全 学号: 姓名:

实验一汇编语言上机过程和Debug常用调试命令 一.实验目的: 学习程序设计的基本方法和技能,熟练掌握用汇编语言设计、编写、调试和运行程序的方法。 二.实验题目: 熟悉与实验有关的系统软件(如编辑程序、汇编程序、连接程序和调试程序等)的使用方法。在调试过程中,学习及掌握debug程序的各种操作命令。 三.问题描述: 试编写一程序:比较两个字符串string1和string2所含的字符是否相同,若相同则显示‘match’; 否则,显示‘no match’。 四.方法说明: a)使用ws、tc或EDIT编辑程序来建立源文件,然后存盘,使系统返回DOS。 b)用汇编程序masm(或asm)对源文件汇编产生目标文件obj 如:汇编指示出错则需重新调用编辑程序修改错误,直至汇编通过为止。 c)用连接程序link 产生执行文件EXE. d)执行程序,可直接从DOS执行程序。 e)使用debug程序调试程序的方法。 五.实验步骤: 1.调用字处理程序EDIT 建立以sample.asm文件 datarea segment string1 db‘move the cursor backward.’ string2 db‘move the cursor backward.’ mess1 db ‘Match..’,13,10,’$’ mess2 db ‘No match!..’,13,10,’$’ datarea ends prognam segment main proc far assume cs:prognam,ds:datarea,es:datarea start: push ds sub ax,ax push ax mov ax,datarea mov ds,ax mov es,ax lea si,string1 lea di,string2 cld mov cx,25

欢迎登录xxx兼职网站
用户名:
密码: