实验一输入输出接口实验

实验一输入输出接口实验
实验一输入输出接口实验

实验一输入、输出接口实验

一、实验要求

1、P1 口做输出口,接八只发光二极管。

2、P3.0,P3.1 作输入口接两个拨动开关

3.要求若P3.0单独闭合,则LED灯从L7-L0循环闪烁,每次亮一个,若P3.1单独闭合,则led灯从L0-L7闪烁,每次亮一个。若P3.0 P3.1同时闭合,则所有灯一起闪烁,闪烁间隔为1S。若P3.0 P3.1全部断开,则所有灯全不亮。

4、将闪烁间隔修改为30MS,观察现象。

二、实验目的

1、学习 I/0 口的使用方法。

2、学习延时子程序的编写和使用。

三、实验设备

1、IPC-610研华工控机一台,

2、伟福LAB2000P教学实验系统。

四、实验电路及连线

五、实验说明

1、P1口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当 P1口用为输入口时,必须先对它置1。若不先对它置1,读入的数据是不正确的。

2、8051 延时子程序的延时计算问题,对于程序

Delay:

MOV R6,#0H

MOV R7,#0H

DelayLoop:

DJNZ R6,DelayLoop

DJNZ R7,DelayLoop

RET

查指令表可知 MOV,DJNZ 指令均需用两个机器周期,在 6MHz 晶振时,一个机器周期时间长度为12/6MHZ,所以该段程序执行时间为:

((256×2+2)×256+4)×2=263176

六、实验报告

1、解释为什么P1端口作为输入口时,需先对它置1,才能读取正确的外部输入数据?

2、画出完整的实验电路原理图

2、整理实验程序

连线 连接孔 1 连接孔 2 1 P1.0 L0 2 P1.1 L1 3 P1.2 L2 4 P1.3

L3 5 单脉冲输出 T0

实验二 外中断及定时、计数器实验

一、实验目的

1、掌握外部中断的运用方法,本实验中采用边沿触发模式。

2、学习 8051 内部 T0 T1 定时/计数器使用方法。

3、掌握中断处理程序的编程方法。 二、实验内容及要求

1、用单次脉冲申请外中断INTO ,采用边沿触发模式,在外中断处理程序中对输出信号灯LED6(P3.1控

制)进行反转(采用CPL 指令)

2、8031 内部定时计数器 T0,按计数器模式和方式2工作,对 P3.4(T0)引脚进行计数。将其数值按二进制数在 P1 口驱动 LED 灯上(L0,L1,L2,L3)显示出来。

3、用 T1作定时器中断方式计时,实现每一秒钟LED7(L7)(P3.0控制)灯闪烁一次 三、实验设备

1、IPC-610研华工控机一台。 2、伟福LAB2000P 教学实验系统。 四、实验电路及连线

注意: 本实验中,“单次脉冲”同时作为计数脉冲输入T0引脚,同时也引到引脚INTO 申请外部中断,本实验中将要求同时开放外部中断INTO 和T1的定时中断这两个中断。 五、实验说明

1、关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部计数器在单片机中主要有定时器和计数器两个功能。本实验T0使用的是计数器。T1使用的是定时器。

2.本实验中内部T0起计数器的作用。外部事件计数脉冲由 P3.4 引入定时器 T0。 单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能 检测到一次跳变。这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样。同时这就决定了输入波形的频率不能超过机器周期频率。

3、定时器有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON 。TMOD 用于设置定时器/计数器

连线 连接孔 1 连接孔 2 1 P3.0 L7

的工作方式 0-3,并确定用于定时还是用于计数。TCON 主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。

4、内部计数器用作定时器时,是对机器周期计数。每个机器周期的长度是 12 个振荡器周期。因为实验系统的晶振是 6MHZ,本程序工作于方式 2,即 8 位自动重装方式定时器, 定时器 100us 中断一次,所以定时常数的设置可按以下方法计算:

机器周期=12÷6MHZ=2uS

(256-定时常数)×2uS=100us

定时常数=206. 然后对 100us 中断次数计数 10000 次,就是 1 秒钟.

5、在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。

六、实验报告

1、51单片机有几个外部中断,几个内部中断,其中断入口地址分别为多少?51单片机的外部中断有几种触发方式?在中断服务程序中应如何处理?

2、51单片机有几个计数器,最大记数值为多么,计数器和定时器的区别是什么?

3、画出完整的实验电路原理图.

4、整理实验程序

实验三 定时、计数器实验

一、实验要求

8031 内部定时计数器 T0,按计数器模式和方式 1 工作,对 P3.4(T0)引脚进行计数。将其数值按二进制数在 P1 口驱动 LED 灯上显示出来。用 T1作定时器中断方式计时,实现每一秒钟LED (L7)灯闪烁一次 二、实验目的

1、学习 8031 内部 T0 T1 定时/计数器使用方法。

2、进一步掌握中断处理程序的编程方法。 三、实验设备

1、IPC-610研华工控机一台, 2、伟福LAB2000P 教学实验系统。 四、实验电路及连线

五、实验说明

1、关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部计数器在单片机中主要有定时器和计数器两个功能。本实验T0使用的是计数器。T1使用的是定时器。

2.本实验中内部T0起计数器的作用。外部事件计数脉冲由 P3.4 引入定时器 T0。 单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能 检测到一次跳变。这就要求被采样电平至少维持一个完整的机器周期,以保证电平 在变化之前即被采样。同时这就决定了输入波形的频率不能超过机器周期频率。

3、定时器有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON 。TMOD 用于设置定时器/计数 器的工作方式 0-3,并确定用于定时还是用于计数。TCON 主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。

4、内部计数器用作定时器时,是对机器周期计数。每个机器周期的长度是 12 个振 荡器周期。因为实验系统的晶振是 6MHZ ,本程序工作于方式 2,即 8 位自动重装方式定时器, 定时器 100us 中断一次,

所以定时常数的设置可按以下方法计算:

机器周期=12÷6MHZ=2uS

(256-定时常数)×2uS=100us

定时常数=206.然后对100us中断次数计数10000次,就是1秒钟.

5、在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。

六、实验报告

1、51单片机有几个计数器,最大记数值为多么,计数器和定时器的区别是什么?

2、画出完整的实验电路原理图.

3、整理实验程序

实验四 A/D 转换实验

一、实验要求

利用实验板上的 ADC0809 做 A/D 转换器,实验板上的电位器提供模拟量输入,编制程序,将模拟量转换成二进制数字量,用 8051 的 P1 口输出到发光二极管显示。

二、实验目的

1、掌握 A/D 转换与单片机的接口方法。

2、了解 A/D 芯片 ADC0809 转换性能及编程。

3、通过实验了解单片机如何进行数据采集。

三、实验设备

1、IPC-610研华工控机一台,

2、伟福LAB2000P教学实验系统。

