文档库 最新最全的文档下载
当前位置:文档库 › 第一次数传指令试验

第一次数传指令试验

第一次数传指令试验
第一次数传指令试验

指令系统和汇编语言程序设计实验

本章实验主要包括指令系统和汇编语言程序设计两部分。采用软件模拟调试的方法,目的在于通过这些实验可以使学生巩固所学知识,加深对MCS-51单片机内部结构、指令系统的理解,更进一步掌握汇编语言程序设计的方法和技巧。

实验操作说明

Keil 软件调试方式分为:软件仿真方式和硬件调试两种。

软件仿真实验上机操作步骤:

1、进入Keil,点击桌面上“Keil μVersion 3”图标,进入Keil系统窗口;

2、新建工程:

1)打开“工程”菜单中的新建,在弹出的对话框中,键入自己定义的工程名;

2)在进一步打开的对话框中,选择CPU的类型,为Intel公司的8032AH,确定;

3)存入C:\keil 文件夹中。(机房,安装在C盘,改为C:\keil)

3、打开“视图”菜单中的“工程窗口”;

4、在“工程窗口”中,右击“目标1”,为工程设置参数;

1)在弹出的快捷菜单中选择“为目标“目标1”设置选项”;

2)在弹出的对话框中选择“项目”选项卡,设置时钟为“12Mhz”;

3)选择“调试”选项卡,在单选框选择“软件仿真方式”;

4)确定,即完成了“软件仿真方式”的设置。

5、新建文件

1)打开“文件”菜单,选择“新建”;

2)系统打开一个文本窗口,你可在窗口的编辑区输入要调试的汇编语言源程序;

3)存盘,命名文件名和扩展名,文件名任起,扩展名必须是.asm,存入C:\keil 文件夹中(在大机房,安装在C盘,改为C:\keil);例如:a.asm。

6、将刚建的新文件添入当前的工程中

1)在“工程窗口”中,“目标1”的+号处打开,显示“源代码组1”;

2)右击“源代码组1”,在快捷菜单中选择“为“源代码组1”添加文件”,弹出一个对话框;

3)在对话框中选择“文件类型”为*.*;

4) 选择文件所在路径,同时找到刚键入的a.asm文件,点击“add”按钮,然后点击“close”按钮;

5) 在“工程窗口”点击“源代码组1”左侧的+号,显示添加的a.asm文件,添加成功。

7、汇编

1)在“工程窗口”点击“源代码组1”的a.asm文件;

2)打开“a.asm”文件编辑窗口;

3)点击工具按钮中的“重建所有的目标文件”,进行汇编;

4)在“输出窗口”显示汇编是否有错,无错,进入调试;

有错,在编辑窗口修改程序,改后,再次汇编,直至无错后进入调试;

8、调试程序

1)点击“开始/停止调试”按钮,进入调试界面;

2)在程序窗口中有一个黄箭头指向程序的第一条可执行指令的开头;

3)选择调试方式进行调试;

①在“调试”菜单中选择:跟踪、单步、运行、断点等方式;

②或按单步或跟踪命令按钮,按一次单步,执行一条指令,pc指针指向下一条要被执行的指令;

③检查运行结果

Ⅰ打开“视图”菜单,选择“存储器窗口”,弹出存储器对话框;

Ⅱ在存储器对话框的下方选择memory1在地址栏中键入“C:0X0000”回车,建立程序存储器的观察窗口;

Ⅲ选择memory2在地址栏中键入“D:0X00”回车,建立内部数据存储器的观察窗口;

Ⅳ选择memory3在地址栏中键入“X:0X0000”回车,建立外部数据存储器的观察窗口;

Ⅴ在“project workspace”窗口中观察r0-r7,a,pc,dptr,psw,要观察各个标志位,打开psw左侧的+号;

9、设置PC指针

当程序的首地址不是0000H时,汇编结束后,PC指针仍然指向0000H的地方,在调试程序前,一定要将PC设置到你的程序首地址处,方法为:

1)将光标移到程序的第一条指令处,击鼠标右键;

2)在快捷菜单中选择“Set Program Counter”命令,PC指针即可指向程序的第一条指令。指令系统实验

实验一熟悉键盘操作及数传指令编程设计

实验目的

熟悉软件模拟调试的环境及键盘操作。

掌握汇编语言程序设计的方法,加深对指令的理解。

学会软件模拟调试和察看修改观察项的方法。

实验内容

印证数据传送指令的功能、寻址方式以及PC指针、SP指针、DPTR指针、Ri指针分别对代码段、堆栈段、外扩数据存储器段、位寻址区等不同存储器的访问方式。

三、实验步骤

进入调试软件环境,输入源程序;

汇编源程序;

用单步方式运行程序;

检查并记录各寄存器和存储单元内容的变化。

四、程序清单

内部RAM数据传送(MOV指令)

1)寄存器寻址与立即寻址,需要查看的数据有A、PSW和不同寄存器区的Rn等单元的内容。ORG 0000H

AJMP 0050H

ORG 0050H

MAIN: MOV PSW,#00H ;RS1=0,RS0=0 0组寄存器

MOV R0,#30H

MOV A,R0

MOV R6,A

SETB RS1

SETB RS0 ; RS1=1,RS0=1 3组寄存器

MOV R0,#30H

MOV A,R0

MOV R6,A

MOV PSW,#10H ;RS1=1,RS0=0 2组寄存器

MOV R0,#30H

MOV A,R0

MOV R6,A

CLR RS1

SETB RS0 ;RS1=0,RS0=1 1组寄存器

MOV R0,#30H

MOV A,R0

MOV R6,A

SJMP $

END

2) 直接寻址,需查看30H、31H、32H、40H、ACC、PSW、02H等单元的内容。

ORG 0000H

AJMP 0060H

ORG 0060H

MAIN: MOV 30H,#45H

MOV 31H,#46H

MOV 02H,31H

MOV 0E0H,30H

