版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PAGE PAGE 62课程设计 题 目 长虹桂林分公司人力资源管理信息系统设计 目录 TOC o 1-3 h z u HYPERLINK l _Toc278634620 0引言 PAGEREF _Toc278634620 h 1 HYPERLINK l _Toc278634621 1系统概况 PAGEREF _Toc278634621 h 2 HYPERLINK l _Toc278634622 1.1系统应用背景介绍 PAGEREF _Toc278634622 h 2 HYPERLINK l _Toc278634623 1.2系体功能分析 PAGEREF _Toc278634623 h 2
2、HYPERLINK l _Toc278634624 1.3系统模块设计 PAGEREF _Toc278634624 h 2 HYPERLINK l _Toc278634625 1.3.1人事管理功能模块 PAGEREF _Toc278634625 h 3 HYPERLINK l _Toc278634626 1.3.2考勤管理功能模块 PAGEREF _Toc278634626 h 3 HYPERLINK l _Toc278634627 1.3.3招聘管理功能模块 PAGEREF _Toc278634627 h 3 HYPERLINK l _Toc278634628 1.3.4工资管理功能模块
3、PAGEREF _Toc278634628 h 3 HYPERLINK l _Toc278634629 1.3.5培训管理功能模块 PAGEREF _Toc278634629 h 3 HYPERLINK l _Toc278634630 1.3.6系统维护功能模块 PAGEREF _Toc278634630 h 3 HYPERLINK l _Toc278634631 2数据库设计 PAGEREF _Toc278634631 h 7 HYPERLINK l _Toc278634632 2.1定义数据库 PAGEREF _Toc278634632 h 7 HYPERLINK l _Toc278634
4、633 2.2定义业务规则 PAGEREF _Toc278634633 h 7 HYPERLINK l _Toc278634634 2.3定义域 PAGEREF _Toc278634634 h 8 HYPERLINK l _Toc278634635 2.4创建表格/字段 PAGEREF _Toc278634635 h 8 HYPERLINK l _Toc278634636 2.4.1缺勤类型表 PAGEREF _Toc278634636 h 8 HYPERLINK l _Toc278634637 2.4.2津贴表 PAGEREF _Toc278634637 h 8 HYPERLINK l _T
5、oc278634638 2.4.3考勤表 PAGEREF _Toc278634638 h 9 HYPERLINK l _Toc278634639 2.4.4部门表 PAGEREF _Toc278634639 h 9 HYPERLINK l _Toc278634640 2.4.5岗位表 PAGEREF _Toc278634640 h 10 HYPERLINK l _Toc278634641 2.4.6医疗保险表 PAGEREF _Toc278634641 h 10 HYPERLINK l _Toc278634642 2.4.7月工资表 PAGEREF _Toc278634642 h 11 HYP
6、ERLINK l _Toc278634643 2.4.8培训表 PAGEREF _Toc278634643 h 11 HYPERLINK l _Toc278634644 2.4.9培训教师表 PAGEREF _Toc278634644 h 12 HYPERLINK l _Toc278634645 2.4.10课目表 PAGEREF _Toc278634645 h 12 HYPERLINK l _Toc278634646 2.4.11员工表 PAGEREF _Toc278634646 h 12 HYPERLINK l _Toc278634647 2.4.12年终奖表 PAGEREF _Toc27
7、8634647 h 13 HYPERLINK l _Toc278634648 2.4.13用户权限表 PAGEREF _Toc278634648 h 14 HYPERLINK l _Toc278634649 2.4.14用户具体权限表 PAGEREF _Toc278634649 h 14 HYPERLINK l _Toc278634650 2.4.15权限细则表 PAGEREF _Toc278634650 h 14 HYPERLINK l _Toc278634651 3程序预览 PAGEREF _Toc278634651 h 14 HYPERLINK l _Toc278634652 4代码分析
8、 PAGEREF _Toc278634652 h 26 HYPERLINK l _Toc278634653 5设计总结 PAGEREF _Toc278634653 h 32 HYPERLINK l _Toc278634654 参考文献 PAGEREF _Toc278634654 h 32长虹桂林分公司人力资源管理信息系统设计摘要:人事管理系统是一套功能强大、操作简单而又实用的人事管理软件,包括人事管理、考勤管理、工资管理、招聘管理、培训管理及系统维护六大管理功能。本系统在功能设计上具有前瞻性,对国际上先进的人事管理思想加以吸收、借鉴,以适应客户不断提高的要求,增强人事管理企业的核心竞争力。主要
9、帮助实现人员基本信息的数据输入和规范化管理,合企业高效率地完成劳动人事管理的日常业务。关键词:人事管理 长虹 SQL0引言21世纪的竞争是人才的竞争,拥有优秀的人才是企业成功的基础,因此人力资源可以说是企业最重要的资源。人力资源的管理也成为关系到企业兴衰的战略性工作。虽然市场上提供了不少人力资源管理的独立软件,但都未与企业的ERP系统集成。将人力资源作为ERP系统的一个部分,可以全方位地对企业人力资源进行有效的绩效评估,同时可以方便地为产品的成本提供人工费用,提高人力资源管理的信息共享程度,加快信息的提取和统计。下面将详细地分析一个完整的具有商业竞争力的人事管理系统的实施,并讲述该程序实施的整
10、个过程,包括需求分析、系统框架,系统建模、数据库建模、程序实现和项目实施等。1系统概况1.1系统应用背景介绍本系统是为企业人事管理提供现代化技术支持的管理信息系统,该系统包括了员工管理、部门管理、用户管理、招聘管理等主要模块。其图形用户界面利用DELPHI进行开发,后台数据库使用SQL SERVER 2000,采用ADO数据访问方式。本文针对具体项目展开研究,首先进行需求分析、模块划分,对实施该课题的方案进行论证。然后对整个系统进行了详细的分析和设计,结合源代码详细的描述出整个项目的开发过程,最后对系统进行了功能测试。本课题的实施将会促进企业的无纸化办公,避免人工管理中出现各种差错,提高企业管
11、理效率,使得管理者能够更加方便的了解到企业内部人事状况。人事管理系统是一套功能强大、操作简单而又实用的人事管理软件,包括人事管理、考勤管理、工资管理、招聘管理、培训管理及系统维护六大管理功能。本系统在功能设计上具有前瞻性,对国际上先进的人事管理思想加以吸收、借鉴,以适应客户不断提高的要求,增强人事管理企业的核心竞争力。主要帮助实现人员基本信息的数据输入和规范化管理,合企业高效率地完成劳动人事管理的日常业务。本系统主要适用于中小型企业的人事管理。本系统集成了各类型人事管理软件的功能和特点来构建系统框架,因此整个系统具有的灵活性和可扩展性,能够满足客户在人事管理方面更多个性化的需求。1.2系体功能
12、分析人事管理包含的功能较多,其中一些过程如招聘较为复杂,随着员工数量的增加,人事管理者所需要处理的信息量大幅上升,因此往往很难及时准确地掌握整个企业的员工信息。针对这一情况,提出开发人事管理信息系统的任务。主发是为了实现企业的人事管理系统化、规范化和自动化,为产品的成本减少人工费用,提高人力资源管理的信息共享程度,加快信息的提取的系统。开发意图:为人事管理提高效率、降低成本;实现人事管理的优化,达到物流和信息流的畅通无阻;进而提供更多增值性服务,提高客户满意度。在满足人事管理的基本功能基础上注意发挥信息系统的智能化,减轻人事管理人员和操作人员的工作负担。1.3系统模块设计本系统是一种功能比较完
13、善的人事管理软件,对人事管理维护过程中的数据可以随时输入、输出、查找、报表和打印等。需求分析是一个管理系统成功实施的基础,只有弄清楚客户的需求,才能真正开发出满足客户需求的信息系统,也才能够让整个系统发挥其应有的作用。下面就针对人事管理的总体需求做一个分析,可能有些客户有其特殊的需求,可在实际开发中继续完善。1.3.1人事管理功能模块主要实现人员基本信息的数据输入和规范化管理,使企业高效率地完成劳动人事管理 的日常业务,比如建立人事基本档案、离退人员档案、员工生日及合同等提醒、进行人力资源测评与分析、工服领用和文具领用等。1.3.2考勤管理功能模块主要实现企业的考勤管理系统化、规范化和自动化,
14、收集时间数据,自动地对数据进行分析和处理,如计划缺使用选区勤时间、加班时间、休假时间等,通知员工以进行核对和修改,并能对员工进行休假管理。1.3.3招聘管理功能模块主要帮助管理者开展招聘工作,包括在因特网、报纸、杂志上动态地发布招聘广告,查询应聘情况,对应聘人员与招聘条件作比较,筛选应聘人员,自动产生录用通知书,对有关的招聘事务自动生成E-mail、传真及各种信件。1.3.4工资管理功能模块主要包括两方面的内容,一是工资核算,如工资计算,个人所得税、养老及医疗保险计算,住房公积金和社会福利金等的计算,工资的发放方式;二是工资管理,如制定工资计划,控制工资预算,分析市场职务价格水平,调整工资结构
15、。1.3.5培训管理功能模块主要功能是对员工的职务和用途程度进行分析,为员工的升职和加薪提供信息,制定员工的培训计划,建立培训课程表,预算培训成本。同时,为每位员工建立培训记录,输入数据库。1.3.6系统维护功能模块主要使管理员能进行人力资源及其相关功能的管理,设置操作员账号、密码与权限,定期进行数据备份、数据清理及整理,以及出现故障时可以将数据恢复。整个系统的功能需求可用图1-1简要表示。人事管理系统人事管理系统人事管理考勤管理招聘管理工资管理培训管理系统维护图1-1 人事管理系统人事管理功能模块可以通过图1-2说明。人事管理人事管理人事档案管理离退人员档案管理人力资源测评员工生日等提醒查询
16、统计报表打印图1-2 人事管理考勤管理功能模块可以通过图1-3说明。考勤管理考勤管理考勤信息维护员工休假管理 查询统计报表打印图1-3 考勤管理招聘管理功能模块可以通过图1-4说明。招聘管理招聘管理制定招聘计划查询应聘情况 筛选应聘人员应聘人信息维护 生成招聘文件图1-4 招聘管理工资管理功能模块可以通过图1-5说明。工资管理工资管理工资核算银行转账 制定工资计划查询统计 报表打印图1-5 工资管理培训管理功能模块可以通过图1-6说明。培训管理培训管理制定培训计划预算培训成本 建立培训记录制定员工发展计划图1-6 培训管理系统维护功能模块可以通过图1-7说明。系统维护系统维护操作员及权限数据备
17、份 数据清理数据恢复 数据整理图1-7系统维护2数据库设计根据以上的功能分析,系统中包括员工、岗位、职务、部门四个实体。其中每个职员都专职或兼职担任某个岗位的工作。而每个岗位又必然是某个部门的某个职务。系统的核心实体是员工,员工包括多方面的属性,如一些基本资料:工号、姓名、性别、学历等,同时还包含一些复杂的结构信息,如他的简历、所受过的培训、档案信息等。以下就是生成数据库中的各类对象的代码。2.1定义数据库/*Database name : 人事数据库(HRM) */*DBMS name : Microsoft SQL Server 2000 */*Created on : 2010-10-3
18、0 10:23:16 */drop database 人事数据库gocreate database 人事数据库gouse 人事数据库go2.2定义业务规则语句为:create rule月工资规则as(用语言描述的业务规则)月工资表中的津贴是通过津贴表的加班时间*单位酬劳得到的;月工资表的扣除是通过考勤表的缺勤天数*单位金额得到的;医疗保险和保险费是通过医疗保险表的医疗保险费用和保险费得到的。gocreate rule 月工资 as 工资表的月工资必须大于0或一定的数,比如基本工资 2.3定义域/*Domain:名字域(NAME) */execute sp_addtype 名字域, char(1
19、0)go/*Domain: 代号域(UNMBER) */execute sp_addtype 代号域, char(6)go/*Domain: 时间域(TIME) */execute sp_addtype 时间域, datetimego2.4创建表格/字段2.4.1缺勤类型表Create table 缺勤类型表(缺勤类别 char(6) not null,缺勤名称 NAME null,缺勤描述 char(10) null,Constraint PK_ABSENCE primary key (缺勤类别))gocreate index INDEX_1 on 缺勤类型表(缺勤类别)go2.4.2津贴表
20、create table 津贴表(员工代号 NUMBER not null,加班时间 NAME not null,加班天数 dec(2) null,加班类别 char(10) null,constraint PK_ALLOWANCE primary key (员工代号,加班时间)gocreate index INDEX_1 on 津贴表(员工代号,加班时间)go2.4.3考勤表create table 考勤表(员工代号 UNMBER not null,员工姓名 varchar(20) null,日期 TIME not null, 上班时间 datetime null, 下班时间 datetim
21、e null, 迟到时间 int null, 是否缺勤 bit null, 缺勤类别 char(6) null,)constraint PK_CHECKIN primary key (员工代号,日期)gocreate index INDEX_1 on考勤表(员工代号,日期)go2.4.4部门表create table 部门表(部门代号 NUMBER not null,部门名称 NAME null,部门经理代号 NAME null,部门电话 dec(8) null,constraint PK_DEPARTMENT primary key (部门代号)gocreate unique index D
22、EP_NO on 部门表(部门代号)gocreate index DEP_NAME on 部门表(部门名称)go2.4.5岗位表Create table 岗位表(岗位代号 NUMBER not null,岗位名称 NAME null,岗位权利 char(20) null,岗位职责 char(20) null,Constraint PK_JOB primary key (岗位代号))GoCreate unique index INDEX_1 on 岗位表(岗位代号)GoCreate index INDEX_2 on 岗位表(岗位名称)Go2.4.6医疗保险表Create table 医疗保险表(
23、员工代号 NUMBER not null,医疗报险费用 dec(10) null,保险费 dec(8) null,医疗保险日期 TIME not null,Constraint PK_MEDICARE primary key (员工代号,医疗保险日期))GoCreate index INDEX_1 on 医疗保险表(员工代号)Go2.4.7月工资表Create table 月工资表(员工代号 NUMBER not null,基本工资 dec(6) null,津贴 dec(6) null,扣除 dec(6) null,医疗保险 dec(6) null,保险费 dec(6) null,月工资 AS
24、 (月工资表.基本工资表+月工资表.津贴+月工资表.医疗保险-月工资表.扣除-月工资表.保险费),月工资时间 TIME not null,Constraint PK_MONTHSAL primary key (员工代号,月工资时间))GoCreate index INDEX_1 on 月工资表(员工代号,月工资时间)Go2.4.8培训表Create table 培训表(培训师代号 NUMBER not null,课目代号 NUMBER not null,员工代号 NUMBER not null,成绩 dec(4) null,Constraint PK_TEACH primary key (培训
25、师代号,课目代号,员工代号))GoCreate index INDEX_1 on 培训表(培训师代号,课目代号,员工代号)Go2.4.9培训教师表Create table 培训教师表(培训师代号 NUMBER not null,培训师名称 NAME null,培训师职称 char(8) null,Constraint PK_TEACHER primary key (培训师代号)Create index INDEX_1 on 培训教师表(培训师代号)GoCreate index INDEX_2 on 培训教师表(培训师名称)Go2.4.10课目表Create table 课目表(课目代号 NUM
26、BER not null,科目名称 NAME null,教材名称 NAME null,Constraint PK_TOPIC primary key (课目代号))GoCreate index INDEX_1 on 课目表(课目代号)GoCreate index INDEX_2 on 课目表(科目名称)Go2.4.11员工表Create table 员工表(员工代号 NUMBER not null,员工姓名 NAME null,员工性别 char(2) null,岗位代号 NUMBER null,部门代号 NUMBER null,培训情况 char(2) null,婚姻状况 char(2) n
27、ull,学历 char(6) null,入公司时间 TIME not null,Constraint PK_WORKER primary key (员工代号))GoCreate unique index INDEX_1 on 员工表(员工代号)GoCreate index INDEX_2 on 员工表(员工姓名)GoCreate index INDEX_3 on 员工表(入公司时间)Go2.4.12年终奖表Create table 年终奖表(员工代号 NUMBER not null,年份 TIME not null,奖金总数 dec(8) null,Constraint PK_YEARSAL
28、primary key (员工代号,年份)GoCreate index INDEX_1 on 年终奖表(员工代号,年份)Go2.4.13用户权限表Create table 用户权限表(序号 int not null,用户名 varchar(10) null,密码 varchar(10) null,工号 varchar(10) null,姓名 varchar(10) null,权限级别 int null,Constraint PK_xuhao1 primary key (序号))Go2.4.14用户具体权限表Create table 用户具体权限表(序号 int not null,用户名 var
29、char(10) null,权限号 varchar(10) null,Constraint PK_xuhao2 primary key (序号))Go/*用户具体权限,用来保存每个员工的具体权限*/2.4.15权限细则表Create table 权限细则表(序号 int not null,权限表 varchar(10) null,权限名称 varchar(10) null,备注 varchar(10) null,Constraint PK_xuhao3 primary key (序号)Go3程序预览运行本程序,首先出现如图3-1所示的主界面。单击菜单项中系统设置-设置代码,进入设置代码窗口,如
30、图3-2所示,可以在其中对相关的代码如部门代码、岗位代码、婚姻状况代码等进行设置。图3-1 主界面图3-2 设置代码单击人事资料管理-人员信息综合管理,进入个人资料管理窗口,如图3-3所示,可以在其中对人员的基本资料以及各项信息如简历、培训、兼职等信息进行浏览和编辑。图3-3 个人资料在窗口中单击表格显示按钮,则会切换到表格显示的模式,如图3-4所示,在表格显示模式单击输入模式按钮,则又可切换到输入模式。图3-4 个人资料输入在个人资料窗口中单击更换照片按钮,则可选择更换员工的照片,如图3-5所示。图3-5 更改照片在个人资料窗口中单击简历按钮,则可进入编辑简历窗口,如图3-6所示。单击编辑档
31、案信息则可进入编辑档案信息窗口,如图3-7所示。图3-6 编辑简历图3-7 编辑档案信息在个人资料窗口中单击编辑兼职信息按钮则可输入员工的兼职情况,如图3-8所示。单击编辑培训信息则可输入员工的培训信息,如图3-9所示。图3-8 编辑兼职信息图3-9 编辑培训信息在个人资料窗口中单击编辑职称信息按钮,则可输入员工的职称变化情况,如图3-10所示。单击人事资料管理-人员调离,进入人员调离及离退休管理窗口,如图3-11所示,系统将会列出所有的员工的工号、姓名等资料,可以从中选择需要输人员调离或离退休的员工。选中一个员工之后,单击详细信息按钮,可显示该员工的详细个人资料。图3-10 编辑职称信息图3
32、-11 人员调离及离退休管理单击人事资料管理-人员信息综合查询,进入人员信息统计分析窗口。在人员信息统计分析窗口,系统按照各种分类对员工资料进行分类统计,并以表格(如图3-12所示)、柱状图(如图3-13所示)、饼图(如图3-14所示)形式显示,供企业决策人员参考。图3-12 人员统计表格图3-13 人员统计柱状图图3-14 人员统计饼图单击岗位管理-设置岗位,进入设置岗位编制窗口,如图3-15所示,其中可以调整企业的岗位设置。在窗口中单击设置岗位要求按钮,则可以对该岗位进行多方面的要求设置,如图3-16所示。图3-15 设置岗位编制图3-16 设置岗位要求单击岗位管理-岗位查询,进入查询岗位
33、配置窗口,如图3-17所示,其中可以查询各个岗位的人员配置情况。在岗位查询窗口中,选中一个岗位和人员配置之后,单击已配置的人员情况按钮,出现一个窗口显示该岗位可选择该岗位配置的所有人员的列表,如图3-18所示。用户从中选择一个员工之后,单击详细资料按钮,则会显示该员工的详细个人资料。在查询岗位配置窗口中,单击岗位设置情况按钮,则用户可查看该岗位设置的详细资料。图3-17 查询岗位配置图3-18 查询人员列表4代码分析unit main;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls
34、, Forms, Dialogs, Menus, ComCtrls, ExtCtrls;type TfrmMain = class(TForm) MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; N4: TMenuItem; N7: TMenuItem; N11: TMenuItem; N12: TMenuItem; N13: TMenuItem; N5: TMenuItem; N6: TMenuItem; N8: TMenuItem; N3: TMenuItem; N9: TMenuItem; N10: TMenuItem; proced
35、ure N2Click(Sender: TObject); procedure N7Click(Sender: TObject); procedure N12Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure N8Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure N10Click(Send
36、er: TObject); private Private declarations public Public declarations end;var frmMain: TfrmMain;implementationuses Szdmb, szgwbz, grzl, ryxxtjfx, cxgwpz, rydl;$R *.dfmprocedure TfrmMain.N2Click(Sender: TObject);begin try frmSzdmb := TfrmSzdmb.Create(nil);/创建设置代码窗口 frmSzdmb.showModal; /以模式方式显示设置代码窗口
37、finally frmSzdmb.Free ; /最后必须释放窗口 end;end;procedure TfrmMain.N7Click(Sender: TObject);var i,count:integer; exist:boolean;begin exist:=false; i:=0; count := self.MDIChildCount ; while (i count) and not exist do /查找是否存在类名为TfrmGrzl的子窗口 begin if self.MDIChildreni.ClassName = TfrmGrzl then exist := true;
38、 inc(i); end; if not exist then /不存在则创建 begin frmGrzl := TfrmGrzl.Create(self); end; /以下显示该窗口 frmGrzl.Show ; frmGrzl.WindowState := wsNormal; frmGrzl.SetFocus ;end;procedure TfrmMain.N12Click(Sender: TObject);begin try frmSzgwbz := TfrmSzgwbz.Create(nil); /创建设置岗位窗口 frmSzgwbz.showModal; /以模式方式显示设置窗口
39、finally frmSzgwbz.Free ; /必须释放窗口 end;end;procedure TfrmMain.N6Click(Sender: TObject);var i,count:integer; exist:boolean;begin exist:=false; i:=0; count := self.MDIChildCount ; while (i count) and not exist do /查找系统中是否存在为frmRyxxtjfx的子窗口 begin if self.MDIChildreni.ClassName = TfrmRyxxtjfx then exist :
40、= true; inc(i); end; if not exist then /不存在则创建 begin frmRyxxtjfx := TfrmRyxxtjfx.Create(self); end; /以下显示该窗口 frmRyxxtjfx.Show ; frmRyxxtjfx.WindowState := wsNormal; frmRyxxtjfx.SetFocus ;end;procedure TfrmMain.N8Click(Sender: TObject);var i,count:integer; exist:boolean;begin exist:=false; i:=0; coun
41、t := self.MDIChildCount ; while (i count) and not exist do /查找系统中是否存在为frmCxgwpz的子窗口 begin if self.MDIChildreni.ClassName = TfrmCxgwpz then exist := true; inc(i); end; if not exist then /不存在则创建 begin frmCxgwpz := TfrmCxgwpz.Create(self); end; /以下显示该窗口 frmCxgwpz.Show ; frmCxgwpz.WindowState := wsNorma
42、l; frmCxgwpz.SetFocus ;end;procedure TfrmMain.N3Click(Sender: TObject);var i,count:integer; exist:boolean;begin exist:=false; i:=0; count := self.MDIChildCount ; while (i count) and not exist do /查找系统中是否存在为frmRydl的子窗口 begin if self.MDIChildreni.ClassName = TfrmRydl then exist := true; inc(i); end; i
43、f not exist then /不存在则创建 begin frmRydl := TfrmRydl.Create(self); end; /以下显示该窗口 frmRydl.Show ; frmRydl.WindowState := wsNormal; frmRydl.SetFocus ;end;procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);begin if messageDlg(退出系统吗?,mtInformation , mbYes,mbNo,MB_YESNO) = mrYes then/
44、用户确认是否退出系统 canClose := true else canClose := false; end;procedure TfrmMain.N10Click(Sender: TObject);begin close;end;end.5设计总结本系统主要适用于中小型企业的人事管理。本系统集成了各类型人事管理软件的功能和特点来构建系统框架,因此整个系统具有的灵活性和可扩展性,能够满足客户在人事管理方面更多个性化的需求。主发是为了实现企业的人事管理系统化、规范化和自动化,为产品的成本减少人工费用,提高人力资源管理的信息共享程度,加快信息的提取的系统。参考文献1杨海东,刘海英Delphi数据
45、库高级实例导航M科学出版社,20032席一凡Delphi程序设计M中国铁道出版社,20083王珊,萨师煊数据库系统概论M高等教育出版社,20064李代平软件工程M清华大学出版社,20025姜仁武.企业资源管理项目开发实践.科学出版社,2005附录资料:不需要的可以自行删除 C语言-INT10中断号视频服务程序00H(设置视频模式)输入: AH=00H AL=视频模式输出: 无 说明:视频服务程序00H用来设置视频配置为表10-l中列出之一。AL寄存器给定所需视频模式。若设置了新视频模式,则清除屏幕。 视频服务程序0lH(设置光标大小)输入: AH=01H CH=光标开始扫描行 CL=光标结束扫
46、描行输出: 无说明:该服务程序用于正文模式。在一个字符单元内由一行或几行组成的光标将在字符显示位置得闪烁。该服务程序定义光标的显示行数。对CGA模式,8扫描行(07)用于光标。对EGA模式,使用14行(013)。MCGA和VGA适配器,光标可具有16扫描行(015)高。缺省设置如下: CGA: CH6,CL7 EGA: CHll,CL12 MCGA和VGA: CH量13,CL1 视频服务程序02H(设置光标位置)输入: AH=02H BH=光标页号 DH=光标行号 DL=光标列号输出: 无说明:该服务器序用于将光标移到指定行和列位置。该服务程序即可用于正文模式也可用于图形模式;然而,仅在正文模
47、式下才显示光标。屏幕左上角为坐标系统的原点。对支持多页的正文和图形模式,则必须指定页号,以保证光标位置正确。视频服务程序03H(读光标位置)输入: AH=03H BH=页号输出: CH=光标开始行 CL=光标结束行 DH=行号 DL列号说明:该服务程序用于获取光标大小和位置。BH给定了页号。CH中存放光标开始扫描行,而CL中为光标结束扫描行。DH中存放行位置,DL中为列位置。视频服务程序05H(设置活动显示页)输入: AH=05H AL=活动页号输出: 无 说明:该服务程序为正文和图形模式用来设置活动显示页号。AL指定所需页号。对多数正文模式,页号范围为0一7。对具有足够视频缓冲EGA和VGA
48、适配器,可支持多页图形。对所有正文和图形模式,缺省为0页。视频服务程序06H(向上翻滚活动窗口)。输入:AH=06HAL=翻滚行数BH=空白行属性CH左上角行号CL=左上角列号 DH右下角行号 Dl右下角列号输出: 无 说明:该服务程序用来创建和翻滚一正文窗口。CH和CL中给出了正文窗口左上角坐标,DH和DL中给出了正文窗口右下角坐标。AL中定义了翻滚的行数。若AL00H,则正文窗口为空白。当滚动窗口时,底部行是空白行,其属性由BH中指定。视频服务程序07H(向下翻滚窗口)输入:AH=07HAL=翻滚行数BH=空白行属性CH=左上角行号CL=左上角列号DH=右下角行号DL=右下角列号输出: 无
49、说明:该服务程序用来创建和翻滚一正文窗口。CH和CL中给出了正文窗口左上角坐标,DH和DL中给出了正文窗口右下角坐标。AL中定义了翻滚的行数。若AL00H,则正文窗口为空白。当滚动窗口时,顶部行为空白,其属性由BH中指定。视频服务程序08H(读字符和属性)输入: AH=08H BH=活动页号输出: AH=字符属性 AL=字符码说明:该服务程序用于读取正文或视频模式下,光标所在处字符。在图形模式下,获取的字符同图形模式下使用的字符生成表有关。在正文模式下,将获得字符的ASCII码。字符属性存放在AH中,字符ASCII码存放在AL中。图形模式下,AH中内容无意义.视频服务程序09H(写字符和属性)
50、输入: AH09H AL=写字符的ASCII码 BL=写字符的属性 BH=活动页号 CX=重复写字符和属性次数输出: 无 说明:该服务程序写一个字符到屏幕当前光标处。AL中指定字符码。正文模式下,BL中指定字符属性。图形模式下,BL指定背景颜色。字符可重复写。CX为写字符及属性的次数。视频服务程序0FH(取当前视频模式)输入: AH0FH输出: AH每行字符数 AL当前显示模式 BH活动页号说明:该服务程序用来获取当前视频模式,屏幕宽(以字符计),以及活动显示页号;视频显示模式存放在AL中。屏幕宽度(以字符计)存放在AH中,活动页号存放在BH中。文件相关函数函数名: fopen功 能: 打开一
51、个流用 法: FILE *fopen(char *filename, char *type);函数名: fclose功 能: 关闭一个流用 法: int fclose(FILE *stream); fopen()函数提供了几种打开文件的方式,这是由其字符指针参数type决定的。以下给出打开方式列表:参数作用R只读W新建、可写,如果文件存在则覆盖A存在则在文件后附加,如果不存在则新建后写r+更新一个存在的文件(读和写)w+增加一个新的文件更新(读和写),如果文件存在则覆盖a+存在则在文件后附加(读和写),如果不存在则新建后更新(读和写)*以文本模式打开一个存在或新建的文件,附加”t”在参数后(r
52、t, w+t, etc.)。*以二进制模式打开一个存在或者新建的文件,附加”b”在参数后(wb, a+b, etc.)。函数名: fseek功 能: 重定位流上的文件指针用 法: int fseek(FILE *stream,long offset,int fromwhere); 读取文件函数:函数名: fread功 能: 从一个流中读数据用 法: int fread( void *ptr, int size, int nitems, FILE *stream ); 写入文件函数:函数名: fwrite功 能: 写内容到流中用 法: int fwrite( void *ptr, int siz
53、e, int nitems, FILE *stream ); fseek()函数提供了文件指针的三个初始位置,这是由其参数fromwhere决定的,以下给出其列表:常量值文件定位SEEK_SET0从文件头开始寻找SEEK_CUR1从文件当前位置开始寻找SEEK_END2从文件最后开始寻找函数名: fprintf功 能: 传送格式化输出到一个流中用 法: int fprintf( FILE *stream, char *format, argument,. );函数名: fscanf功 能: 从一个流中执行格式化输入用 法: int fscanf( FILE *stream, char *for
54、mat,argument. );发声函数函数名: sound功 能: 以指定频率打开PC扬声器用 法: void sound(unsigned frequency);函数名: nosound功 能: 关闭PC扬声器用 法: void nosound(void);常规内存操作函数申请函数:malloc(),farmalloc(),calloc(),farcalloc(),realloc(),farealloc()函数名: malloc功 能: 内存分配函数用 法: void *malloc(unsigned size);函数名: farmalloc功 能: 从远堆中分配存储块用 法: void
55、far *farmalloc(unsigned long size);函数名: calloc功 能: 分配主存储器用 法: void *calloc(size_t nelem, size_t elsize);函数名: farcalloc功 能: 从远堆栈中申请空间用 法: void far *farcalloc( unsigned long units, unsigned ling unitsz );函数名: realloc功 能: 重新分配主存用 法: void *realloc(void *ptr, unsigned newsize);函数名: farrealloc功 能: 调整远堆中的分
56、配块用 法: void far *farrealloc( void far *block, unsigned long newsize );使用函数:memcpy(),memset(),memmove(),movedata()函数名: memcpy功 能: 从源source中拷贝n个字节到目标destin中用 法: void *memcpy(void *destin,void *source,unsigned n);函数名: memset功 能: 设置s中的所有字节为ch, s数组的大小由n给定用 法: void *memset(void *s, char ch, unsigned n);函数
57、名: memmove功 能: 移动一块字节用 法: void *memmove(void *destin,void *source,unsigned n);函数名: movedata功 能: 拷贝字节用 法: void movedata(int segsrc, int offsrc, int segdest, int offdest, unsigned numbytes);释放函数:free(),farfree()函数名: free功 能: 释放已分配的块用 法: void free(void *ptr);函数名: farfree功 能: 从远堆中释放一块用 法: void farfree(v
58、oid);指针操作函数:MK_FP(),FP_OFF(),FP_SEG()函数名: MK_FP功 能: 设置一个远指针用 法: void far *MK_FP(unsigned seg, unsigned off);函数名: FP_OFF功 能: 获取远地址偏移量用 法: unsigned FP_OFF(void far *farptr);函数名: FP_SEG功 能: 获取远地址段值用 法: unsigned FP_SEG(void far *farptr);如果想知道还剩下多少常规内存,我们可以使用以下函数:函数名: coreleft()功 能: 获取空闲内存用 法: unsigned c
59、oreleft(void);函数名: farcoreleft()功 能: 获取远堆空闲内存用 法: unsigned long farcoreleft(void);XMS功能调用索引表:功能号功能版本功能00H功能01H功能02H功能03H功能04H功能05H功能06H功能07H功能08H功能09H功能0AH功能0BH功能0CH功能0DH功能0EH功能0FH功能10H功能11H取XMS版本号请求高内存区HMA释放高内存区HMA全程启用A20全程停用A20局部启用A20局部停用A20查询A20状态查询自由扩展内存分配扩展内存块释放扩展内存块移动扩展内存块锁住扩展内存块扩展内存块解锁取EMB句柄信
60、息重新分配扩展内存块请求上位存储块UMB释放上位存储块UMBXMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS规范V2.0XMS功能调用函数1. 测试xms是否存在使用中断2fH的43H(AH)功能的00H(AL)子功能,可以获得是否安装了XMS驱动程序的信息,如果AL返回为80H则说明XMS安装了。以下给出具体函数:char test
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海高考语文三年模拟真题(21-23年)知识点汇编-文学类文本阅读
- 对讲机赠与协议样本
- 轮式装卸机租赁合同范本
- 工程分包合同协议书格式
- 曹冲称象(2课时)公开课一等奖创新教案
- 改扩建高速公路临时用地合同
- 2024年餐饮合伙股份协议书
- 2024年房屋建筑施工承包合同范本
- 合作经营公司劳动合同样本
- 农产品供应补充协议
- 歌剧《洪湖水浪打浪-》课件
- 国家安全教育课-教案3篇
- 幼儿园优质公开课:小班语言《小鸡球球藏猫猫》课件(共同欣赏)
- 人教版八年级数学上册全等三角形典型6类难题题型归类
- 大班-数学-加号减号-课件(基础版)
- 三全育人工作实施方案
- 语音发声(第四版)语音篇
- 四年级体质健康数据
- GB/T 43050-2023血液透析和相关治疗用液体的制备和质量管理通用要求
- 介绍辽宁朝阳的PPT模板
- 触电和触电急救
评论
0/150
提交评论