四、实验电路及连线

连线连接孔1连接孔2

1IN0电位器输出

2AD_CS CS0

3EOC INT0

4P1.0L0

5P1.1L1

6P1.2L2

7P1.3L3

8P1.4L4

9P1.5L5

10P1.6L6

11 P1.7L 7

五、实验说明

A/D 转换器大致有三类:一是双积分 A/D 转换器,优点是精度高,抗干扰性好;价格

便宜,但速度慢;二是逐次逼近 A/D 转换器,精度,速度,价格适中;三是并行 A/D 转换器,速度快,价格也昂贵。

实验用的 ADC0809 属第二类,是八位 A/D 转换器。每采集一次一般需 100us。本程序

是用延时查询方式读入 A/D 转换结果,也可以用中断方式读入结果,在中断方式下,A/D 转换结束后会自动产生 EOC 信号,将其与 CPU 的外部中断相接,有兴趣的同学可以试试编程用中断方式读回 A/D 结果.

五、实验报告

1、画出完整的实验电路原理图

2、ADC0809 芯片的相关技术参数有那些?2、整理实验程序

输入电压

读取数值

实验五 工业PC 机数据采集实验

一、实验要求

利用工业PC 机对多功能数据采集卡PCL-818进行各项功能调试,重点测试AD 和DA 通道,并填写测试数据,察看所用调试程序的源代码结构。

二、实验目的

1、掌握工业PC 机的结构特征。

2、掌握多功能数据采集卡的功能

3、通过实验了解工业PC 机和数据采集卡如何进行数据采集控制。

三、实验设备

1、IPC-610研华工控机一台, 2、PCL -818数据采集卡及接线端子板 3、万用表和示波器

四、实验内容

1、利用提供的调试程序调试PCL-818数据采集卡的A/D 通道,填写测试值,并用坐标绘出对应关系

输出数值

测量电压

2、利用提供的调试程序调试PCL-818数据采集卡的D/A 通道,填写测试值, 并用坐标绘出对应关系

五、实验报告

1、观察实验中所用工业PC 机和个人PC 机在结构上有何不同和相同点?

2、PCL -818数据采集卡的插卡接口是什么?有那些功能和各自的通道数目?AD 和DA 通道的精度为多少?

3、在高级语言VB 中是如何对数据采集卡PCL -818进行控制的?

实验系统介绍

一、MCS51 单片机实验系统 LAB2000P 使用说明

(一)系统的启动

1、仿真开发系统集成调试软件的使用见 WAVE 仿真开发系统使用说明。

2、将配套的串行通讯电缆的一端与实验仪上的“仿真器串口” 9 芯 D 形插座相连,另一端与 PC 机的串行口相连。

3、将实验台的电源线与 220V 电源相连。(实验结束后应拔下)

4、打开实验台电源开关,红色电源指示灯亮。仿真开发器初始化成功后,LED 会显示8051,表示仿真系统正常。

5、打开计算机电源,执行 WAVE 集成调试软件。

(二)注意事项

1、无论是集成电路的插拔、通讯电缆的连接、跳线器的设置还是实验线路的连接,都应确保在断电情况下进行,否则可能造成对设备的损坏。

2、实验线路连接完成后,应仔细检查无误后再接通电源。

(三) MCS51单片机实验系统设置

WAVE 集成调试环境应设置如下,在仿真器设置菜单中选择:

仿真器型号:伟福 Lab2000P实验仪

仿真头型号:MCS51实验(8031/32)

在进行实验箱上的相关硬件实验时:去掉伟福软件模拟器的选项

二、工业PC机数据采集实验使用说明

1、接线端板上的连线要看清相关说明,防止发生电源短路,损坏计算机

2、在IPC的调试软件中的相关参数不要随意修改。

三、Wave 51调试软件使用说明

(一)文件菜单

文件(F)

文件 | 打开文件

打开用户程序,进行编辑。如果文件已经在项目中,可以在项目窗口中双击相应文件名打开文件.

文件 | 保存文件

保存用户程序。用户在修改程序后,如果进行编译,则在编译前,系统会自动将修改过的文件存盘.

文件 | 新建文件

建立一个新的用户程序, 在存盘的时候,系统会要求用户输入文件名.

文件 | 另存为

将用户程序存成另外一个文件, 原来的文件内容不会改变

文件 | 重新打开

在重新打开的下拉菜单中有最近打开过的文件及项目,选择相应的文件名或项目名就可以重新打开文件或项目。

文件 | 打开项目

打开一个用户项目,在项目中,用户可以设置仿真类型。加入用户程序,进行编译,调试。系统中只允许打开一个项目,打开一个项目或新建一个项目时,前一项目将自动关闭

仿真器设置包括仿真器类型,仿真头(POD)类型,CPU 类型,显示格式和产生的目标文件类型,可以用以下几种方法设置仿真器.

o 在项目窗口中双击第一行,将打开仿真器设置窗口,对仿真器进行设置.

o 按鼠标右键,在弹出菜单中选择[仿真器设置]

o 主菜单仿真器|仿真器设置.

加入模块文件

o 按鼠标右键,在弹出菜单中选择[加入模块文件]

o 主菜单项目|加入模块文件

加入包含文件

o 按鼠标右键,在弹出菜单中选择[加入包含文件]

o 主菜单项目|加入包含文件

文件 | 保存项目

将用户项目存盘。用户在编译项目时,自动存盘。

注意:当用项目仿真时,系统要求项目文件,模块文件,包含文件在同一个目录(文件夹)下.

文件 | 新建项目

当用户开始新的任务时,应新建一个项目,在项目中,设置所用仿真器类型,POD 类型,加入用户程序

文件 | 关闭项目

关闭当前项目,如果用户不想用项目方式调试单个程序,就要先关闭当前项目。

(二)项目菜单

项目(P)

项目 | 编译

编译当前窗口的程序。如有错误,系统将会指出错误所在的位置。

项目 | 全部编译

全部编译项目中所有的模块(程序文件),包含文件。如有错误系统会指出错误所在位置。

项目 | 加入模块文件

在当前项目中添加一个模块。

项目 | 加入包含文件

在当前项目中添加一个包含文件

(三)执行菜单

执行(R)

执行 | 全速执行

运行程序

执行 | 跟踪

跟踪程序执行的每步,观察程序运行状态。

执行 | 单步

单步执行程序,与跟踪不同的是,跟踪可以跟踪到函数或过程的内部,而单步执行则不跟踪到程序内部。

执行 | 执行到光标处

程序从当前 PC 位置,全速执行到光标所在的行。如果光标所在行没有可执行代码。则提示“这行没有代码”

执行 | 暂停

暂停正在全速执行的程序。

执行 | 复位

终止调试过程,程序将被复位。如果程序正在全速执行,则应先停止。

执行 | 设置 PC