MOV 32H,ACC

MOV ACC,PSW

MOV 40H,ACC

SJMP $

END

3)寄存器间接寻址,需查看@R0、RO等的内容。

ORG 0000H

AJMP 0070H

ORG 0070H

MAIN:MOV 30H,#66H

MOV R0,#30H

MOV @R0,#30H

INC R0

MOV @R0,#31H

SJMP $

END

外部程序存储器数据传送(MOVC指令)

根据A中数据查外部程序存储器单元2000H~200FH单元中的字形码,依次存入内部RAM以30H开始的单元。

ORG 0000H

AJMP 0080H

ORG 0080H

MAIN:MOV R0,#30H

MOV R2,#08H

MOV R3, #00H

LOOP: MOV A,R3

MOV B,#02H

ADD A,B

MOV DPTR,#2000H

MOVC A,@A+DPTR

MOV @R0,A

INC R0

INC R3

DJNZ R2,LOOP

SJMP $

ORG 2000H

TABL: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

DB 88H,83H,0C6H,0A1H,086H,08EH

END

堆栈操作(PUSH和POP指令)

需要查看的数据有50H、51H、A及SP指针和堆栈区中数据随PUSH和POP指令执行后的变化情况和数据的存放次序等。

1)可用于保护现场和恢复现场的程序

ORG 0000H

AJMP 0090H

ORG 0090H

MAIN:MOV SP,#5FH

MOV 50H,#3BH

MOV 51H,#2FH

MOV A,#12H

PUSH 50H

PUSH 51H

PUSH ACC

POP 0E0H

POP 51H

POP 50H

SJMP $

END

2)可用于数据交换的程序

ORG 0000H

AJMP OOA0H

ORG 00A0H

MAIN:MOV SP,#6FH

MOV 50H,#3BH

MOV 51H,#2FH

PUSH 50H

PUSH 51H

POP 50H

POP 51H

END

4.数据交换(SWAP、XCHD、XCH指令)

记录每条指令运行后的结果,从而加深对各种不同的交换指令的理解。

1)SWAP指令

ORG 0000H

AJMP 00B0H

ORG 00B0H

MAIN:MOV A,#58H

SWAP A

MOV 40H,A

SJMP $

END

2) XCHD 指令

ORG 0000H

AJMP 00C0H

ORG 00C0H

MAIN:MOV A,#30H

MOV R0,#30H

MOV @R0,#09H

XCHD A,@R0

MOV 41H,A

SJMP $

END

3)XCH 指令

ORG 0000H

AJMP 00D0H

ORG 00D0H

AMIN:MOV R0,#50H

MOV 50H,#1

MOV A,#89H

XCH A,50H

MOV R7,#3

XCH A,R7

XCH A,@R0

SJMP $

END

5. 外部数据存储器数据传送(MOVX指令)

将内部RAM中40H单元的内容送到外部数据存储器(或I/O口)3695H单元。DPTR 作指针

ORG 0000H

AJMP 00F0H

ORG 00F0H

MAIN:MOV 40H,#99H

MOV DPTR,#3695H

MOVX @DPTR,A

SJMP $

END

Ri作指针

ORG 0000H

AJMP 0100H

ORG 0100H

MAIN:MOV 40H,#68H

MOV A,40H

MOV P2,#36H

MOV R0,#95H

MOVX @R0,A

SJMP $

END

思考题

寄存器寻址与寄存器间接寻址有什么区别?PC指针与SP指针有什么区别?

DPTR指针与Ri(R0,R1)指针有什么区别?立即寻址与直接寻址有什么区别?

同一个特殊功能寄存器不同表达形式。

三种不同的交换指令的区别是什么?MOVX和MOVC指令的不同点。

fastcopy命令行参数解释

fastcopy命令行参数解释 2011-06-17 16:05 fastcopy是一款复制删除文件的工具,为什么要用它,因为他比系统的复制删除要快,特别是文件超多,超大的情况下. FASTCOPY可以在WINDOWS下使用,也可以在DOS下运行命令 下面是FASTCOPY命令行方式: fastcopy.exe [/参数] file1 file2 ... [/to=dest_dir] 基本参数: /cmd=(noexist_only|diff|update|sync|force_copy|move|delete) noexist_only 复制-如重名,则不复制 diff 复制-如重名,则公复制大小与时间不同的文件 update 复制-如重名,则复制较新的源文件 sync 同步-如重名,则复制大小与时间不同的文件 force_copy 复制-覆盖重名文件 move 移动-覆盖重名文件并强行删除源文件 delete 删除-强行删除指定的文件与目录 /auto_close 拷贝结束后,自动关闭 /force_close 如果拷贝结束后,发生错误,也强行关闭 /open_window 显示Fastcopy窗口界面 /estimate 预测拷贝完成时间 /no_exec 对Fastcopy窗口界面设置参数,但是不执行 /no_confirm_del 当用/delete参数时,不显示确认界面 /error_stop 发生错误时中止动作(在/error_stop=FALSE抑制)

/bufsize=N(MB) 用MB单位来指定缓冲器大小 /speed=(full|autoslow|9-1(90%-10%)|suspend) 速度限制 /log 输出记录文件(fastcopy.log) (在/log=FALSE抑制) /skip_empty_dir 启用过滤,不拷贝空文件夹(在/skip_empty_dir=FALSE抑制) /job=任务名称执行指定的任务 /force_start 在其他的FastCopy拷贝,并且正执行的时候,执行立即也(在/force_start=FALSE抑制) /disk_mode=(auto|same|diff) 指定自动/恒等性/其他HDD方式。(债务不履行声明:) auto) /include="..." 指定Include过滤器 /exclude="..." 指定Exclude过滤器 /overwrite_del 在删除文件之前,删掉方式时,重新取名给重复&,使复原无效(在/overwrite_del=FALSE抑制) /acl 拷贝存取支配清单(ACL)(只NTFS有效)(在/acl=FALSE抑制) /stream 拷贝副其次线流(只NTFS有效)(在/stream=FALSE抑制) /junction 复制junction·mount point(不是属下)junction·mount point自己(/junction=FALSE 拷贝属下) /symlink 用象征性连接(而不是本质)拷贝象征性连接其本身(在/symlink=FALSE 拷贝本质) [/to=dest_dir] 目标磁盘 fastcopy.exe [/options] file1 file2 ... [/to=dest_dir] Please use space character(' ') as separator(not semicolon). If filename contains space character, please enclose with dobule quotation marks. Ex) fastopy.exe C:\Windows "C:\Program Files" /to="D:\Backup Folder\" 使用"做为分隔符 c:\Progra~1\FastCopy\FastCopy.exe /cmd=sync /auto_close /open_window "\\ztsv-xs\e\网络游戏\永恒之塔" /to="e:\games\online\"

数据库系统概论(王珊第五版)数据库实验1

实验1 SQL SERVER 2008环境 一、实验目的 1.掌握服务管理器的启动和停止方法; 2.掌握SQL Server Management Studio对象资源管理器的使用方法; 3.掌握注册服务器的步骤。 4.掌握E-R图在计算机中的画法。 二、实验学时 2学时 三、实验要求 1.了解SQL Server 2008的安装过程。 2.熟练掌握SQL Server2008数据库服务器的启动方法。 3.熟练掌握SQL Server2008数据库服务器的登录方法和注册方法。 4.掌握E-R图的画法,学会使用Visio画出标准的E-R图。 5.独立完成实验内容,并提交书面实验报告。 四、实验内容 1.了解并熟悉SQL Server 2008的安装方法。 2.登录SQL Server 2008服务器,主要包括启动、暂停、停止和重新启动服务器,登录SQL Server Management Studio等操作; 3. 掌握SQL Server Management Studio对象资源管理器的使用方法; 4.注册SQL Server 2008服务器。 5. 有一个图书管理系统需要构建E-R图,要求如下: (1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号唯一标识。 (2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。 (3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息向相应出版社增购有关书籍。约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。 将有关实体型及其联系画出E-R模型图画在实验报告册中。

基本操作指令

日常工作流程 ?登录 ?查询 ?信息查询及辅助功能 ?建立PNR ?特殊服务 SSR ?PNR提取和修改 ?公布运价的查询 ?BSP打票 ?国际运价查询 ?电子客票常用指令 ?Q信箱处理 ?手工输入API信息 登录 1.进入系统>$$OPEN TIPC3 2.输入工作号>SI:工作号/密码 3.查看PID状态>DA 4.退出系统>SO 5.修改密码>AN:旧密码/新密码 6.随时查看SIGN-IN信息>SIIF: 7.指令使用帮助>HELP: 指令 8.屏幕向上一页>PB 9.屏幕向下一页>PN 10.清屏指令>CP 11.重复显示当前页>PG 12.一屏显示所有内容>PN1 返回目录 查询 1. 航班座位可利用显示>AV: H/城市对/日期/时间/ 航空公司代码(或GDS代码) 2. 最早有座位航班查询>FV: 城市对/日期/起飞时间/座位数/航空公司代码(或GDS代码)/经停标志 / 舱位 3. 航班飞行周期的查询>SK: 城市对/日期/时间/航空公司代码/ 舱位 4. 航班经停点和起降时间的显示指令>FF: 航班号/日期 5. 指定日期的航段上的航班详细信息显示>DSG:C/航班号/座位等级/日期/航段 或 RT之后,>DSG: 航班序号 返回目录

信息查询及辅助功能 一、24小时北京天气预报 WF >WF 城市三字代码 二、机场转机信息查询 DSM >DSM: PEK 三、机场、国家、航空公司代码查询 CNTD/CD 1)查询城市三字代码>CNTD T/BEIJING 2)查询城市名称>CD PEK 3)查询一个国家所有城市>CNTD A/CN 4)查询国家全称>CNTD C/CN 5)查询国家两字码>CNTD N/CHINA 6)查询航空公司信息>CNTD D/CA 7)查询航空公司两字代码>CNTD M/AIR CHINA 四、计算CO 1)四则运算>CO 100+2 2)计算北京和巴黎的时差>CO T/PEKCDG 3)显示巴黎10月1日0点的GMT标准时间>CO T/CDG/1OCT/0000 4)英里换算成公里>CO K/英里数 5)公里换算成英里>CO M/公里数 五、日期查询DATE 1)显示当前日期和星期几>DATE 2)显示10天,90天后的日期>DATE 10/90 3)显示2004年1月1日的前2天,及后20天的日期>DATE 1JAN04/-2/20 六、时间查询TIME 1)显示当前时间>TIME 2)北京时间2004年1月1日零点的巴黎时间>TIME 1JAN04/0000/CDG 3)纽约时间2004年1月1日零点的北京、巴黎时间>TIME NYC/1JAN/0000/PEK/CDG 七、长度、重量、温度换算 CV 1)100公里换算成英里>CV 100KM 2)100英里换算成公里>CV 100MI 3)摄氏35度转化为华氏度>CV 35C 4)华氏95度转化为摄氏度>CV 95F 5)10英镑转化为公斤>CV 10LB 6)10公斤转化为英镑-磅>CV 10KG 八、查询中文信息YI 1)显示所有静态信息的目录>YI 2)显示不含副标题的公告>YI标题 3)显示有副标题的公告>YI I/某标题 九、旅游信息查询TIM 1)查询签证信息>TIM TIFV 2)查询健康检疫信息>TIM TIFH 3)同时查询签证、健康检疫信息>TIM TIFA 4)查询与出入境有关的信息>TIM TIDFT/城市/章节/小标题/页码 5)显示TIM帮助功能>TIM TIHELP 6)显示TIM中有关规则>TIM TIRULES 7)显示综合旅游信息新闻>TIM TINEWS