将程序指针 PC,设置到光标所在行。程序将从光标所在行开始执行。

执行 | 自动单步跟踪/单步

模仿用户连续按 F7 或 F8 单步执行程序。

执行 | 设置/取消断点

将光标所在行设为断点,如果该行原来已为断点,则取消该断点。所有断点通过断点窗口进行管理。

(四)窗口菜单

窗口(W)

窗口 | 信息窗口

显示系统编译输出的信息。如果程序有错,会以图标形式指出

如在程序文件CALC.C中118行存在错误。

窗口 | CPU 窗口

通过 CPU 窗口,可以打开反汇编窗口,SFR窗口和REG窗口。在反汇编窗口中可观察编译正确的机器码及反汇编程序,可以让你更清楚地了解程序执行过程。 SFR 窗口中可以观察到单片机使用的SFR(特殊功能寄存器)值和位变量的值。REG窗口为R0..R7、A、DPTR等常用寄存器的值。

窗口 | 数据窗口

51 系列有以下四种数据窗口

DATA 内部数据窗口 CODE 程序数据窗口 BIT 窗口

XDATA 外部数据窗口 PDATA 外部数据窗口(页方式)

(五) 仿真器菜单

仿真器

在仿真器设置菜单中选择:仿真器型号:伟福 Lab2000P实验仪,仿真头型号:MCS51实验(8031/32)在进行实验仪上的硬件实验时,去掉伟福软件模拟器的选项

微机原理简单输入输出实验报告

东南大学 《微机实验及课程设计》 实验报告 实验四(1)简单输入输出 一. 实验目的与内容 (一)实验目的 1)进一步掌握TPC实验装置的基本原理和组成结构; 2)掌握利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况; 3)掌握简单并行输入输出接口的工作原理及使用方法,进一步熟悉掌握输入输出单元的功能

和使用。 (二)实验内容及要求 1、输出接口输出,根据8个发光二极管发光的情况验证编程从键盘输入一个字符或数字,将其ASCII码通过正确性。(输出端口实验必做) 2、用逻辑电平开关预置某个字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来。(输入端口实验必做) 3、利用基本实验(1)中的输出锁存电路,设计L0~L7为流水灯,流水间隔时间由软件产生。(输出端口实验) 4、利用基本实验(2)中的输入电路,监测逻辑电平开关K0~K7的变换,当开关状态为全开时,在屏幕上显示提示信息并结束程序。(输入端口实验) 要求: 1、输入输出端口应该可以响应外设的连续变化。 2、输出按ESC键退出;输入按任意键退出。 3、内容3、4比做一题,选做一题 二. 实验基本原理 (一)基本原理 简单并行输出实验:八D触发器74LS273的八个输入端接数据总线D0~D7,从键盘输入一个字符或数字,通过2A8H~输出接口输出该字符或者数字代表的ASCII码,再通过8个发光二极管发光显示二进制数码,从而验证编程以及电路的正确性。 简单并行输入实验:八缓冲器74LS244的八个输出端接数据总线D0~D7,8个输入端分别接逻辑电平开关K0~K7,在逻辑电平开关上预置任意字符的ASCII码,编程将此ASCII码通过2A0H~输入,ASCII码对应字符显示在屏幕上,从而验证编程及电路的正确性。 (二)实验接线图

实验2-网络端口的扫描

南昌航空大学实验报告 二〇一三年十一月八日 课程名称:信息安全实验名称:实验网络端口扫描 班级:姓名:同组人: 指导教师评定:签名: 一、实验目的 通过练习使用网络端口扫描器,可以了解目标主机开放的端口和服务程序,从而获取系统的有用信息,发现网络系统的安全漏洞。在实验中,我们将在操作系统下使用进行网络端口扫描实验,通过端口扫描实验,可以增强学生在网络安全方面的防护意识。利用综合扫描软件“流光”扫描系统的漏洞并给出安全性评估报告。 二、实验原理 .端口扫描的原理 对网络端口的扫描可以得到目标计算机开放的服务程序、运行的系统版本信息,从而为下一步的入侵做好准备。对网络端口的扫描可以通过执行手工命令实现,但效率较低;也可以通过扫描工具实现,效率较高。 扫描工具根据作用的环境不同,可分为两种类型:网络漏洞扫描工具和主机漏洞扫描工具。 .端口的基础知识 为了了解扫描工具的工作原理,首先简单介绍一下端口的基本知识。 端口是协议中所定义的,协议通过套接字()建立起两台计算机之间的网络连接。套接字采用[地址:端口号]的形式来定义,通过套接字中不同的端口号可以区别同一台计算机上开启的不同和连接进程。对于两台计算机间的任意一个连接,一台计算机的一个[地址:端口]套接字会和另一台计算机的一个[地址:端口]套接字相对应,彼此标识着源端、目的端上数据包传输的源进程和目标进程。这样网络上传输的数据包就可以由套接字中的地址和端口号找到需要传输的主机和连接进程了。由此可见,端口和服务进程一一对应,通过扫描开放的端口,就可以判断出计算机中正在运行的服务进程。 /的端口号在~范围之内,其中以下的端口保留给常用的网络服务。例如,端口为服务,端口为服务,端口为服务,端口为服务,端口为服务等。 .扫描的原理 扫描的方式有多种,为了理解扫描原理,需要对协议简要介绍一下。 一个头的数据包格式如图所示。它包括个标志位,其中:、、、。 图数据包格式 根据上面介绍的知识,下面我们介绍基于和协议的几种端口扫描方式。

汇编语言-实验五 输入输出程序设计

实验五输入输出程序设计 一、实验目的 1) 掌握输入输出程序的编写方法。 2) 熟悉系统功能调用的方法。 3) 熟悉动画程序的编写方法。 二、实验内容 1)在CRT上每隔一秒连续显示字符0-9。 编程提示 为了使输出的字符之间有空格,在每一个循环中输出一个0-9的字符和一个空格。为了输出0-9,置寄存器BL初值为0,每循环一次使其增量。为了保证输出是十进制,增量后用DAA调整指令。由于输出为一位十进制数,用AND 0FH 指令屏蔽高4位。 2)用系统功能调用将‘HELLO’由键盘输入,再从屏幕输出‘***HELLO***’。 3)编制在屏幕上画线的子程序,调用该子程序画一矩形。 4)编制字母下落一行的子程序,调用该子程序使字母从屏幕顶部下落到底部。 5)创建一磁盘文件,保存从键盘输入的字符串。 6)编写程序用设置系统时间,首先从键盘以十进制数形式输入时间,然后修改系统时间,并重新以十进制形式显示时间。 7)编写程序将屏幕分割成格状,每一格涂上不同颜色,格数从键盘输入。 8)编写程序在屏幕上显示菜单,输入相应菜单的序号后,选种该菜单项。 三、源程序 EXAM5-1 STACK SEGMENT STACK DB 1024 DUP(0)