USS指令说明

USS-INT指令详解 EN:初始化程序USS_INIT 只需在程序中执行一个周期就能改变通信口的功能,以及进行其他一些必要的初始设置,因此可以使用SM0.1 或者沿触发的接点调用USS_INIT 指令; Mode:模式选择,执行USS_INIT 时,Mode 的状态决定是否在Port 0 上使用USS 通信功能; = 1 设置Port 0 为USS 通信协议并进行相关初始化 0 恢复Port 0 为PPI 从站模式 Baud:USS 通信波特率。此参数要和变频器的参数设置一致; = 2400 2400 bit/s 4800 4800 bit/s 9600 9600 bit/s 19200 19200 bit/s 38400 38400 bit/s 57600 57600 bit/s 115200 115200 bit/s Active:此参数决定网络上的哪些USS 从站在通信中有效。详见下面的说明;Done:初始化完成标志 Error:初始化错误代码 孤陋寡闻,我从来没看过有DRV-CTRL这条指令 USS-CTRL指令详解 EN:使用SM0.0 使能USS_CTRL 指令 RUN:驱动装置的启动/停止控制 = 0 停止 1 运行 此停车是按照驱动装置中设置的斜坡减速指电机停止

OFF2:停车信号2。此信号为“1"时,驱动装置将封锁主回路输出,电机自由停车 OFF3:停车信号3。此信号为”1"时,驱动装置将快速停车 F_ACK:故障确认。当驱动装置发生故障后,将通过状态字向USS 主站报告;如果造成故障的原因排除,可以使用此输入端清除驱动装置的报警状态,即复位。注意这是针对驱动装置的操作。 DIR:电机运转方向控制。其“0/1”状态决定运行方向 Drive:驱动装置在USS 网络上的站号。从站必须先在初始化时激活才能进行控制 Type:向USS_CTRL 功能块指示驱动装置类型 = 0 MM 3 系列,或更早的产品 1 MM 4 系列,SINAMICS G 110 Speed_SP:速度设定值。速度设定值必须是一个实数,给出的数值是变频器的频率范围百分比还是绝对的频率值取决于变频器中的参数设置(如MM 440 的P2009) Resp_R:从站应答确认信号。主站从USS 从站收到有效的数据后,此位将为“1"一个程序扫描周期,表明以下的所有数据都是最新的 Error:错误代码。0 = 无出错。其他错误代码请参考 Status:驱动装置的状态字。此状态字直接来自驱动装置的状态字,表示了当时的实际运行状态 详细的状态字信息意义请参考相应的驱动装置手册。 Speed:驱动装置返回的实际运转速度值,实数。是否频率值跟随设定值的规格化设定 Run_EN:运行模式反馈,表示驱动装置是运行(为1)还是停止(为0) D_Dir:指示驱动装置的运转方向,反馈信号 Inhibit:驱动装置禁止状态指示(0 - 未禁止,1 - 禁止状态)。禁止状态下驱

数据库原理实验

1 实验目的与要求 (1)掌握数据库的建立、删除和修改操作。 (2)理解基本表之间的关系,掌握表结构的建立、修改和删除操作,创建模式导航图。 2 实验内容与结果 实验内容: (1) 创建一个BookDB数据库,要求至少一个数据文件和一个日志文件。 (2) 创建图书管理相关4张关系表,表结构如图3-1至图3-4所示。 图3-1图书分类表BookClass 图3-2 图书表Book 图3-3读者表Reader 图3-4 借阅表Borrow

(3) 表结构的修改,要求: ①修改图书表结构,要求出版社名称和入库时间不允许为空。 ②修改读者表结构,要求读者身份证号不允许为空。 实验结果如下: 创建数据库: CREATE DATABASE BookDB48 ON PRIMARY (NAME='BookDB', FILENAME='C:\数据库文件\', SIZE=3, MAXSIZE=20, FILEGROWTH=1 ) LOG ON ( NAME='BookDB_LOG', FILENAME='C:\数据库文件\', SIZE=3, MAXSIZE=20, FILEGROWTH=1) 脚本如下:(创建的四个表) CREATE TABLE BookClass48( classNo char(3)NOT NULL,--图书分类号 className varchar(20)NOT NULL,--图书分类名称 CONSTRAINT BookClass48PK PRIMARY KEY(classNo) ) CREATE TABLE Book48( bookNo char(10)NOT NULL,--图书编号 classNo char(3)NOT NULL,--图书分类号 bookName varchar(40)NOT NULL,--图书名称 authorName varchar(8)NOT NULL,--作者名字 publishingName varchar(20)NULL,--出版社名称 publishingNo char(17)NULL,--出版社编号 publishingDate datetime NULL,--出版社日期 price numeric(7,2)NULL,--单价 shopDate datetime NULL,--入库时间 shopNum datetime NULL,--入库数量 CONSTRAINT Book48PK PRIMARY KEY(bookNo), CONSTRAINT Book48FK FOREIGN KEY(classNo)REFERENCES BookClass48(classNo) )

库卡工业机器人运动指令入门知识学员必备)

库卡工业机器人运动指令的入门知识问?学完了KUKA机器人的运动指令后,可以了解到哪些? 答(1)通过对机器人几种基本运动指令的学习,能够熟练掌握机器人各种轨迹运动的相关编程操作 (2)通过学习PTP运动指令的添加方法,能够掌握机器人的简单编程 机器人的运动方式: 机器人在程序控制下的运动要求编制一个运动指令,有不同的运动方式供运动指令的编辑使用,通过制定的运动方式和运动指令,机器人才会知道如何进行运动,机器人的运动方式有以下几种: (1)按轴坐标的运动(PTP:Point-toPoint,即点到点) (2)沿轨迹的运动:LIN直线运动和CIRC圆周运动 (3)样条运动:SPLINE运动 点到点运动 PTP运动是机器人沿最快的轨道将TCP从起始点引至目标点,这个移动路线不一定是直线,因为机器人轴进行回转运动,所以曲线轨道比直线轨道运动更快。此轨迹无法精确预知,所以在调试及试运行时,应该在阻挡物体附近降低速度来测试机器人的移动特性。线性运动

线性运动是机器人沿一条直线以定义的速度将TCP引至目标点。在线性移动过程中,机器人转轴之间进行配合,是工具或工件参照点沿着一条通往目标点的直线移动,在这个过程中,工具本身的取向按照程序设定的取向变化。 圆周运动 圆周运动是机器人沿圆形轨道以定义的速度将TCP移动至目标点。圆形轨道是通过起点、辅助点和目标点定义的,起始点是上一条运动指令以精确定位方式抵达的目标点,辅助点是圆周所经历的中间点。在机器人移动过程中,工具尖端取向的变化顺应与持续的移动轨迹。 样条运动 样条运动是一种尤其适用于复杂曲线轨迹的运动方式,这种轨迹原则上也可以通过LIN 运动和CIRC运动生成,但是相比下样条运动更具有优势。 创建以优化节拍时间的运动(轴运动) 1?PTP运动 PTP运动方式是时间最快,也是最优化的移动方式。在KPL程序中,机器人的第一个指令必须是PTP或SPTP,因为机器人控制系统仅在PTP或SPTP运动时才会考虑编程设置的状态和转角方向值,以便定义一个唯一的起始位置。 2?轨迹逼近 为了加速运动过程,控制器可以CONT标示的运动指令进行轨迹逼近,轨迹逼近意味着将不精确到达点坐标,只是逼近点坐标,事先便离开精确保持轮廓的轨迹。

数据库第一次实验报告

《数据库系统概论》实验报告 题目:实验一 数据库和表的基本操作和约束条件姓名班级学号日期 刘凯10031201 2012302606 2014.10 一、实验内容、步骤以及结果 1.利用图形用户界面创建,备份,删除和还原数据库和数据表 创建初始数据库信息如下 备份数据库

删除表 2.利用SQL语言创建和删除数据库和数据表创建数据库 CREATE DATABASE studentdata ( FILENAME = 'D:\studentdata.mdf' , SIZE = 20480KB , MAXSIZE = 102400KB , FILEGROWTH = 10240KB ) LOG ON ( FILENAME = 'D:\studentdata_1.ldf' , SIZE = 2048KB , MAXSIZE = 5120KB , FILEGROWTH = 1024KB ) GO 创建三张表

CREATE TABLE dbo.C( Cno char(4)PRIMARY KEY , Cname char(40) , Cpno int , Ccredit int,) GO CREATE TABLE dbo.S( Sno char(4)PRIMARY KEY , Sname char(40) , Ssex char(4) , Sbirth] char(40) , Sdept char(4) , ) CREATE TABLE [dbo].[SC]( Sno char(4) , Cno char(4) , Grade int ) GO 备份数据库 Backup database studentdata to disk = ‘D:\studentdata.db.bak’ 删除数据库 Deleta database studentdata.db 还原数据库 Restore database studentdata from disk = ‘D:\studentdata.db.bak’ 3.利用图形用户界面对上题中创建的Student库的S表中,增加以下的约束和索引 主键 Sname唯一键

三菱PLC基本指令

PLC 基本指令 FX 2N 系列的PLC 共有基本指令27条,本章主要介绍这些基本指令的功能。并掌握由梯形图转化成指令表,指令表转化成梯形图的方法;然后通过一些编程的示例理解基本指令的应用和一些编程的规则。 3.1 基本指令 3.1.1 LD 、LDI 、OUT 指令 LD ,取指令,表示每一行程序中第一个与母线相连的常开触点。另外,与后面讲到的ANB 、ORB 指令组合,在分支起点处也可使用。 LDI ,取反指令,与 LD 的用法相同,只是LDI 是对常闭触点。 LD 、LDI 两条指令的目标元件是X 、Y 、M 、S 、T 、C 。 OUT ,线圈驱动指令。是对输出继电器(Y )、辅助继电器(M )、状态器(S )、定时器(T )、计数器(C )的线圈驱动,对输入继电器(X )不能使用。 图3-1 LD、LDI、OUT指令的使用说明 8 OUT Y1 7 LD T0 SP K204 OUT T03 OUT M02 LDI X11 OUT Y00 LD X0a) 梯形图 T0 Y1 T0 K20 X1 X0Y0M0步号 程序 驱动定时器线圈b) 指令表 SP为空格键 定时器设定值 目标元件 指令 驱动线圈与母线相连 当OUT 指令驱动的目标元件是定时器T 和计数器C 时,如设定值是常数K 时,则K 的设定范围如表3-1所示:程序步序号是自动生成,在输入程序时不用输入程序步号,不同的指令,程序步号是有所不同的。 表 3-1 K 值设定范围:

3.1.2 触点串联指令AND 、ANI 用于单个常开接点的串联。 ANI ,与非指令。用于单个常闭接点的串联。 AND 与ANI 都是一个程序步指令,串联触点的个数没有限制,该指令可以多次重复使用。使用说明如图3-2所示。这两条指令的目标元件为X 、Y 、M 、S 、T 、C 。 OUT 指令后,通过接点对其他线圈使用OUT 指令称为纵接输出或连续输出,如图3-2 中的OUT Y3。这种连续输出如果顺序不错,可以多次重复。但是如果驱动顺序换成图3-3的形式,则必须用后述的MPS 指令和MPR 指令。 3.1.3 接点并联指令OR 、ORI OR ,或指令。 ORI ,或非指令。 这两条指令都用于单个的常开触点并联,操作的对象是X 、Y 、M 、S 、T 、C 。OR 是用于常开触点,ORI 用于常闭触点,并联的次数可以是无限次。使用说明如图3-4所示。 并联连接 并联连接 0 LD X4Y5 X5图3-4 OR、ORI使用说明 a) 梯形图 X7 M110 M103Y5M102OR OR ORI X10OR M103 b)指令表 9 OUT M103 8 OR M1107 ANI X106 OR M103 AND X74 LD Y53 OUT Y52 ORI M1021 OR X55X4 图3-3 不推荐使用 MPP X3 X4Y3Y2 MPS X5 a)梯形图 X5 X1X3 X4 X2 图3-2 AND、ANI指令使用说明Y3 Y2Y1 6 AND X5b)语句表 7 OUT Y35 OUT Y23 ANI X42 LD X31 AND X20 LD X1 触联常闭触点 串联常开触点