STACK ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK START:MOV BL,0 LP:MOV DL,20H MOV AH, 2 INT 21H MOV AL,BL ADD AL, 0 DAA AND AL,0FH MOV BL,AL PUSH BX OR AL,30H MOV DL,AL MOV AH, 2 INT 21H MOV BX,3E8H LP2:MOV CX,176H ;延时1ms LP1:PUSHF POPF LOOP LP1 DEC BX JNZ LP2 POP BX INC BL JMP LP CODE ENDS END START 执行程序EXAM5-1·EXE,屏幕上依次循环显示一个数字一个空格: 0 1 2 3 4 5 6 7 8 9 …… EXAM5-2 STACK SEGMENT STACK DB 1024 DUP(0) STACK ENDS DA TA SEGMENT BUFF DB 6,7 DUP(?),‘$’ DA TA ENDS INPUT MACRO BUFE MOV DX,OFFSET BUFE MOV AH,0AH INT 21H ENDM

实验指导书1 GPIO输入输出控制实验

实验一GPIO输入输出控制实验 GPIO输入输出控制实验1 1.实验目的 (1)进一步掌握ADS 1.2集成开发环境的使用方法。 (2)掌握LPC2200专用工程模板的添加和使用。 (3)掌握EasyJTAG仿真器的安装和使用。 (4)能够在MagicARM2200教学实验开发平台上运行第一个程序(无操作系统)。 (5)熟悉LPC2000系列ARM7微控制器的GPIO控制。 (6)了解应用程序的固化方法。 2.实验设备 ●硬件:PC机一台 MagicARM2200教学实验开发平台一套 ●软件:Windows98/XP/2000系统,ADS 1.2集成开发环境 3.实验内容 控制MagicARM2200教学实验开发平台上的蜂鸣器报警。先使用片外RAM(MT45W4MW16芯片)进行调试,调试通过后将程序固化到片外FLASH(SST39VF160芯片),然后脱机运行。 4.实验预习要求 (1)认真复习LPC2000系列ARM7微控制器的GPIO控制机制以及LPC2000管脚连接模块等内容。 (2)了解MagicARM2200教学实验开发平台的硬件结构,注意蜂鸣器的相关控制电路。 (3)了解MagicARM2200教学实验开发平台上的跳线。 (4)仔细阅读附带文档《ADS集成开发环境及仿真器应用》或其它相关资料,了解ADS 1.2集成开发环境、LPC2200专用工程模板、EasyJTAG仿真器的应用。 5.实验原理 如图1.1所示,MagicARM2200实验箱主板上蜂鸣器使用PNP三极管Q12进行驱动控制,当控制P0.7输出低电平时,Q12导通,蜂鸣器蜂鸣;当控制P0.7输出高电平时,Q12截止,蜂鸣器停止蜂鸣;若把JP22断开,Q12截止,蜂鸣器停止蜂鸣。 由于P0.7口与(LPC2200的)SPI功能部件的SSEL0复用,所以此引脚上接一上拉电阻R86,防止在使用硬件SPI总线时由于SSEL0引脚悬空导致SPI操作出错。

实验四 输入输出流程序设计

C++面向对象程序设计课程实验报告 课程名称C++面向对象程序设计班级实验日期2014.5.16-2012 .5.23 姓名学号实验成绩实验名称实验四输入输出流程序设计 实验目的及要求1.理解输入输出流的基本概念,明确流是一个类 2.了解输入输出流类库基本结构和主要类,掌握主要层次,其中重 点理解fstream,iostream和iomanip 3.理解流缓冲区类的派生关系以及设备缓冲、文件缓冲和流缓冲 4.熟悉格式化的输入和输出,记住主要的常用的操作符,以及各种 应用(对齐) 掌握文件的输入和输出,区别C语言中的文件写入、打开等操作,会对一个文件进行I/O操作 实验环境硬件平台:普通的PC机 软件平台:Windows 操作系统编程环境:VisualC++ 6.0 实验内容1.文件数据的读取。编制一程序来显示并保存[2,1000]内的所有素数。显示、保存素数的格式为:每行10个素数,每一个素数占7个字符,右对齐,最后一行不足10个素数时按一行输出 2.编写一个单向链表的类模板,分别实现增加、删除、查找和打印操作 算法描述及实验步骤1、这个题主要考察了文件中数据的读取,还包括数据格式化输入输出。首先定义一个ofstream类的对象output,在main函数中打开文件后,再分别编写判断素数、每行输出10个数以及使辖域为7的代码,最后关闭文件。 2 这个题是C++与数据结构的结合,实现单向链表内各种功能。首先定义一个类ListNode,然后利用前插入法初始化链表,编写类模板的成员函数,再分别进行增加、删除和查找的操作

调试过程及实验结果 总结1.一旦文件被打开,文件中的文本数据信息的读/写操作与控制台文件信息的输入/输出操作就完全一致 2.定义ifstream、ofstream、fstream流类对象时,应用对象名替代控制台文本信息输入/输出使用的输入流类对象(如cin)和输出流类对象(如cout)

计算机输入输出系统_接口实验报告

计算机输入输出系统接口实验报告 姓名: 学号: 东南大学计算机科学与工程学院、软件学院 School of Computer Science & Engineering College of Software Engineering Southeast University 二0 16 年 6 月

实验一环境熟悉与I/O地址译码 一、实验目的 掌握I/O地址译码电路的工作原理。 二、实验内容 将接口实验包中所带的EX-138.DSN文件用ISIS 7打开。改变A9~A3的接线方法,从而得到Y0;388H~38FH;Y1:398H~39FH; ……;Y7:3F8H~3FFH。并修改上一问的程序,以同样使得Y4#有效。 1)源程序 .8086 .MODEL SMALL .stack .data address word 3c8h .code start: mov ax,@data mov ds,ax mov dx,address mov al,0 out dx,al jmp $ END start 2)电路原理图(138译码部分)

3)运行结果贴图(138译码及上面两个273的输出)

实验二可编程中断控制器8259 一、实验目的 1.掌握8259的基本工作原理和编程方法。 2.深入了解中断的概念和实地址模式下中断处理程序的编写方法。 二、实验内容 将接口实验包中所带的EX-8259.DSN文件用ISIS 7打开。按手册接线并执行。运行结果贴图(执行三次中断,每次中断后的8086寄存器的截图) ……