数据库实验报告(实验一)

沈阳工程学院 学生实验报告 (课程名称:数据库原理及应用) 实验题目:数据库模式设计 班级软件本111学号2011417104姓名吴月芬 日期2012.10.16 地点F座606 指导教师孙宪丽祝世东

一、实验目的 熟练掌握采用SQL命令建立数据库表、索引和视图的方法。 二、实验环境 Oracle10g数据库系统。 三、实验内容与要求 (一)实验内容 1.建立学生数据库模式 学生表:student (sno学号,sname姓名,ssex性别,sage年龄,sdept所在系) 其中: sno 长度为4的字符串,为主码; sname 长度为8的字符串; ssex 长度为2的字符串,其值只取男、女; sage 短整数,其值在0-150之间; sdept 长度为10的字符串。 2.建立课程数据库模式 课程表:course ( cno课程号,cname课程名,ccredit学分) 其中: cno 长度为4的字符串,为主码 cname 长度为10的字符串,不能为空,且不能有重复课程名; ccredit 短整数。 3.建立选课数据库模式。 选课表:sc (sno学号,cno课程号,grade成绩) 其中: sno 长度为4的字符串,和student表sno外键关联,且级联删除 cno 长度为4的字符串,course表cno外键关联,

grade 短整数,值或空或为0—100之间, (sno,cno) 联合作主码。 (二)实验要求 在Oracle10g的iSQLPlus中完成下列操作: (1)创建上述三个表。 (2)向Student 表增加"入学时间"列(列名为Scome,日期型)。 (3)将年龄的数据类型改为半字长整数。 (4)为Student中sname添加列级完整性约束,不能为空。 (5)删除Student中sname列级完整性约束。 (6)为SC建立按学号升序和课程号降序建立唯一索引. (7)在表student的sname字段建立一个升序索引。 (8)删除在表student的sname字段建立的索引。 (9)给student表增加一个地址(address)属性。 (10)给student表删除地址(address)属性。 (11)建立视图view1,要求有sno,sname,cname,grade四个字段。 (12)建立视图view2,要求有sno,ssex,sage三个字段。 四、实验过程及结果分析 (1)1)创建学生数据库模式,代码如下: create table student ( sno char(11) primary key, sname char(8), ssex char(2) check ssex in (‘男’,’女’), sage number check between 0 and 150, sdept char(10) );

库卡工业机器人运动指令入门知识 学员必备

库卡工业机器人运动指令的入门知识 问?学完了的运动指令后,可以了解到哪些? 答(1)通过对机器人几种基本运动指令的学习,能够熟练掌握机器人各种轨迹运动的相关编程操作 (2)通过学习PTP运动指令的添加方法,能够掌握机器人的简单编程 机器人的运动方式: 机器人在程序控制下的运动要求编制一个运动指令,有不同的运动方式供运动指令的编辑使用,通过制定的运动方式和运动指令,机器人才会知道如何进行运动,机器人的运动方式有以下几种: (1)按轴坐标的运动(PTP:Point-toPoint,即点到点) (2)沿轨迹的运动:LIN直线运动和CIRC圆周运动 (3)样条运动:SPLINE运动 点到点运动

PTP运动是机器人沿最快的轨道将TCP从起始点引至目标点,这个移动路线不一定是直线,因为机器人轴进行回转运动,所以曲线轨道比直线轨道运动更快。此轨迹无法精确预知,所以在调试及试运行时,应该在阻挡物体附近降低速度来测试机器人的移动特性。 线性运动

线性运动是机器人沿一条直线以定义的速度将TCP引至目标点。在线性移动过程中,机器人转轴之间进行配合,是工具或工件参照点沿着一条通往目标点的直线移动,在这个过程中,工具本身的取向按照程序设定的取向变化。 圆周运动 圆周运动是机器人沿圆形轨道以定义的速度将TCP移动至目标点。圆形轨道是通过起点、辅助点和目标点定义的,起始点是上一条运动指令以精确定位方式抵达的目标点,辅助点是圆周所经历的中间点。在机器人移动过程中,工具尖端取向的变化顺应与持续的移动轨迹。 样条运动

样条运动是一种尤其适用于复杂曲线轨迹的运动方式,这种轨迹原则上也可以通过LIN运动和CIRC运动生成,但是相比下样条运动更具有优势。 创建以优化节拍时间的运动(轴运动) 1?PTP运动 PTP运动方式是时间最快,也是最优化的移动方式。在KPL程序中,机器人的第一个指令必须是PTP或SPTP,因为机器人控制系统仅在PTP或SPTP运动时才会考虑编程设置的状态和转角方向值,以便定义一个唯一的起始位置。 2?轨迹逼近 为了加速运动过程,控制器可以CONT标示的运动指令进行轨迹逼近,轨迹逼近意味着将不精确到达点坐标,只是逼近点坐标,事先便离开精确保持轮廓的轨迹。 PTP运动的轨迹逼近是不可预见的,相比较点的精确暂停,轨迹逼近具有如下的优势: (1)由于这些点之间不再需要制动和加速,所以运动系统受到的磨损减少。(2)节拍时间得以优化,程序可以更快的运行。 创建PTP运动的操作步骤 (1)创建PTP运动的前提条件是机器人的运动方式已经设置为T1运行方式,并且已经选定机器人程序。