实验三可编程定时器计数器8253 一、实验目的 掌握8253的基本工作原理、编程方法及其应用。 二、实验内容 一)研究定时计数器(选) 1)源程序 .8086 .MODEL SMALL .DATA .CODE START:MOV AX,@DATA MOV DS,AX MOV DX,226H MOV AL,00010000B ;T/C0,least significant byte only,mode0,Binary OUT DX,AL MOV AL,5 ;Initial count=5 MOV DX,220H OUT DX,AL MOV AH,4CH INT 21H END START 2)讨论题 如果把方式0改成方式1,电路不动,则按下BUTTON后,计数器值会否减1?为什么? 不会,因为方式1下GATE=1或0没有影响,只有GATE的上升沿才会触发计数器开始计数,而该电路中GATE时钟为1,所以计数器不会减1. 二)信号发生器 1)源程序 .8086 .MODEL SMALL .DATA .CODE START:MOV AX,@DATA MOV DS,AX ;Initailize T/C0 MOV DX,226H MOV AL,00110110B ;T/C0,least significant byte first,mode3,binary OUT DX,AL MOV DX,220H MOV AX,1000 ;Initial count=1000 OUT DX,AL MOV AL,AH

微机原理实验五输入与输出程序设计

实验六输入与输出程序设计 一、实验目的 1.掌握常用DOS中断调用的功能以及在应用程序中的使用方法。 2.学习键盘输入和屏幕输出的基本方法。 3.宏指令、子程序在应用程序中的使用。 4.汇编语言程序设计的调试与完善。 二、设计指标与实验要求 1.设计内容 本实验要求设计完成:①屏幕输出提示(如“Want input(Y/N)?”),若键入N 则结束程序返回操作系统;键入Y则转2步;键入的是其它字母则回①步。②换行后输出提示(如“please input a strings:”),且在该提示后键入一字符串(输入到输入缓冲区)。 ③换行后输出提示(如“your inputting is:”),在该提示后输出由②步输入的字符串。 ④换行后输出提示“Want continue(Y/N)? ”,若键入Y则转②步;键入N则结束程序返回操作系统;其它字母则回第④步。 2.设计要求 ①按屏幕提示要求输入,从屏幕上获得正确结果。 ②把程序中常用的中断调用定义成宏指令(至少定义2个)。 ③字符串回显部分设计成子程序,可以选择用21H中断的2号或9号功能来实现,应 能显示由主程序指定的任一字符串。要注意这两种方法实现的设计过程是不同的。 采用2号功能的,子程序输入参数为“回显字符串地址”和“回显字符数”;采用 9号功能的,子程序输入参数为“回显字符串地址”。 ④屏幕的提示信息显示格式尽量做到兼顾美观。 3.实验步骤 ①.选用合适的程序文本编辑软件编辑源程序,并为文件取以.ASM为扩展名的文件存盘。 ②.用宏汇编软件MASM对源程序文件进行汇编,若有错误,根据提示(行号,错误类型)回源程序文件中修改。 ③.用LINK对由MASM汇编后产生的目标文件做连接,生成可执行文件;若有错误(同

视频输入输出常用接口介绍

视频输入输出常用接口介绍 随着视频清晰度的不断提升,这也促使我们对高清视频产生了浓厚的兴趣,而如果要达某些清晰度的视频就需要配备相应的接口才能完全发挥其画质。所以说视频接口的发展是实现高清的前提,从早期最常见且最古老的有线TV输入到如今最尖端的HDMI数字高清接口,前前后后真是诞生了不少接口。但老期的接口信号还在继续使用,能过信号转换器就能达到更清晰的效果,比如: AV,S-VIDEO转VGA AV,S-VIDEO转HDMI,图像提升几倍,效果更好。 从现在电视机背后的接口也能看出这点,背后密密麻麻且繁琐的接口让人第一眼看过去有点晕的感觉。今天小编就将这些接口的名称与作用做一个全面解析,希望能对选购电视时为接口而烦恼的朋友起到帮助。 TV接口

TV输入接口 TV接口又称RF射频输入,毫无疑问,这是在电视机上最早出现的接口。TV接口的成像原理是将视频信号(CVBS)和音频信号(Audio)相混合编码后输出,然后在显示设备内部进行一系列分离/ 解码的过程输出成像。由于需要较多步骤进行视频、音视频混合编码,所以会导致信号互相干扰,所以它的画质输出质量是所有接口中最差的。 AV接口 AV接口又称(RCARCA)可以算是TV的改进型接口,外观方面有了很大不同。分为了3条线,分别为:音频接口(红色与白色线,组成左右声道)和视频接口(黄色)。

AV输入接口与AV线 由于AV输出仍然是将亮度与色度混合的视频信号,所以依旧需要显示设备进行亮度和色彩分离,并且解码才能成像。这样的做法必然对画质会造成损失,所以AV接口的画质依然不能让人满意。在连接方面非常的简单,只需将3种颜色的AV线与电视端的3种颜色的接口对应连接即可。 总体来说,AV接口实现了音频和视频的分离传输,在成像方面可以避免音频与视频互相干扰而导致的画质下降。AV接口在电视与DVD连接中使用的比较广,是每台电视必备的接口之一。 S端子 S端子可以说是AV端子的改革,在信号传输方面不再将色度与亮度混合输出,而是分离进行信号传输,所以我们又称它为“二分量视频接口”。

P1口输入输出实验

实验一P1 口输入输出 一.实验目的 (1)进一步熟悉51单片机外部引脚线路连接; (2)验证常用的51指令; (3)学习简单的编程方法; (4)掌握单片机全系统调试的过程及方法; (5)学习P1 口的有关功能作用以及使用方法。 二?实验说明 P1 口由于有内部上拉电阻,没有高阻抗输入状态,称为准双向口。作为输出口时,不需要在片外接上拉电阻,P1 口“读引脚”输入时,必须先向锁存器写1; 三?实验内容 P1 口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。P1.0、P1.1作输入口接两个拨动开关,P1.2、P1.3作输出口,接两个发光二极管,编写程序 读取开关状态,将此状态,在发光二极管上显示出来 四?实验原理 以实验机上74LS273做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。循环时间由定时器控制。 五?实验流程 ORG 0000H ;程序入口 AJMP RIGHT ;跳向标号RIGHT处 ORG 0030H ;程序

RIGHT: MOV R0,#08H ;置移位次数

MOV A,#0FFH ;置全 1 CLR C ;将Cy 清零 RIGHT1: RRC A ;由于进位Cy=0 ,所以带进位的循环右移会出现灯的亮灭 MOV P1,A ;输出至P1 口,控制LED CALL DELAY ;调用延时子程序 DJNZ R0,RIGHT1 ;R0-1,不为0则转移到标号 RIGHT1处 AJMP RIGHT ;绝对转移至RIGHT 处 ?***************************************************************************** 5 ; /*延时子程序*/ ?***************************************************************************** DJNZ R5,DELAY1 ;R5-1,不为 0 则转移至 DELAY1,执行 2*10us RET ;退出子程序执行 END 七?硬件设计 (1) P1 口某一 I/O 口线反转输出电路 (2) P1 口输出电路 DELAY: MOV R5,#10 DELAY1: MOV R6,#50 DELAY2: MOV R7,#250 DJNZ R7,$ DJNZ R6,DELAY2 ;R6-1,不为0则转移至 DELAY2,执行2*200*10us H-5V +5V Vcc P1.0 Pl 1 EA XI PL 2 Pl .3 Pl XS Pl.5 Pl.6 Pl .7 R.ST Vss ;使用不停的跳转来实现延时, 30 P 80CS1 LED 360fi + 5V

网络扫描及安全评估实验报告

一、实验目的 ●掌握网络端口扫描器的使用方法,熟悉常见端口和其对应的服务程序,掌 握发现系统漏洞的方法。 ●掌握综合扫描及安全评估工具的使用方法,了解进行简单系统漏洞入侵的 方法,了解常见的网络和系统漏洞以及其安全防护方法。 二、实验原理 ●端口扫描原理 ●端口扫描向目标主机的TCP/IP服务端口发送探测数据包,并记录 目标主机的响应。通过分析响应来判断服务端口是打开还是关闭, 就可以得知端口提供的服务或信息。 ●端口扫描主要有经典的扫描器(全连接)、SYN(半连接)扫描器、 秘密扫描等。 ●全连接扫描:扫描主机通过TCP/IP协议的三次握手与目标主机的 指定端口建立一次完整的连接。建立连接成功则响应扫描主机的 SYN/ACK连接请求,这一响应表明目标端口处于监听(打开)的 状态。如果目标端口处于关闭状态,则目标主机会向扫描主机发送 RST的响应。 ●半连接(SYN)扫描:若端口扫描没有完成一个完整的TCP连接, 在扫描主机和目标主机的一指定端口建立连接时候只完成了前两 次握手,在第三步时,扫描主机中断了本次连接,使连接没有完全 建立起来,这样的端口扫描称为半连接扫描,也称为间接扫描。 ●TCP FIN(秘密)扫描:扫描方法的思想是关闭的端口会用适当的 RST来回复FIN数据包。另一方面,打开的端口会忽略对FIN数 据包的回复。 ●综合扫描和安全评估技术工作原理 ●获得主机系统在网络服务、版本信息、Web应用等相关信息,然后 采用模拟攻击的方法,对目标主机系统进行攻击性的安全漏洞扫 描,如果模拟攻击成功,则视为漏洞存在。最后根据检测结果向系 统管理员提供周密可靠的安全性分析报告。

C语言程序设计实验报告

《C程序设计》实验教学大纲 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分: 4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。

2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。 九、实验项目 实验一 C程序的运行环境和运行一个C程序的方法 一、实验目的 1.了解Visual C++编译系统的基本操作方法,学会独立使用该系统。 2.了解在该系统上如何编辑、编译、连接和运行一个C程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; printf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序: main( ) {int i=8,j=10,m,n; m=++i;n=j++;

实验一输入输出接口实验

实验一输入、输出接口实验 一、实验要求 1、P1 口做输出口,接八只发光二极管。 2、P3.0,P3.1 作输入口接两个拨动开关 3.要求若P3.0单独闭合,则LED灯从L7-L0循环闪烁,每次亮一个,若P3.1单独闭合,则led灯从L0-L7闪烁,每次亮一个。若P3.0 P3.1同时闭合,则所有灯一起闪烁,闪烁间隔为1S。若P3.0 P3.1全部断开,则所有灯全不亮。 4、将闪烁间隔修改为30MS,观察现象。 二、实验目的 1、学习 I/0 口的使用方法。 2、学习延时子程序的编写和使用。 三、实验设备 1、IPC-610研华工控机一台, 2、伟福LAB2000P教学实验系统。 四、实验电路及连线 五、实验说明 1、P1口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当 P1口用为输入口时,必须先对它置1。若不先对它置1,读入的数据是不正确的。 2、8051 延时子程序的延时计算问题,对于程序 Delay: MOV R6,#0H MOV R7,#0H DelayLoop: DJNZ R6,DelayLoop DJNZ R7,DelayLoop RET 查指令表可知 MOV,DJNZ 指令均需用两个机器周期,在 6MHz 晶振时,一个机器周期时间长度为12/6MHZ,所以该段程序执行时间为: ((256×2+2)×256+4)×2=263176

六、实验报告 1、解释为什么P1端口作为输入口时,需先对它置1,才能读取正确的外部输入数据? 2、画出完整的实验电路原理图 2、整理实验程序

连线 连接孔 1 连接孔 2 1 P1.0 L0 2 P1.1 L1 3 P1.2 L2 4 P1.3 L3 5 单脉冲输出 T0 实验二 外中断及定时、计数器实验 一、实验目的 1、掌握外部中断的运用方法,本实验中采用边沿触发模式。 2、学习 8051 内部 T0 T1 定时/计数器使用方法。 3、掌握中断处理程序的编程方法。 二、实验内容及要求 1、用单次脉冲申请外中断INTO ,采用边沿触发模式,在外中断处理程序中对输出信号灯LED6(P3.1控 制)进行反转(采用CPL 指令) 2、8031 内部定时计数器 T0,按计数器模式和方式2工作,对 P3.4(T0)引脚进行计数。将其数值按二进制数在 P1 口驱动 LED 灯上(L0,L1,L2,L3)显示出来。 3、用 T1作定时器中断方式计时,实现每一秒钟LED7(L7)(P3.0控制)灯闪烁一次 三、实验设备 1、IPC-610研华工控机一台。 2、伟福LAB2000P 教学实验系统。 四、实验电路及连线 注意: 本实验中,“单次脉冲”同时作为计数脉冲输入T0引脚,同时也引到引脚INTO 申请外部中断,本实验中将要求同时开放外部中断INTO 和T1的定时中断这两个中断。 五、实验说明 1、关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部计数器在单片机中主要有定时器和计数器两个功能。本实验T0使用的是计数器。T1使用的是定时器。 2.本实验中内部T0起计数器的作用。外部事件计数脉冲由 P3.4 引入定时器 T0。 单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能 检测到一次跳变。这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样。同时这就决定了输入波形的频率不能超过机器周期频率。 3、定时器有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON 。TMOD 用于设置定时器/计数器 连线 连接孔 1 连接孔 2 1 P3.0 L7

端口扫描实验报告

综合实验报告 ( 2010 -- 2011 年度第二学期) 名称:网络综合实验 题目:端口扫描程序 院系:信息工程系 班级: 学号: 学生姓名: 指导教师:鲁斌李莉王晓霞张铭泉设计周数: 2 周 成绩: 日期:2011年7月1日

一、综合实验的目的与要求 1.任务:设计并实现一个端口扫描程序,检测某个IP或某段IP的计算机的端口工作情况。 2.目的:加深对课堂讲授知识的理解,熟练掌握基本的网络编程技术和方法,建立网络编程整体概念,使得学生初步具有研究、设计、编制和调试网络程序的能力。 3.要求:熟悉有关定义、概念和实现算法,设计出程序流程框图和数据结构,编写出完整的源程序,基本功能完善,方便易用,操作无误。 4.学生要求人数:1人。 二、综合实验正文 1.端口扫描器功能简介:服务器上所开放的端口就是潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息,进行端口扫描的方法很多,可以是手工进行扫描、也可以用端口扫描软件进行。扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的回答,通过这种方法可以搜集到很多关于目标主机的各种有用的信息,例如远程系统是否支持匿名登陆、是否存在可写的FTP目录、是否开放TELNET 服务和HTTPD服务等。 2.实验所用的端口扫描技术:端口扫描技术有TCP connect()扫描、TCP SYN扫描、TCP FIN 扫描、IP段扫描等等。本次实验所用的技术是TCP connect()扫描,这是最基本的TCP 扫描,操作系统提供的connect()系统调用可以用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不能用的,即没有提供服务。这个技术的一个最大的优点是,你不需要任何权限。系统中的任何用户都有权利使用这个调用。 3.实验具体实现方案:编写一个端口扫描程序,能够显示某个IP或某段IP的计算机的某一个或某些端口是否正在工作。基本工作过程如下: (1) 设定好一定的端口扫描范围; (2) 设定每个端口扫描的次数,因为有可能有的端口一次扫描可能不通; (3) 创建socket,通过socket的connect方法来连接远程IP地址以及对应的端口; (4) 如果返回false,表示端口没有开放,否则端口开放。 4.有关TCP/IP的知识: 4.1套接字概念 1)在网络中要全局地标识一个参与通信的进程,需要采用三元组:协议、主机IP地址、端口号。

c语言程序设计基本输入输出和简单程序设计

实验3 基本输入输出和简单程序设计 实验目的 1.掌握常用的C语言语句,熟练应用赋值、输入、输出语句。 2.理解C语言程序的顺序结构,掌握顺序结构设计的基本方法。 3.进一步熟悉C程序的编辑、编译、连接和运行以及调试跟踪的过程。 实验内容 1.准备实验环境: (1)启动Visual Studio 201X 或者Codeblocker等C程序开发的IDE (2)如果保留了实验1的工程项目,则可以直接双击工程项目文件夹中的.sln 文件打开它即可。否则,按实验1的做法,创建一个Win32控制台应用程序(即ConsoleApplication)工程,以自己的姓名全拼音为工程名称。可能有些同学已经忘记了,我们再指导一遍: 首先新建项目:

2.理解分析程序,熟悉基本的C程序输入输出。 1)给工程新建一个源程序文件,取名为"你的姓名全拼_3_1.c",并将以下程序编写进该源程序保存: #include int main() { int a=25; double d = 4321.123456789012345; char c = 'T'; printf("你的姓名_3_1:理解输出!\n");/* 改姓名哦*/ printf("a = :%d;%5d;%-5d;%+05d!\n",a,a,a,-a); printf("a = :%5x;%o!\n",a,a); printf("d = :%f;%15f;%8.3f;%20.15f;%.2f!\n",d,d,d,d,d); printf("c = :%c;%5c;%-5c!\n",c,c,c); } 运行该程序,将运行的结果截图放在下面: 程序运行的结果图:

实验一 IO口输入、输出实验

贵州大学实验报告纸 实验一I/O口输入、输出实验 一、实验目的 掌握单片机P1口、P3口的使用方法。 二、实验要求 根据实验内容编写一个程序,并在实验仪上调试和验证。 三、实验内容 以P1口为输出口,接八位逻辑电平显示,LED显示跑马灯效果。以P3口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。 四、实验说明和电路原理图 P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。 本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区),八位逻辑电平输出电路原理图参见图1-1。八位逻辑电平显示电路原理图参见图1-2。 图1-2 八位逻辑电平显示

图1-1 八位逻辑电平输出 五、实验步骤 ㈠实验程序编写 1、实验程序: ;//****************************************************************** ;文件名: Port for MCU51 ;功能: I/O口输入、输出实验 ;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口),K1 ;到CPU模块的P3.1口; ;用8位数据线连接八位逻辑电平显示模块的JD4B到CPU模块的JD8(P1口)。 ;//****************************************************************** DIR BIT P3.0 ORG 0000H LJMP START ORG 0100H START: Output1: mov a, #0fEH mov r5, #8 loop1: CLR C mov C,DIR JC Output2 mov P1, a rl a Acall Delay djnz r5, loop1 Sjmp Output1

端口扫描实验报告

网络端口扫描实验报告 一、网络端口扫描简介 TCP/IP协议在网络层是无连接的,而“端口”,就已经到了传输层。端口便是计算机与外部通信的途径。一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。进行扫描的方法很多,可以是手工进行扫描,也可以用端口扫描软件进行。在手工进行扫描时,需要熟悉各种命令,对命令执行后的输析出进行分,效率较低。用扫描软件进行扫描时,许多扫描器软件都有分析数据的功能。通过端口扫描,可以得到许多有用的信息,从而发现系统的安全漏洞。扫描工具根据作用的环境不同可分为:网络漏洞扫描工具和主机漏洞扫描工具。前者指通过网络检测远程目标网络和主机系统所存在漏洞的扫描工具。后者指在本机运行的检测本地系统安全漏洞的扫描工具。本实验主要针对前者。 端口是TCP协议中定义的,TCP协议通过套接字(socket)建立起两台计算机之间的网络连接。它采用【IP地址:端口号】形式定义,通过套接字中不同的端口号来区别同一台计算机上开启的不同TCP和UDP连接进程。端口号在0~~65535之间,低于1024的端口都有确切的定义,它们对应着因特网上常见的一些服务。这些常见的服务可以划分为使用TCP端口(面向连接如打电话)和使用UDP端口