[推荐] stata基本操作汇总常用命令

[推荐] Stata基本操作汇总——常用命令 help和search都是查找帮助文件的命令,它们之间的 区别在于help用于查找精确的命令名,而search是模糊查找。 如果你知道某个命令的名字,并且想知道它的具体使用方法,只须在stata的命令行窗口中输入help空格加上这个名字。回车后结果屏幕上就会显示出这个命令的帮助文件的全部 内容。如果你想知道在stata下做某个估计或某种计算,而 不知道具体该如何实现,就需要用search命令了。使用的 方法和help类似,只须把准确的命令名改成某个关键词。回车后结果窗口会给出所有和这个关键词相关的帮助文件名 和链接列表。在列表中寻找最相关的内容,点击后在弹出的查看窗口中会给出相关的帮助文件。耐心寻找,反复实验,通常可以较快地找到你需要的内容.下面该正式处理数据了。我的处理数据经验是最好能用stata的do文件编辑器记下你做过的工作。因为很少有一项实证研究能够一次完成,所以,当你下次继续工作时。能够重复前面的工作是非常重要的。有时因为一些细小的不同,你会发现无法复制原先的结果了。这时如果有记录下以往工作的do文件将把你从地狱带到天堂。因为你不必一遍又一遍地试图重现做过的工作。在stata 窗口上部的工具栏中有个孤立的小按钮,把鼠标放上去会出

现“bring do-file editor to front”,点击它就会出现do文件编 辑器。 为了使do文件能够顺利工作,一般需要编辑do文件的“头”和“尾”。这里给出我使用的“头”和“尾”。capture clear (清空内存中的数据)capture log close (关闭所有 打开的日志文件)set more off (关闭more选项。如果打开该选项,那么结果分屏输出,即一次只输出一屏结果。你按空格键后再输出下一屏,直到全部输完。如果关闭则中间不停,一次全部输出。)set matsize 4000 (设置矩阵的最大阶数。我用的是不是太大了?)cd D: (进入数据所在的盘符和文件夹。和dos的命令行很相似。)log using (文件名).log,replace (打开日志文件,并更新。日志文件将记录下所有文件运行后给出的结果,如果你修改了文件内容,replace选项可以将其更新为最近运行的结果。)use (文件名),clear (打开数据文件。)(文件内容)log close (关闭日志文件。)exit,clear (退出并清空内存中的数据。) 实证工作中往往接触的是原始数据。这些数据没有经过整理,有一些错漏和不统一的地方。比如,对某个变量的缺失观察值,有时会用点,有时会用-9,-99等来表示。回归时如果 使用这些观察,往往得出非常错误的结果。还有,在不同的数据文件中,相同变量有时使用的变量名不同,会给合并数

数据库实验报告

西安邮电大学 (计算机学院) 课内实验报告 实验:数据库及数据库中表的建立实验 课程:数据库系统原理与应用 班级:经济学1601班 学号: 学生姓名:冯丹娜 任课教师:樊珊

SQL Server 2000管理工具的使用和创建数据库 一、实验目的 1.熟悉SQL Server 2000的环境。 2.掌握企业管理器的基本使用方法,对数据库及其对象有基本了解,了解对 SQL Server 2000进行配置的方法。 3.掌握查询分析器的基本使用方法以及在查询分析器中执行T-SQL 语句的方 法。 4.了解SQL Server 2000数据库的逻辑结构和物理结构。 5.学会在企业管理器中创建数据库及查看数据库属性。 6.学会使用T-SQL语句创建数据库。 二、实验内容 1.学会使用企业管理器和查询分析器管理工具。 2.使用企业管理器创建数据库。 创建一个教务管理数据库,名称为JWGL,数据文件的初始大小为20MB,文件增长方式为自动增长,文件增长增量设为5MB,文件的增长上限为500MB。日志文件的初始大小为10MB,文件增长增量设为1MB,文件的增长限制设为100MB。数据文件的逻辑文件名和物理文件名均采用默认值,分别为JWGL_data 和d:\Microsoft SQL Server\MSSQL\data\JWGL_data.mdf;事务日志文件的逻辑文件名和物理文件名也采用默认值,分别为JWGL_log和d:\Microsoft SQL Server\MSSQL\data\JWGL_log.ldf。 3.在查询分析器中使用T-SQL语句创建数据库。 创建一个名为Market的数据库(注意e盘下应存在sql_data目录)。CREATE DATABASE Market ON (NAME=Market_Data, FILENAME='e:\sql_data\Matket_Data.mdf', SIZE=10, MAAXSIZE=50, FILEGROWTH=10%) LOG ON (NAME=Market_Log, FILENAME='e:\sql_data\Market_Log.ldf', SIZE=5, MAXSIZE=15, FILEGROWTH=10%); 4.使用T_SQL语句或企业管理器创建一个图书借阅管理数据库,数据库名为 TSGL,数据文件和日志文件的初始大小、增长方式、文件的增长上限等均可采用默认值。 5.使用T-SQL语句或企业管理器创建第二章习题10的SPJ数据库,可以自行 定义文件大小、增长方式。 6.查看物理磁盘目录,理解并分析SQL Server 2000数据库的存储结构。 7.使用企业管理器查看数据库属性。 8.使用T-SQL语句或企业管理器对于(2)~(5)中建立的数据库进行修改和 删除操作,并进一步查看物理磁盘目录。

CAD基本操作命令