(无连接如写信)两种。端口与服务进程一一对应,通过扫描开放的端口就可以判断计算机中正在运行的服务进程。 二、实验目的 1.了解熟悉MFC及的基本原理和方法。 2.加深对tcp的理解,学习端口扫描技术和,原理熟悉socket编程。 3.通过自己编程实现简单的IP端口扫描器模型。 4.通过端口扫描了解目标主机开放的端口和服务程序。 三、实验环境 Windows操作系统 VC++6.0开发环境 四、实验设计 实验原理 通过调用socket函数connect()连接到目标计算机上,完成一次完整的三次握手过程,如果端口处于侦听状态,那么connect()就可以成功返回,否则这个端口不可用,即没有提供服务。 实验内容 1. 设计实现端口扫描器 2. IP地址、端口范围可以用户输入。 3. 要求有有好的可视化操作界面。 实验步骤: 1、用户界面:使用vc6.0里的MFC来开发用户界面 2、端口扫描:使用socket函数中的connect()连接计算机来判定目标计算机是否开放了要测试的端口 五、代码实现 #include #include #pragma comment(lib,"wsock32.lib") #define ZERO (fd_set *)0 int maxth, scanok, scannum; int portip, hoststart, hoststop, startport, endport; long searchnum, searched; void usage(char *); void playx(int); void setip2(char *); void customport(char *, char *, char *); void portscannow(int); int main(int argc, char *argv[]) { WSADATA wsadata; system("cls.exe"); printf("\r\n============== 命令行端口扫描器PortScanner V1.0 ==============");

汇编语言——输入输出程序设计实验

实验四输入/输出实验(2学时综合性实验) 1.实验目的 (1) 掌握输入输出程序设计的概念和方法。 (2) 了解PC机外围芯片8259的功能。 (3)学习如何在PC机上编写具有输入输出功能的程序,包括8259芯片的使用方法。 2.实验说明 本实验要求自行编写一个显示器输出处理程序,它可以完成内存中保存的一串字符在屏幕显示, 因此本实验既属于输入输出实验,也属于中断实验。 3.实验内容 编写一个显示器输出处理中断程序(名为NEW09),实现DOS 21H中断的9号功能,在屏幕上输出内存缓冲区BUF中以”$”结束的一串字符串。要求:缓冲区的偏移地址采用DX寄存器进行传递。 4.实验准备 (1) 预习输入输出程序设计的特点和方法。 (2) 仔细阅读参考程序,弄清外围芯片接口初始化的意义和方法。 5.实验步骤 (1) 建立源文件,并通过汇编和连接,产生可执行文件。 (2) 运行程序,观察常规字符键及功能键按下时程序的反应, DATAS SEGMENT buf db'li hongbin','$';此处输入数据段代码 DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS

main proc far START: mov al,68h mov ah,35h int 21h push es push bx push ds mov bx,offset buf mov dx,offset new09 mov ax,seg new09 mov ds,ax MOV AX,DATAS MOV DS,AX pop ds pop bx pop es sti mov al,68h mov ah,25h int 21h main endp

实验报告-网络扫描与监听

信息安全实验报告 学号: 学生姓名: 班级:

实验一网络扫描与监听 一、实验目的 网络扫描是对整个目标网络或单台主机进行全面、快速、准确的获取信息的必要手段。通过网络扫描发现对方,获取对方的信息是进行网络攻防的前提。该实验使学生了解网络扫描的内容,通过主机漏洞扫描发现目标主机存在的漏洞,通过端口扫描发现目标主机的开放端口和服务,通过操作系统类型扫描判断目标主机的操作系统类型。 通过该实验,了解网络扫描的作用,掌握主机漏洞扫描、端口扫描、操作系统类型扫描软件的使用的方法,能够通过网络扫描发现对方的信息和是否存在漏洞。要求能够综合使用以上的方法来获取目标主机的信息。 而网络监听可以获知被监听用户的敏感信息。通过实验使学生了解网络监听的实现原理,掌握网络监听软件的使用方法,以及对网络中可能存在的嗅探结点进行判断的原理。掌握网络监听工具的安装、使用,能够发现监听数据中的有价值信息,了解网络中是否存在嗅探结点的判断方法及其使用。 二、实验要求 基本要求了解网络扫描的作用,掌握主机漏洞扫描、端口扫描、操作系统类型扫描软件的使用的方法,能够通过网络扫描发现对方的信息和是否存在漏洞。掌握网络监听工具的安装、使用,能够发现监听数据中的有价值信息等。提高要求能够对网络中可能存在的嗅探结点进行判断的方法及工具使用等。 三、实验步骤 1)扫描软件X-Scan 和Nmap 以及WinPcap 驱动安装包并安装。 2)打开X-Scan,如下图所示。 3)点击“设置”->“扫描参数”,弹出扫描参数设置对话框,在“指定IP 范围”输入被扫描的IP 地址或地址范围。在“全局设置”的“扫描模块”设置对话框中选择需要检测的模块。其他可以使用默认的设置,也可以根据实际需要进行选择。最后点击“确定”回到主界面。

C语言程序设计重点必考实验题

C语言程序设计实验36题 邓作杰编 简单程序设计与基本数据处理 1 显示短句 在屏幕上显示一个短句“Programming in C is fun!” 2 求两个数的和与差 输入整数a 和b,计算并输出a、b 的和与差。 3 求平方根 输入1 个实数x,计算并输出其平方根(保留1 位小数) 4 华氏温度转换为摄氏温度 输入华氏温度f,计算并输出相应的摄氏温度c(保留2 位小数)。c = 5/9(f-32). 5 大写字母转换成小写字母 输入一个大写英文字母,输出相应的小写字母。 6编写摄氏温度、华氏温度转换程序。 从键盘输入一个摄氏温度,屏幕就显示对应的华氏温度,输出取两位小数。转换公式:F=(C+32)×9/5 。

分支结构 7 判断数的符号 输入整数x,若x 大于0,y=1;若x 等于0,y=0;否则,y=-1,最后输出y。 8 计算个人所得税 输入一个职工的月薪salary,输出应交的个人所得税tax(保留2 位小数)。 tax = rate * (salary-850) 当salary <= 850 时,rate = 0; 当850 < salary <= 1350 时,rate = 5; 当1350 < salary <= 2850 时,rate = 10; 当2850 < salary <= 5850 时,rate = 15; 当5850 < salary 时,rate = 20; 9、试编程判断输入的正整数是否既是5又是7的正倍数。若是,则输出yes;否则输出no。

循环结构 10.是求1 -100之间的所有除5余2的数之和。 11.所谓回文数是从左往右和从右往左读起来都一样的数字,如121是一个回文数,计算从1881开始到4000年为止,共有多少个年号是回文年号? 12.是求1-5000之间的能被7整除的前若干个偶数之和,当和大于600时程序退出,请将运行结果。 13.编程序求出1~100所有整数的平方和并输出结果。 14.一个数如果刚好与小于它的所有因子之和相等,则称该数为一个“完数”,如:6=1+2+3,则6就是一个完数。求出800以内的所有完数之和。 15.所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121是一个回文数。编写程序,求出300—800的范围内所有回文数的和。 16.有36个学生一起买小吃,共花钱120元,其中每个大学生花4元,每个中学生花2元,每个小学生花1元,问大、中、小学生的人数分配共有多少种不同的解(去掉某类学生为0的解)? 17. 求1至100之间的奇数和 18.输出2至1000之间在的质数。 19.输入一个3位的正整数,输出其各位上的数字。 20.对15个数进行排序,按从小到大的顺序输出。 21.一个数除了能被1和它本身整除之外,不能被其它整数整除,该数称为素数。求出1000-5000之间素数的和。 22.求[600,900]之间素数的个数。

相关文档
最新文档