CAD基本操作命令 ?L, *LINE 直线 ML, *MLINE 多线(创建多条平行线) PL, *PLINE 多段线 PE, *PEDIT 编辑多段线 SPL, *SPLINE 样条曲线 SPE, *SPLINEDIT 编辑样条曲线 XL, *XLINE 构造线(创建无限长的线) A, *ARC 圆弧 C, *CIRCLE 圆 DO, *DONUT 圆环 EL, *ELLIPSE 椭圆 PO, *POINT 点 DCE, *DIMCENTER 中心标记 POL, *POLYGON 正多边形 REC, *RECTANG 矩形 REG, *REGION 面域 H, *BHA TCH 图案填充 BH, *BHA TCH 图案填充 -H, *HA TCH HE, *HA TCHEDIT 图案填充...(修改一个图案或渐变填充)SO, *SOLID 二维填充(创建实体填充的三角形和四边形)*revcloud 修订云线 *ellipse 椭圆弧 DI, *DIST 距离 ME, *MEASURE 定距等分 DIV, *DIVIDE 定数等分 DT, *TEXT 单行文字 T, *MTEXT 多行文字 -T, *-MTEXT 多行文字(命令行输入) MT, *MTEXT 多行文字 ED, *DDEDIT 编辑文字、标注文字、属性定义和特征控制框ST, *STYLE 文字样式 B, *BLOCK 创建块... -B, *-BLOCK 创建块...(命令行输入) I, *INSERT 插入块 -I, *-INSERT 插入块(命令行输入) W, *WBLOCK “写块”对话框(将对象或块写入新图形文件)

数据库实验

使用pl/sql编写存储过程访问数据库 (一)统计离散数学的成绩分布情况,即按照各分数段统计人数。 1)建立表Rank,其中第一列division显示成绩分段划分,第二列number显示的是成绩在该分数段的学生人数。 CREATE TABLE Rank( division CHAR(20), number INT); 2)编写存储过程。 CREATE OR REPLACE PROCEDURE statistic_mark(name CHAR(50)) //存储过程带有一个字符型参数值,便于统计不同科目的分数分布情况 AS DECLARE less60 INT := 0; //分为五个分数段,并置初始值为0 b60a70 INT := 0; b70a80 INT := 0; b80a90 INT := 0; more90 INT := 0; curcno CHAR(4); //设字符型变量curcno 存放输入的课程名称参数BEGIN SELECT cno INTO curcno //根据课程名称在Course 表中查询查询该课程号FROM Course WHERE cname = name; IF NOT FOUND THEN //如果不存在用户输入的课程名称,返回错误信息RAISE EXCEPTION '输入错误,没有该课程'; END IF; SELECT count(*) INTO less60 //查询分数低于60 分的学生人数 FROM s WHERE cno = curcno AND grade < 60; SELECT count(*) INTO b60a70 //查询分数在60 到70 之间的学生人数 FROM sc WHERE cno = curcno AND grade >= 60 AND grade < 70; SELECT count(*) INTO b70a80 //查询分数在70 到80 之间的学生人数 FROM sc WHERE cno = curcno AND grade >= 70 AND grade < 80; SELECT count(*) INTO b80a90 //查询分数在80 到90 之间的学生人数 FROM sc WHERE cno = curcno AND grade >= 80 AND grade < 90; SELECT count(*) INTO more90 //查询分数高于90 的学生人数 FROM sc WHERE cno = curcno AND grade >= 90; INSERT INTO Rank VALUES('[0,60)',less60);//向Rank中插入五条记录显示成绩分布情况

数据库实验操作题

实验三SQL语言用于数据库的建立和维护 实验目的 熟练掌握SQL语言建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。 实验内容 建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。 创建用于学生管理数据库,数据库名为XSGL,包含学生的基本信息,课程信息和选课信息。数据库XSGL包含下列3个表: (l)student:学生基本信息。 (2)course:课程信息表。 (3)sc:学生选课表。 各表的结构分别如表1、表2和表3所示。 表3 学生选课表:sc 一. 数据库的建立: (a)在SQLSERVER中,在查询分析器中使用T-SQL语句: CREATE DATABASE XSGL 二. 表的建立: 在SQL SERVER中查询分析器的编辑窗口中用下列SQL语句:

use XSGL Create table student (sno CHAR(5) primary key NOT NULL, sname CHAR(10) NULL, ssex CHAR(2) NULL, sage INT NULL, sdept CHAR(4) NULL) go Create table course (cno CHAR(2) primary key NOT NULL, cname CHAR(30) NULL, credit INT NULL, pcno C HAR(2) NULL) go Create table sc( sno CHAR(5), cno CHAR(2), grade INT NULL, primary key(sno,cno)) go 三. 表数据的添加: 在SQL SERVER中查询分析器的编辑窗口中使用下列SQL 语句插入数据: insert into student(sno,sname, s sex,sage,sdept) values('95001', '李勇', '男', 20, 'CS') insert into student(sno,sname, s sex,sage,sdept) values('95002', '刘晨', '女', 19, 'IS') insert into student(sno,sname, s sex,sage,sdept) values('95003', '王敏', '女', 18, 'MA') insert into student(sno,sname, s sex,sage,sdept) values('95004', '张立', '男', 19, 'IS') insert into student(sno,sname, s sex,sage,sdept) values('95005', '刘云', '女', 18, 'CS ') insert into course(cno, cname,credit,pcno) values('1', '数据库', 4, '5') insert into course(cno, cname,credit,pcno) values('2', '数学', 6, null) insert into course(cno, cname,credit,pcno) values('3', '信息系统', 3, '1') insert into course(cno, cname,credit,pcno) values('4', '操作系统', 4, '6') insert into course(cno, cname,credit,pcno) values('5', '数据结构', 4, '7') insert into course(cno, cname,credit,pcno) values('6', '数据处理', 3, null) insert into course(cno, cname,credit,pcno) values('7', 'PASCAL语言', 4, '6') insert into sc(sno,cno,grade) values('95001', '1' ,92) insert into sc(sno,cno,grade) values('95001', '2' ,85) insert into sc(sno,cno,grade) values('95001', '3' ,88) insert into sc(sno,cno,grade) values('95002', '2' ,90) insert into sc(sno,cno,grade) values('95002', '3' ,80) insert into sc(sno,cno,grade) values('95003', '2' ,85)

相关文档