第一篇:编写大型程序的感受
编写大型程序的感受:
最初,全组人对编写此大程都没有信心。因此,我们的进展一直很缓慢,前进的步伐异常艰难。夏学期第四周,我感觉不能再拖了,我和杨洋决定要投入。
周六晚上,我画出了平面棋盘。周日,在杨洋的意见下,我将棋盘改为了立体模式,这给了我们巨大的动力。之后,我们开始一点一点加程序。周二,我们将人人对战的所有程序就已经完成。那些天,虽然我们每天在自习室待到午夜,不断地编程序,不断地调试程序,甚至杨洋回寝室后还要调试到凌晨三四点。但编程的过程,不断地成功是我们的兴趣高涨。
然而,开始的快乐,随着编程的深入,被琐碎的调试、反复的却又无法理解的错误逐渐消磨。这时,是毅力与责任促使着我们不断把程序完善。最后,我们两个都筋疲力尽,甚至心力交瘁。我们不断互相鼓励、互相支持、互相陪伴,终于将程序收尾。应该说,程序的主体是杨洋编写的,但他编写的过程始终有我的意见与协助,我们两个共同建立了程序的主体。虽然我独立编写的函数并不多,但程序的开始是由我首先突破,程序的收尾工作也由我完成,而编程的过程,我从事了大多都是琐碎的工作。或许我做的工作没有闪耀光芒,但在每一个组,都需要有人来从事一些普通、琐碎的工作。两个星期的编程过程,也让我反思了很多。
首先,我感到自己的耐心与毅力还需要加强,如果自己的耐心更好,程序可能10天就可以完成。
其次,我感到关键时候,一定要勇于承担责任,不要依赖他人。编程中间,我曾一度产生厌倦之情,不想再承担如此之大的责任。事后,我想,如果自己能够坚持,能及时地多做一些事,可能程序会花费的时间更少。
最后,我也反思了自己性格。往往,绿叶的生长有时和红花同样艰辛,然而绿叶永远没有红花耀眼。编程由我打开了起点,可我在后续发展中却不知不觉地成为了绿叶。这个结局深深地震撼了我。我不得不想:性格决定命运,我在以后的工作、生活中,会不会永远都是这样的结局?这次是偶然还是必然?如果是必然,那么我必须开始思考是不是要自我调整?
感谢C大程这门课,让我们在编程的过程中,不仅提高了编程能力,更让我们成长了许多。
第二篇:如何编写和语言程序解读
如何编写和汇编语言程序
可以用普通文本编辑器编辑汇编语言源程序。常用的有 MS-DOS 下的 EDIT 文本编辑程序,Windows 下的写字板(WORDPAD.EXE)等。用户通过屏幕编辑程序键入源程序,检查无误,可将源程序存到汇编系统盘上,该程序的扩展名为· ASM。软件运行基本环境
运行汇编程序必备的软件环境: DOS 操作系统;汇编系统。汇编系统盘应包含如下文件: MASM 宏汇编程序文件 LISK 连接程序文件
CRFF 索引程序文件(也可不用)汇编源程序编写)源程序的书写格式
当 CPU 访问内存时,是把存储器分成若干个段,通过 4 个段寄存器中存放的地址对内存储器访问,因此在编源程序时必须按段的结构来编制程序。由于每个段的物理空间为≤ 64KB,所以程序中各段可以分别为一个或几个。源程序的书写一般有如下形式:
逻辑堆栈段 堆栈段名 SEGMENT STACK 用变量定义预置的堆栈空间 · ·
堆栈段名 ENDS 逻辑数据段 数据段名 SEGMENT 用变量定义预置的数据空间 · ·
数据段名 ENDS 逻辑代码段 代码段名 SEGMENT ASSUME 定义各段寻址关系 过程名 PROC … 程序 · ·
过程名 ENDP 代码段名 ENDS END 过程名或起始标号
在源程序中最少要有一个代码段,数据段根据需要可有可无,也可以增设附加段。对于堆栈段也可以根据需要可有可无,但在连接(LINK)时计算机将显示警告性的错误: Warning : N STACK segment There was 1 error detected.在程序中如果没有用到堆栈时,该错误提示不影响程序的运行,如果程序中用到堆栈时必须设置堆栈段。其中: SEGMENT、ASSUME、PROC … ENDP 为伪指令,伪指令是发给汇编程序 ASM 的,而不和微处理器打交道,在汇编时不产生目标代码,只是把源程序中各段的设置情况告诉汇编程序。)段寄存器的段地址的装入
Assume 伪指令语句只是建立了当前段与段寄存器的联系,但不能把各段的段地址装入相应的段寄存器中,段寄存器的段地址的装入是在程序中完成的。(1)DS、ES、SS 的装入
由于段寄存器不能用立即数寻址方式直接传送,所以段地址装入可通过通用寄存器传送给段寄存器。MOV AX,逻辑段名 MOV 段寄存器,AX 其中逻辑段名为程序中定义各逻辑段的名字,(不包括代码段),段寄存器是指与各逻辑段相对应的各段寄存器(DS、ES、SS)。(2)CS 的装入
代码段寄存器是装当前执行目标代码的段地址,IP 是提供下一条要执行的目标代码的偏移量,为了保证程序的正确执行,CS 和 IP 装入新值时是一起完成的。对 CS 和 IP 的装入有如下几种情况:
①根据用户程序中的伪指令 END 后的标号为 CS 和 IP 提供代码段的段地址和目标代码的偏移地址。
②在程序运行过程中,当执行某些指令和操作时,CPU 自动修改 CS 和 IP 的值,使它们指向新的代码段。)程序中的数据与变量
在汇编源程序中的数据除了立即数,由指令产生的数和通过键盘输入的数以外,还胡大量的数据是通过伪指令语句进行预置和分配的,也就是在某逻辑段中(除代码段),将所需的数据以某种形式存放起来,在程序中可任意调用。在数据定义的同时还可以定义变量,将变量与数据结合在一起。可以为某个变量分配存储空间以便在程序执行过程中存放中间结果和最终结果,使用起来极为方便。
(1)变量与数据的定义
变量与数据的定义可以通过符号定义伪指令 EQU、=和数据定义伪指令 DB 或 DW 或 DD 来实现。EQU 和=可以出现在程序的逻辑段内也可出现在逻辑段外。
(2)汇编程序中数据的提供方法 ①用数据定义伪指令提供数据
如果程序要求原始数据为一批数据时,用数据定义伪指令 DB、DW 和 DD 来提供较为方便。②用立即数的形式提供数据
当原始数据只有几个时,一般用立即数的方法来提供。当然,用立即数的方法只是将一个数据传送到通用寄存器中,它只是通过通用寄存器传送数据。③用编程的方法提供数据
假如原始数据是一组有规律的数据项,则用编程序的方法形成这一组数据,不用专门为这组数据分配存储单元,节省了存储空间。④用键盘提供数据
当原始数据为任意数据时,一般用键盘输入方法,调用 DOS 21H 中断。
(3)数据的输出方式 ①在显示器上显示一个字符
调用 02H 号功能调用号,发 21H 号中断,将要显示的字符的 ASCII 码送入 DL,就可在显示器上显示该字符。②在打印机上输出一个字符
调用 05H 号功能调用号,发 21H 号中断,将要打印字符的 ASCII 码送入 DL,就可在打印机上打印出 DL 中的字符。
4)返回 DOS 状态的方法
当执行.EXE 文件时,是在 DOS 状态下进行的,如果希望在执行完.EXE 文件后正常返回 DOS 状态,一般用如下两种方法:采用 DOS 4CH 功能调用和采用返回(RET)断点的方法。
汇编处理 — 执行宏汇编程序 MASM.EXE
用汇编语言编写的源程序必须是一个完整的源程序。宏汇编程序对汇编语言源程序的汇编过程包括语法检查和数据代码汇编两部分,生成目标程序和辅助信息文件。为了完成汇编任务,汇编程序一般采用两遍扫描的方法,第一遍扫描源程序产生符号表、处理伪指令等,第二遍扫描产生机器指令代码、确定数据等。源程序用宏汇编程序翻译(汇编)后,可以得到三个文件:一个是扩展名为.OBJ 的目标文件,在该文件中,将源程序的操作码部分变为机器码,但地址操作数是可浮动的相对地址,而不是实际地址,因此需经 LINK 连接文件进行连接才能形成可执行文件。第二个文件是列表文件,扩展名为.LST,它把源程序和目标程序列表,以供检查程序用。第三个文件是交叉索引文件,扩展名为.CRF,它是一个对源程序所用的各种符号进行前后对照的文件。其中目标文件是必须产生的,而其它两个文件在需要时给予命令就可产生,对连接和执行汇编程序无直接的关系。)汇编操作过程
在 DOS 状态下,键入 MASM ↓则调入宏汇编程序,屏幕显示与操作如下: masm ↓ Microsoft(R)Macro Assemble Version 5.00 Copyright(C)Microsoft Corp 1981-1985,1987,All right reserved.Source filename [.ASM ]: MYFILE ↓ Object filename [MYFILE.OBJ ]: MYFILE ↓ Source listing [NUL.LST ]: MYFILE ↓ Cross-reference [NUL.CRF]: MYFILE ↓ 50678 + 410090 Bytes symbol space free 0 Warning Errors 0 Severe Errors 其中划线部分为用户键入部分,MYFILE 为源程序名(MYFILE.ASM),方括号中是机器规定的默认文件名,如果用户认为方括号内的文件名就是要键入的文件名,则可只在划线部分键入回车符。如果不想要列表文件和交叉索引文件,则可在 [NUL.LST ] 和 [NUL.CRF] 后不键入文件名只键入回车符。
当回答完上述四个询问后,汇编程序就对源程序进行汇编。在汇编过程中,如果发现源程序中有语法错误,则提示出错信息,指出是什么性质的错误,错误类型,最后列出错误的总数。之后可重新进入屏幕编辑状态,调入源程序(MYFILE.ASM)进行修改,修改完毕,再进行汇编,直到汇编通过为止。
如果在汇编时不需要产生列表文件(.LST)和交叉索引文件(.CRF),调用汇编程序时可用分号结束。如果需要产生.OBJ 和.LST 文件,不需要.CRF 文件,则在分号前面加两个逗号即可。如果 4 个文件都需要,用简便的操作方法是在分号前用了 3 个逗号。)列表文件(.LST)
列表文件(.LST)是通过汇编程序(MASM)产生的,可以在 DOS 状态下用 TYPE 命令显示或打印该文件,以便分析调试源程序。如显示 D 盘上已存在的列表文件 MYFILE.LST 操作方法如下: D> TYPE MYFILE.LST ;↓ 列表程序由三部分组成:(1)源程序和目标程序清单
列表程序同时列出源程序和对应的机器语言清单。列表程序的第一列给出每条指令所在行号;第二列给出从段的首地址开始的每条指令存放的偏移地址;接着是数字列,给出对应每条语句的机器码和对应于存放在栈段和数据段的值,在机器码加上“ R ”的指令表示:这条指令在连接时可能产生与列出来的偏移地址不同的地址,因为这些偏移地址可能与其它模块有关;最右边就是用汇编语言编写的源程序。(2)段信息汇总表
在段信息汇总表中列出该程序用了哪几个段,如:代码段 CODE、数据段 DATA 和堆栈段 STACK ;每个段所占存储空间的长度(字节数);每个段的定位类型,包括 PAGE(页)、PARA(节)、WORD(字)和 BYTE(字节),它们表示此段的起始边界要求,即起始边界地址应分别可以被 256、16、2 和 1 除尽。该列表清单 中是以 PARA 为 CODE 段、DATA 段和 STACK 段的起始边界地址。最后一列为段的组合类型;段的组合类型是告诉连接程序,本段与其它段的关系,组合类型有 NONE、PUBLIC、COMMOM、AT 表达式、STACK 和 MEMORY。NONE :表示本段与其它段不发生逻辑关系,即每段都有自己的基本地址。是隐含组合类型。
STACK :表明连接程序首先要把本段与同名同类别的其它段相邻地连接在一起,然后为所有定义为栈段的连接在一起的段,定义一个共同的段基地址,即连接成一个物理段。
在列表程序的源程序中只有一个栈段,在栈段定义中给出了组合类型为 STACK,因此在段信息汇总表中列出了该项,在本程序中它没有任何意义,因为没有其它栈段与它连接,只是为了说明这个问题而设置的。(3)符号汇总表
在列表程序中最后部分列出了符号汇总,是指在源程序中用户定义的符号名、类型、值和所在段。
如果在源程序中存在某些语法错误时,列表文件可提示某条语句有哪些错误,出错提示显示在出错指令行的下面,因此用户可借助列表文件很快地找到错误行,以便调试。另外由于列表文件给出了各条指令的偏移地址,对和程序时设置断点很方便。)交叉索引文件(.CRF)
汇编后产生的交叉索引文件,扩展名为.CRF, 它列出了源程序中定义的符号(包括:标号、变量等)和程序中引用这些符号的情况。如果要查看这个符号表,必须使用 CREF.EXE 的文件,它根据.CRF 文件建立一个扩展名为.REF 的文件,而后再用 DOS 的 TYPE 命令显示,就可以看到这个符号使用情况表。具体操作方法如下: D> CREF ↓
cref filename [.CRF] : MYFILE ↓ list filename [MYFILE.REF] : ↓ D> TYPE MYFILE.REF ↓
目标代码链接程序----LINK.EXE
用汇编语言编写的源程序经过汇编程序(MASM)汇编后产生了目标程序(.OBJ),该文件是将源程序操作码部分变成了机器码,但地址是可浮动的相对地址(逻辑地址),因此必须经过连接程序 LINK 连接后才能运行。连接程序 LINK 是把一个或多个独立的目标程序模块装配成一个可重定位的可执行文件,扩展名为.EXE 文件。此外还可以产生一个内存映象文件,扩展名为.MAP。1)连接程序执行过程
在 DOS 状态下,键入 LINK ↓(或 LINK MYFILE ↓)则系统调入 LINK 程序,屏幕显示操作如下: D> LINK ↓
IBM Personal Computer Linker Version 2.00(C)Copyright IBM Corp 1981,1982,1983 Object Modules [.OBJ] : MYFILE ↓ Run File [MYFILE.EXE] : MYFILE ↓ List File [NUL.MAP] : MYFILE ↓ Libraries [.LIB] : ↓
其中划线部分为用户键入部分,MYFILE 为源程序名,方括号内为机器默认文件名,当用户认为方括号中的文件名就是要键入的文件名时,可在冒号后面只键入回车。
其中 MAP 文件是否需要建立,由用户决定,需要则键入文件名,不需要则直接送入一个回车键。
最后一个询问是问是否在连接时用到库文件,对于连接汇编语言源程序的目标文件,通常是不需要的,因此直接键入回车键。
与汇编程序一样,可以在连接时用分号结束后续询问。例如:
D> LINK MYFILE ;↓
IBM Personal Computer Linker Version 2.00(C)Copyright IBM Corp 1981,1982,1983 连接后只产生 MYFILE.EXE 文件。如果除 MYFILE.EXE 文件外还要产生 MYFILE.MAP 文件,则在分号前加两个逗号。D> LINK MYFILE,;↓ IBM Personal Computer Linker Version 2.00(C)Copyright IBM Corp 1981,1982,1983 2)内存映象文件(.MAP)
由连接程序 LINK 产生的扩展名为.MAP 文件,它实际上是连接程序的列表文件,它给出了每个段的地址分配情况及长度。
在 DOS 状态下,用 TYPE 命令显示打印出来。例如: D> TYPE MYFILE.MAP ↓ Start Stop Length Name Class 00000H 0000FH 0010H DATA 00010H 0004FH 0040H STACK 00050H 0005FH 0010H CODE Origin Group Program entry point at 0005:0000 从中可以看到,源程序 MYFILE 中定义了三个段:数据段(DATA)起始地址为 00000H,终止地址为 0000FH,长度为 0010H 个字节;堆栈段(STACK)起始地址为 00010H,终止地址为 0004FH,长度为 0040H 个字节;代码段(CODE)起始地址为 00050H,终止地址为 0005FH,长度为 0010H 个字节。
应用程序执行
当用连接程序 LINK 将目标程序(.OBJ)连接定位后,可产生可执行的应用程序文件(.EXE),可以在 DOS 状态下执行该程序。执行操作如下: D> MYFILE ↓ 或 D> MYFILE.EXE ↓
在源程序 MYFILE 中如果有显示结果的指令,则在执行程序后可以看到执行结果;如需要动态调试应用程序 MYFILE.EXE,则可以借助动态调试程序 DEBUG.COM 来进行调试、运行,DEBUG 是一种支持命令行方式的汇编语言编程调试工具。
动态调试程序 DEBUG.COM 在编写和运行汇编程序的过程中,会遇到一些错误和问题,需要对程序进行分析和调试,调试程序 DEBUG 就是专为汇编语言设计的一种调试工具。它在调试汇编语言程序时有很强的功能,能使程序设计者接触到机器内部,能观察和修改寄存器和存储单元内容,并能监视目标程序的执行情况,使用户真正接触到 CPU 内部,与计算机产生最紧密的工作联系。
动态和程序 DEBUG 的主要特点 DEBUG 的执行 DEBUG 命令格式 主要 DEBUG 命令
动态和程序 DEBUG 的主要特点)能够在最小环境下运行汇编程序
在 DOS 状态下运行汇编程序,必须将程序经过 MASM 汇编程序,而后还要经过 LINK 连接程序产生可执行程序,才能最终运行,比较麻烦。在 DEBUG 状态下,为用户提供了调试、控制测试的环境,可以在此环境下进行编程、调试、监督、执行用户编写的汇编程序。因此调试周期短,为用户提供了极大的方便。2)提供极简单的修改手段
DEBUG 提供了修改命令,可以修改内存单元内容,修改寄存器的内容,为调试程序、修改程序带来了方便。3)提供用户与计算机内部联系的窗口
DEBUG 具有显示命令,它既可以使用户看到某内存单元或某一块单元内容,也可以看到 CPU 内部各寄存器的内容。用单步执行命令实现跟踪执行,每执行一步都使用户看到各寄存器的内容的变化,以便分析和调整程序。4)可装入、修改或显示任何文件
当然在 DEBUG 状态下运行汇编程序也具有一定局限性。在 DEBUG 状态下运行的程序不能使用宏汇编程序中的宏指令,大部分伪指令也不能使用,因此只能把程序分段调试。此外,不能调试太长的程序,只能分块进行中程序设计。在 DEBUG 状态下调试好的程序不能形成可执行文件(.EXE),因此调试好的程序只能记下,到编辑环境下重新键入调试好的程序,通过汇编程序(如 MASM),再通过连接程序(LINK)形成可执行文件(.EXE)。
DEBUG 的执行
在操作系统(DOS 或 WIndows)命令行方式下,直接调入 DEBUG 程序,键入命令的格式如下: D>DEBUG [d:][Path][filename[.ext]][Parm1][Parm2] 其中 [] 的内容为可选项,可以有也可以缺省。
[d:] 为驱动器号,指要调入 DEBUG 状态的可执行文件在哪个驱动器中,如 A:、B:、C: 等。[Path] 为路径,指要调入 DEBUG 状态的可执行文件是在哪个目录下或子目录下。
[filename[.ext]],指要调入 DEBUG 状态下的可执行文件的文件名,该文件可以是通过编辑、汇编、连接后产生的可执行文件,也可以是在 DEBUG 状态下汇编的程序 段,通过写盘命令 W 写入磁盘的文件。[Parm1][Parm2] 为任选参数,是给定文件的说明参数。
在启动 DEBUG 时,如果输入 filename(文件名),则 DEBUG 程序把指定文件装入内存,用户可以通过 DEBUG 的命令对指定文件进行修改、显示或执行。如果没有文件名,则是以当前内存的内容工作,或者用命名命令或装入命令把需要的文件装入内存,然后再通过 DEBUG 命令进行修改、显示或执行。当启动 DEBUG 程序后,屏幕上出现“—”,说明系统已进入 DEBUG 状态。DEBUG 命令格式(1)DEBUG 命令都是一个英文字母,后面跟着一个或多个有关参数。多个操作参数之间用“ , ”或空格隔开。(2)DEBUG 命令必须接着按 ENTER 键,命令才有效。
(3)参数中不论是地址还是数据,均用十六进制数表示,但十六进制数据后面不要用“ H ”。(4)可以用 Ctrl 和 Break 键来停止一个命令的执行,返回到 DEBUG 的提示符“—”下。(5)用 Ctrl - Num Lock 键中止正在上卷的输出行,再通过按任意键继续输出信息。主要 DEBUG 命令
(1)汇编命令 A
格式: a.A [ 段寄存器名 ]:[ 偏移地址 ] b.A [ 段地址 ]:[ 偏移地址 ] c.A [ 偏移地址 ] d.A 功能:用该命令可以将汇编语言程序直接汇编进入内存。
当键入 A 命令后,显示段地址和偏移地址等待用户键入汇编指令,每键入一条汇编指令回车后,自动显示下一条指令的段地址和偏移地址,再键入下一条汇编指令,直到汇编语言程序全部键入,又显示下一地址时可直接键入回车返回到提示符“-”为止。
其中 a 的段地址在段地址寄存器中,因此在使用该命令时必须将段地址寄存器送入段地址,c 的地址在 CS 中,d 的段地址在 CS 中,偏移地址为 100H。
(2)显示内存命令 D 格式: a.D [ 地址 ] b.D [ 地址范围 ] c.D 功能:显示指定内存范围的内容。
显示的内容为两种形式:一种为十六进制内容,一种为与十六进制相对应的 ASCII 码字符,对不可见字符以“·”代替。
对于 a、c 每次显示 128 个字节内容,b 显示的字节数由地址范围来决定。
若命令中有地址,则显示的内容从指定地址开始,若中中无地址(如 c)则从上一个 D 命令所显示的最后一个单元的下一个单元开始。若以前没有使用过 D 命令,则以 DEBUG 初始化的段寄存器的内容为起始段地址,起始偏移地址为 100H,即 CS:100。
对于 a 中的地址为偏移地址,段地址为 CS 的内容,对 b 中的地址范围,可以指定段地址和起始偏移地址和终止偏移地址。
(3)修改存储单元内容命令 E 格式: a · E [ 地址 ] [ 内容表 ] b · E [ 地址 ] 功能: a ·用命令所给定的内容表去代替指定地址范围的内存单元内容。b ·一个单元一个单元地连续修改单元内容。
其中:内容表为一个十六进制数,也可以是用单引号括起的一串字符。
(4)填充内存命令 F
格式: F [ 范围 ][ 单元内容表 ] 功能:将单元内容表中的内容重复装入内存的指定范围内。
(5)内存搬家命令 M
格式: M [ 源地址范围 ][ 目标起始地址 ] 其中源地址范围和目的起始地址为偏移地址,段地址为 DS 的内容。功能:把源地址范围的内容搬至以目标起始地址开始的存储单元中。
(6)比较命令 C
格式: C [ 源地址范围 ],[ 目标地址 ] 其中源地址范围是由起始地址和终止地址指出的一片连续的存储单元,目标地址为与源地址所指单元对比的目标地址起始地址。功能:从源地址范围是由起始的地址单元开始逐个与目标起始地址往后的单元顺序比较每个单元内容,比较到源终止地址为止。比较结果如果一致则不显示任何信息,如果不一致,则以 [ 源地址 ][ 源内容 ][ 目的内容 ][ 目的地址 ] 的形式显示失败单元地址及内容。
(7)搜索指定内容命令 S 格式: S [ 地址范围 ][ 表 ] 功能:在指定地址范围内搜索表中内容,搜索到就显示表中元素所在地址。
(8)检查和修改寄存器内容命令 R 格式: a · R b · R [ 寄存器名 ] 功能: a ·显示 CPU 内部所有寄存器的内容和全部标志位的状态。b ·显示和修改一个指定寄定器的内容和标志位的状态。
其中对状态标志寄存器 FLAG 以位的形式显示,显示时,8 个状态标志的显示次序和符号如表 B - 1 所示。表 B - 1 状态标志显示形式
标 志 位 溢出标志 OF 方向标志 DF 中断标志 IF 符号标志 SF 零标志 ZF 辅助进位 AF 奇偶标志 PF 进位标志 CF
(9)跟踪与显示命令 T
格式: a · T[ =地址 ] 或 T [ 地址 ] b · T[ =地址 ][ 条数 ] 或 T [ 地址 ][ 条数 ] 功能: a ·执行一条指定地址处的指令,停下来,显示 CPU 所有寄存器内容和全部标志位的状态,以及下一条指令的地址和内容。
b ·为多条跟踪命令,从指定地址开始;若命令中用 [ 地址 ] 给定了起始地址,则从起始地址开始,若未给定,则从当前地址(CS:IP)开始,执行命令中的 [ 条数 ] 决定一共跟踪几条指令后返回 DEBUG 状态。
(10)反汇编命令 U 格式: a · U [ 地址 ] b · U [ 地址范围 ] 功能:将指定范围内的代码以汇编 语言形式显示,同时显示该代码位于内存的地址和机器。
若在命令中没有指定地址则以上一个 U 命令的最后一条指令地址的下一个单元作为起始地址;若没有输入过 U 命令,则以 DEBUG 初始化段寄存器的值作为段地址,以 0100H 作为偏移地址。
(11)命名命令 N 格式: N 文件名
功能:在调用 DEBUG 时,没有文件名,则需要用 N 命令将要调用的文件名格式化到 CS:5CH 的文件控制块中,才能用 L 命令把它调入内存进行调试(其它形式参考 DOS 手册)。
(12)读盘命令 L
格式: a · L [ 地址 ][ 驱动器号 ][ 起始扇区号 ][ 所读扇区个数 ] b · L [ 地址 ] c · L 功能: a ·把指定驱动器和指定扇区范围的内容读到内存的指定区域中。其中地址是读入内存的起始地址,当输入时没有给定地址,则隐含地址为 CS:100H。起始扇区号指逻辑扇区号的起始位置。所读扇区个数是指从起始扇区号开始读到内存几个扇区的内容。驱动器号为 0 或 1,0 表示 A 盘,1 表示 B 盘。
b ·读入已在 CS:5CH 中格式化的文件控制块所指定的文件。在使用该命令前用 N 命令命名即可将要读入的文件名格式化到 CS:5CH 的文件控制块中,其中地址为内存地址。
状 态 有 / 无 增 / 减 开 / 关 负 / 正 零 / 非 有 / 无 偶 / 奇 有 / 无
显示形式(置位 / 复位)
OV/NV DN/UP EI/DI NG/PL ZR/NZ AC/NA PE/PO CY/NC c ·同 b ·地址隐含在 CS : 100H 中。
当读入的文件有扩展名.COM 或.EXE,则始终装入 CS:100H 中,命令中指定了地址也没用。其中 BX 和 CX 中存放所读文件的字节数。
(13)写盘命令 W
格式: a · W[ 地址 ][ 驱动器号 ][ 起始扇区号 ][ 所写扇区个数 ] b · W[ 地址 ] c · W 功能: a · 把在 DEBUGU 状态下调试的程序或数据写入指定的驱动器中 , 起始扇区号 , 所写扇区个数为要占盘中几个扇区。
写盘指定扇区的操作应十分小心,如有差错将会破坏盘上的原有内容。如果在命令行中的地址只包含偏移地址,W 命令认为段地址在 CS 中。
b ·当键入不带参数的写盘命令时,(或只键入地址参数的写盘命令),写盘命令把文件写到软盘上。该文件在用 W 命令之前用命名命令 N 将文件格式化在 CS:5CH 的文件控制块中。c ·只有 W 命令以前而没有任何参数时,与 N 配合使用进行写盘操作。在用 W 命令以前在 BX 和 CX 中应写入文件的字节数。
(15)输出命令 O
格式: O[ 端口地址 ] [ 字节值 ] 功能:向指定端口地址输出一个字节。
(16)运行命令 G
格式: G [ =地址 ][ 地址 [ 地址… ]] 功能:执行用户正在调试的程序。
其中地址为执行的起始地址,以 CS 中内容作为段地址,以等号后面的地址为偏移地址。再后面的地址为断点地址。在命令行中只有起始地址,没有断点地址,则程序在执行时不中断。DEBUG 规定最多设置 10 个断点地址。设置多个断点用于调试较大的程序,即程序中有多个模块、多个通路时用,比较方便,在执行时不论走哪条通路,程序都可以在断点处停下来,以便调整程序。
断点地址为程序中断处的偏移地址,段地址在 CS 中。
当执行在 DEBUG 状态下汇编的小段程序时,只用 G 命令即可。
(17)十六进制运算命令 H 格式: H 数据 1 数据 2 其中数据 1 和数据 2 为十六进制数据。
功能:将两个十六进制数进行相加、减,结果显示在屏幕上。(18)结束 DEBUG 返回到 DOS 命令 Q 格式: Q 功能:程序调试完退出 DEBUG 状态,返回到 DOS 状态下。
Q 命令不能把内存的文件存盘,要想存盘必须在退出 DEBUG 之前用 W 命令写盘
读书的好处
1、行万里路,读万卷书。
2、书山有路勤为径,学海无涯苦作舟。
3、读书破万卷,下笔如有神。
4、我所学到的任何有价值的知识都是由自学中得来的。——达尔文
5、少壮不努力,老大徒悲伤。
6、黑发不知勤学早,白首方悔读书迟。——颜真卿
7、宝剑锋从磨砺出,梅花香自苦寒来。
8、读书要三到:心到、眼到、口到
9、玉不琢、不成器,人不学、不知义。
10、一日无书,百事荒废。——陈寿
11、书是人类进步的阶梯。
12、一日不读口生,一日不写手生。
13、我扑在书上,就像饥饿的人扑在面包上。——高尔基
14、书到用时方恨少、事非经过不知难。——陆游
15、读一本好书,就如同和一个高尚的人在交谈——歌德
16、读一切好书,就是和许多高尚的人谈话。——笛卡儿
17、学习永远不晚。——高尔基
18、少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。——刘向
19、学而不思则惘,思而不学则殆。——孔子
20、读书给人以快乐、给人以光彩、给人以才干。——培根
第三篇:大型主题公园项目可行性研究报告**(编写格式)
www.xiexiebang.com
大型主题公园项目可行性研究报告
编制大纲
编写单位:河南助阵投资咨询有限公司
二〇一六年七月
www.xiexiebang.com
目录
一、什么是可行性研究报告..........................................................................................1
二、哪些项目需要编报项目可行性研究报告................................................................1
三、可行性研究报告主要用途有哪些...........................................................................2
1、用于企业融资、对外招商合作.................................................................................2
2、用于国家发展和改革委立项.....................................................................................2
3、用于银行贷款.............................................................................................................2
4、用于企业上市的募投项目.........................................................................................2
5、用于申请政府资金.....................................................................................................2
6、用于申请进口设备免税.............................................................................................2
四、国家发改委甲级资质的意义...................................................................................3
五、大型主题公园项目可行性研究报告编制大纲及范文目录.......................................3 第一章 主题公园项目总论.............................................................................................3 第二章 法人基本情况.....................................................................................................4 第三章 主题公园市场需求预测.....................................................................................4 第四章 主题公园项目建设规模与生产方案.................................................................4 第五章 主题公园项目建设选址及土建工程.................................................................4 第六章 主题公园项目环境保护.....................................................................................5 第七章 主题公园项目劳动保护安全卫生及消防.........................................................5 第八章 主题公园项目节能分析.....................................................................................5 第九章 主题公园项目风险分析及风险防控.................................................................6 第十章 主题公园项目实施管理和劳动定员.................................................................6 第十一章 实施进度计划.................................................................................................7 第十二章 主题公园项目投资估算与资金筹措.............................................................7 第十三章 主题公园项目经济评价.................................................................................7 第十四章 主题公园项目综合评价及投资建议.............................................................8 第十五章 主题公园项目附表及附图.............................................................................8
六、可行性研究报告编制要求......................................................................................9
七、可行性研究报告的编制依据.................................................................................10
I
www.xiexiebang.com
八、工程咨询服务流程...............................................................................................10
九、可研编制单位的优势............................................................................................11
十、可研的编制时间及收费标准.................................................................................12
II
www.xiexiebang.com
【报告导读】
《大型主题公园项目可行性研究报告》本报告是针对行业投资可行性研究咨询服务的专项研究报告,此报告为个性化定制服务报告,我们将根据不同类型及不同行业的项目提出的具体要求,修订报告目录,并在此目录的基础上重新完善行业数据及分析内容,为企业项目立项、批地、融资提供全程指引服务。
《大型主题公园项目可行性研究报告》主要是通过对谢谢观光项目的主要内容和配套条件,如市场需要、资源供应、建设规模、工艺路线、设备选型、环境影响、资金短途筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对主题公园项目建成以后可能取得的财务、经济效益及社会影响进行预测,从而提出该主题公园项目是否值得投资和如何进行建设的咨询意见,为主题公园项目决策提供依据的一种综合性分析方法。可行性研究具有预见性、公正性、可靠性、科学性的特点。
《大型主题公园项目可行性研究报告》是确定建设主题公园项目前具有决定性意义的工作,是在投资决策之前,对拟建主题公园项目进行全面技术经济分析论证的科学方法,在投资管理中,可行性研究是指对拟建主题公园项目有关的自然、社会、经济、技术等进行调研、分析比较以及预测建成后的社会经济效益。
一、什么是可行性研究报告
可行性研究报告是在前一阶段的项目建议书获得审批通过的基础上,对项目市场、技术、财务、工程、经济和环境等方面进行精确系统、完备无遗的分析,完成包括市场和销售、规模和产品、厂址、原辅料供应、工艺技术、设备选择、人员组织、实施计划、投资与成本、效益及风险等的计算、论证和评价,选定最佳方案,作为决策依据。
二、哪些项目需要编报项目可行性研究报告
根据国家发改委的相关规定,“投资体制改革之后,可行性研究报告的主要功能是满足企业自主投资决策的需要,其内容和深度可由企业根据决策需要和项目情况相应确定。”这样,项目可行性研究报告的功能和作用发生了重大变化。目前各地发改委对此的要求也不尽一样,根据助阵投资咨询掌握的情况是,1、政府投资项目需要报批项目可行性研究报告,2、国家鼓励类内资进口设备申请免税的项目需要提供项目可行性研究报告。但是在很多地区,在进行项目核准时,发改委仍然要求提供可行性研究报告。这就需要项目单位及时咨询发改委的相关人员,明确具体要求,以免影响项目核准。
www.xiexiebang.com
三、可行性研究报告主要用途有哪些
可研报告的用途可分为审批性可研报告和决策性可研报告。审批性可研报告主要是项目立项时向政府审批部门申报的书面材料。根据国家投资体制改革要求,我国大部分地区,企业投资类项目采取项目备案制和项目核准制(编制项目申请报告);政府性项目,使用财政资金的编制可研报告。可以细分为:
1、用于企业融资、对外招商合作
此类研究报告通常要求市场分析准确、投资方案合理、并提供竞争分析、营销计划、管理方案、技术研发等实际运作方案。
2、用于国家发展和改革委立项
此文件是根据《中华人民共和国行政许可法》和《国务院对确需保留的行政审批项目设定行政许可的决定》而编写,是大型基础设施项目立项的基础文件,发改委根据可行性研究报告进行核准、备案或批复,决定某个项目是否实施。另外医药企业在申请相关证书时也需要编写可行性研究报告。
3、用于银行贷款
商业银行在贷款前进行风险评估时,需要项目方出具详细的可行性研究报告,对于国家开发银行等国内银行,该报告由甲级资格单位出具,通常不需要再组织专家评审,部分银行的贷款可行性研究报告不需要资格,但要求融资方案合理,分析正确,信息全面。另外在申请国家的相关政策支持资金、工商注册时往往也需要编写可行性研究报告,该文件类似用于银行贷款的可研报告。
4、用于企业上市的募投项目
这类可行性报告通常需要出具国家发改委的甲级工程咨询资格。中研普华为多家创业板和中小板企业提供募投项目可行性研究报告编写服务(包括已经上市和正准备上市的),积累的丰富的编写经验。
5、用于申请政府资金
用于申请政府资金(发改委资金、科技部资金、农业部资金)的可行性研究报告:这类可行性报告通常需要出具国家发改委的甲级工程咨询资格。
6、用于申请进口设备免税
主要用于进口设备免税用的可行性研究报告,申请办理中外合资企业、内资企业项目确认书的项目需要提供项目可行性研究报告。
www.xiexiebang.com
在上述六种可研中,其中用于立项、企业上市、银行贷款、申请政府资金和申请进口设备免税的可行性研究报告准入门槛最高,需要编写单位拥有工程咨询资格,该资格由国家发展和改革委员会颁发,分为甲级、乙级、丙级三个等级,其中甲级最高。
四、国家发改委甲级资质的意义
用于国家发展和改革委立项的可行性研究报告、项目建议书、项目申请报告,该文件是根据《中华人民共和国行政许可法》和《国务院对确需保留的行政审批项目设定行政许可的决定》而编写,是大型基础设施项目立项的基础文件,发改委根据可研报告进行核准、备案或批复,决定某个项目是否实施。另外医药企业在申请相关证书时也需要编写可行性研究报告。
资质专业范围涉及农业、林业、轻工、电子、机械、纺织、化纤、化工、医药、水电、钢铁、公路、建筑、建筑材料、水利工程、综合经济、通信信息、有色冶金、石油天然气、城市规划、城市轨道交通、广播电影电视、港口河海工程、市政公用工程(给排水、环境卫生、风景园林、燃气热力、公共交通、桥隧、道路)、生态建设和环境工程、其他(节能、旅游、商物粮)等领域。
可提供国家发改委颁发的甲级、乙级、丙级工程咨询资质证书
五、大型主题公园项目可行性研究报告编制大纲及范文目录
以下为参考目录,具体可根据项目情况做出调整。
目 录
第一章 主题公园项目总论
1.1名称及承办单位 1.2拟建地址
1.3 可行性研究的目的
1.4 可行性研究报告编制依据和范围
1.4.1 可行性报告编制依据 1.4.2可行性研究报告编制范围 1.5 研究的主要过程
1.6 主题公园建设规模与产品方案 1.7 总投资估算
www.xiexiebang.com
1.8主题公园工艺技术装备方案的选择 1.9 项目建设期限 1.10投资备案数据备
案数据一览表 1.11 研究结论 1.12主要经济技术指标
主要经济技术指标一览表
第二章 法人基本情况
2.1法人概况 2.1承办单位概况
第三章 主题公园市场需求预测
第四章 主题公园项目建设规模与生产方案
4.1 建设规模的确定原则 4.2 建设规模 4.3生产纲领
产品纲领规划一览表
第五章 主题公园项目建设选址及土建工程
5.1 建设地选择原则 5.2 建设地概况 5.3 建设选址方案
5.4 选址用地权属性质类别及占地面积 5.5 用地利用指标
占地及建筑工程投资一览表 5.6 建筑工程方案
5.6.1建筑工程概况 5.6.2建筑结构设计 5.6.3标准化厂房设计 5.7 选址综合评价
总图布置主要技术经济指标一览表
www.xiexiebang.com
第六章 主题公园项目环境保护
8.1 环境保护设计依据 8.2 污染物的来源 8.2.1建设期污染源 8.2.2 运营期污染源 8.3 污染物的治理
8.3.1施工期环境影响简要分析及治理措施
施工机械在不同距离处的贡献值一览表 8.3.2营运期环境影响分析及治理措施
办公及生活废水处理流程图 生活及办公废水治理效果一览表 8.4 环境保护分析 8.5 厂区绿化工程 8.6 环境保护结论
第七章 主题公园项目劳动保护安全卫生及消防
9.1 劳动保护和安全卫生
9.1.1 设计标准及规定
9.1.2 主要不安全因素及职业危害因素 9.1.3采取的主要防范措施 9.2 安全生产措施 9.3 消防
9.3.1 设计原则 9.3.2 主要防范措施
第八章 主题公园项目节能分析
10.1 建设的节能方向 10.2 设计依据及用能标准
10.2.1 节能政策依据
10.2.2 主题公园行业标准、规范、技术规定和技术指导 10.3 节能背景及目标
www.xiexiebang.com
10.4 能源消耗种类和数量分析
10.4.1 生产主要耗能装置及能耗种类和数量
主要能源和含耗能工质年需量测算表 10.4.2 单位产品能耗指标测算
单位能耗估算一览表
10.5 用能品种选择的可靠性分析 10.6 主题公园工艺设备节能措施 10.7 电力节能措施 10.8 节水措施 10.9运营期节能原则 10.10 运营期主要节能措施 10.11能源管理
10.11.1管理组织和制度 10.11.2 能源计量管理
10.12 主题公园节能建议及效果分析
10.12.1节能建议 10.12.2节能效果分析 主要能耗指标一览表
第九章 主题公园项目风险分析及风险防控
11.1政策风险分析及风险防控 11.2用地及工程建设配套风险分析 11.3市场风险分析及风险防控 11.4资金风险分析及风险防控 11.5原材料采购风险分析及风险防控 11.6环保因素风险分析及风险防控 11.7风险评价结论
风险因素和风险程度分析表
第十章 主题公园项目实施管理和劳动定员
12.1 建设期管理组织
www.xiexiebang.com
12.2 建设期管理 12.3 工作制度 12.4 劳动定员
劳动定员一览表
第十一章 实施进度计划
第十二章 主题公园项目投资估算与资金筹措
14.1 投资估算依据和说明
14.1.1 总投资估算编制依据 14.1.2 投资费用分析
14.1.3 固定资产投资(固定资产)14.1.4 固定资产投资估算
固定资产投资估算表 14.1.5流动资金估算
主题公园流动资金估算一览表 14.1.6总投资估算
主题公园总投资构成分析一览表
14.2资金筹措方案
资金筹措方案 资金筹措与投资计划表 14.3 投资使用方案
14.3.1 建设投资使用计划 14.3.2 流动资金使用计划
主题公园资金使用计划与运用表
第十三章 主题公园项目经济评价
15.1 经济评价的依据和范围 15.2 费用估算与财务效益
15.2.1销售收入估算
主题公园产品销售收入及税金估算一览表 15.2.2综合总成本估算
www.xiexiebang.com
综合总成本费用估算表 15.2.3 利润总额估算 15.2.4 所得税及税后利润 15.2.5投资收益率测算
主题公园综合损益表
15.3 财务分析
15.3.1 全部投资财务分析
财务现金流量表(全部投资)15.3.2 固定资产投资财务分析
财务现金流量表(固定投资)
15.4 盈亏平衡分析
主题公园生产盈亏平衡分析表 15.5 敏感性分析
单因素敏感性分析表
第十四章 主题公园项目综合评价及投资建议
16.1 综合评价 16.2 投资建议
第十五章 主题公园项目附表及附图
固定资产投资估算一览表 流动资金估算一览表 固定资产折旧和摊销一览表 综合总成本费用估算一览表 产品销售收入及税金估算一览表 综合损益估算一览表 资金筹措与投资计划一览表 资金来源与运用一览表
财务现金流量一览表(全部投资)财务现金流量一览表(固定资产投资)资产负债表
www.xiexiebang.com
建设招标方案和不招标申请表 盈亏平衡分析一览表 盈亏平衡分析图 借款还本付息估算一览表
六、可行性研究报告编制要求
因为各行业及项目性质不同,具体项目的可行性研究报告内容也有区别,具体可以参考编制大纲对各行业项目可行性研究报告内容的介绍:
投资必要性:主要根据市场调查及分析预测的结果,以及有关的产业政策等因素,论证项目投资建设的必要性;技术的可行性:主要从事项目实施的技术角度,合理设计技术方案,并进行比选和评价。
财务可行性:主要从项目及投资者的角度,设计合理财务方案,从企业理财的角度进行资本预算,评价项目的财务盈利能力,进行投资决策,并从融资主体(企业)的角度评价股东投资收益、现金流量计划及债务清偿能力。
组织可行性:制定合理的项目实施进度计划、设计合理组织机构、选择经验丰富的管理人员、建立良好的协作关系、制定合适的培训计划等,保证项目顺利执行。
经济可行性:主要是从资源配置的角度衡量项目的价值,评价项目在实现区域经济发展目标、有效配置经济资源、增加供应、创造就业、改善环境、提高人民生活等方面的效益。
社会可行性:主要分析项目对社会的影响,包括政治体制、方针政策、经济结构、法律道德、宗教民族、妇女儿童及社会稳定性等。
风险因素及对策:主要是对项目的市场风险、技术风险、财务风险、组织风险、法律风险、经济及社会风险等因素进行评价,制定规避风险的对策,为项目全过程的风险管理提供依据。
许多投资项目的可行性研究不重视项目投资风险预测,仅局限于不确定性分析中简单的风险技术分析,甚至只凭借经验和直觉主观臆断,对项目建成后可能出现的风险因素预测不够,为项目的实施留下安全隐患、因此,强化投资风险意识,做好建设项目前期工作中可行性研究的风险预测,制定防范和化解措施,是避免决策失误,为建设项目科学化、民主化决策提供可靠依据的根本保证。
www.xiexiebang.com
七、可行性研究报告的编制依据
国家有关的发展规划、计划文件,包括对该行业的鼓励、特许、限制、标上等有关规定; 项目主管部门对项目建设要请求的批复; 项目审批文件;
项目承办单位委托进行详细可行性分析的合同或协议; 企业的初步选择报告; 主要工艺和装置的技术资料; 拟建地区的环境现状资料;
项目承办单位与有关方面签订的协议,如投资、原料供应、建设用地、运输等方面的初步协议;
国家和地区关于工业建设的法令、法规。如“三废”排放标准、土地法规、劳动保护条例等;
国家有关经济法规、规定。如中外合资企业法、税收、外资、贷款等规定;国家关于建设方面的标准、规范及定额资料等。
在项目可行性研究报告编制过程中,尤其是对项目做账务、经济评价时,还需要参考如下相关文件:
《中华人民共和国会计法》,[主席令第24号],2000年1月1日起实施; 《企业会计准则》,[财政部令第5号],2007年1月1日起实施;
《中华人民共和国企业所得税法实施条例》,[国务院令第512号],2008年1月1日起实施; 《中华人民共和国增值税暂行条例实施细则》,[财政部、国家税务总管局令第50号]2009年1月1日起实施;
《建设项目经济评价方法与参数(第三版)》,国家发展与改革委员会2006年审核批准施行;
项目必须遵守的国内外其他工商税务法律文件等。
八、工程咨询服务流程
助阵有严格的策划编制流程,从资料收集整理到最后的修改完善、排版,都具有详细的作业标准。
www.xiexiebang.com
九、可研编制单位的优势
助阵的优势如下:
人员优势:拥有庞大的行业专家及顾问团队,公司管理团队成员均从事项目咨询及资质认证工作多年,取得国家统一考试的注册咨询(投资)工程师资格证书,大部分来自于研究院所与设计院,不仅拥有高级职称或博士硕士学位,而且拥有十几年的项目策划与管理经验。
专业优势:拥有一支兼具调查统计、行业分析和市场研究与管理咨询经验的专业队伍,注重客户差异化需求,有利于把握专业领域的运作特点,能够提供并能满足客户的个性化、专业化需求。
经验优势:拥有多年积聚的庞大的行业专家及顾问团队,具有上千个可查询的完整的投资分析报告。庞大的顾问团队可以迅速为您的项目工程组成专项服务小组,专项小组人才集
www.xiexiebang.com
专业性、投资策划、财务、项目管理与市场营销以及实践经验于一体。
服务优势:本着“诚信、专业、权威、时效”的服务理念,以客户为中心,对项目实行了解、沟通、审稿、修改、定稿的全过程、全方位服务。公司承诺:由我公司编制的技术报告提供终生免费修改服务(不改变项目规模和建设内容)。
十、可研的编制时间及收费标准
编写时间:一般为3-7个工作日(不含评审时间),可根据客户要求,按时出稿。收费标准:根据项目所属行业、投资规模、项目承建单位提供的基础资料详细程度、项目文件的用途、项目文件要求撰写的深度和是否需要附资质盖章来计费。
大型主题公园项目可行性研究报告是由河南助阵投资咨询有限公司原创,用个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。如果转载本文内容请注明出处,并征得本网站及相关权利人的许可。
可行性研究报告
更多案例请登录:http://www.xiexiebang.com
第四篇:编写PLC程序一些心得
1.PLC和上位机(或触摸屏)组成监控系统时,在画面上很多时候需要有“手动”,“自动”等控制模式(一般都是多个只能一个时).在程序里面可以用“MOV” 指令.如:当选择“手动” 就将常数 1 MOV 到一个寄存器里面, 当选择“自动” 就将 2 MOV 到 同一寄存器.只要判断寄存器的数据是多少,就知道系统是那种控制方式.这样的思路好处是容易理解,不需要互锁之类的麻烦程序.2.程序有模拟量控制时, 如果读取的模拟量基本上没误差, 可以采取时间滤波的方式,延时一段时间(我做过一个系统,基本上能正常反映实际情况,但是偶尔会出现一次很大跳动,由于没有加滤波,引起了系统停机,其实不算故障).如果读取的数据误差很大, 就需要采取其它的滤波方式.如算平均值等.可以查阅相关的资料.3.在程序调试过程中(特别是设备改造时,你的程序是加入到原来设备的程序中时), 当程序语句中出现 条件满足, 而 输出线圈不接通 时, 可以检查你的这段程序是否是在这样的语句之间, 如 JUMP goto 等语句.还有一种可能就是在中断程序之后.条件满足而没输出不接通,一般都是这段的程序不被扫描.4.在 顺序 控制程序时, 即一个动作完成后,进入到下一个动作,等类似的顺序控制.采用 +1+1控制模式,本人觉得很方便.其思路是: 预置一个寄存器.在初始化时值为 0, 当系统启动后, 对它+1, 此时寄存器为1 ,寄存器等于1 时可以做第一个动作;第一个动作完成后, 再对寄存器 +1 , 此时寄存器等于 2, 可以做第二个动作,第二个动作完成后又 +1 , 此时寄存器等于 3 , 这样只要判断寄存器里面数据为多少,就知道要完成那个动作.当需要跳跃动作时,可以不再 +1, 可以加 +2 +3...., 看实际的需要拉.本人有相关的程序,可以供参考,在工程中,本人用到了好多次了.效果很好.5.在设计程序的时候, 当出现工艺上的故障(非控制系统控制), 最好将故障现象保持,并有灯光声音报警.知道操作工 复位 , 以让其知道系统出现了故障.不然停机了,别人还认为你的程序问题.一般都是在设计一个新系统时,要注意到这些.
第五篇:程序流程图编写规范 (终极整理版)- 免费
程序流程图规范
1.引言
国际通用的流程图形态和程序:
开始(六角菱型)、过程(四方型)、决策(菱型)、终止(椭圆型)。在作管理业务流程图时,国际通用的形态:方框是流程的描述;菱形是检查、审批、审核(一般要有回路的);椭圆一般用作一个流程的终结;小圆是表示按顺序数据的流程;竖文件框式的一般是表示原定的程序;两边文件框式的一般是表示留下来的资料数据的存储。
2.符号用法
程序流程图用于描述程序内部各种问题的解决方法、思路或算法。
图1-1 标准程序流程图符号
1)数据:平行四边形表示数据,其中可注明数据名、来源、用途或其它的文字说明。此符号并不限定数据的媒体。
2)处理:矩形表示各种处理功能。例如,执行一个或一组特定的操作,从而使信息的值,信息形式或所在位置发生变化,或是确定对某一流向的选择。矩形内可注明处理名或其简要功能。3)特定处理:带有双纵边线的矩形表示已命名的特定处理。该处理为在另外地方已得到详细说明的一个操作或一组操作,便如子例行程序,模块。矩形内可注明特定处理名或其简要功能。4)准备:六边形符号表示准备。它表示修改一条指令或一组指令以影响随后的活动。例如,设置开关,修改变址寄存器,初始化例行程序。
5)判断:菱形表示判断或开关。菱形内可注明判断的条件。它只有一个入口,但可以有若干个可供选择的出口,在对符号内定义各条件求值后,有一个且仅有一个出口被激活,求值结果可在表示出口路径的流线附近写出。
6)循环界限:循环界限为去上角矩形或去下角矩形,分别表示循环的开始和循环的结束。一对符号内应注明同一循环标识符。可根据检验终止循环条件在循环的开始还是在循环的末尾,将其条件分别在上界限符内注明(如:当A>B)或在下界限符内注明(如:直到C 图1-2 两种循环表示 7)连接符:圆表示连接符,用以表明转向流程图的它处,或从流程图它处转入。它是流线的断点。在图内注明某一标识符,表明该流线将在具有相同标识符的另一连接符处继续下去(参看以下关于连接符使用的约定)8)端点符:扁圆形表示转向外部环境或从外部环境转入的端点符。例如,程序流程的起始或结束,数据的外部使用起点或终点。 9)注解符:注解符由纵边线和虚线构成,用以标识注解的内容。虚线须连接到被注解的符号或符号组合上。注解的正文应靠近纵边线。请参看图1-3给出的注解符使用示例。 图1-3 注解符的使用 10)流线:直线表示控制流的流线。关于流线上表示流向的箭头,其使用方法见后面的约定。11)虚线:虚线用于表明被注解的范围或连接被注解部分与注解正文,参看图1-3。 12)省略符:若流程图中有些部分无需给出符号的具体形式和数量,可用三点构成的省略符。省略符应夹在流线符号之中或流线符号之间,参看图1-4。 图1-4 省略符的使用 — 2 — 13)并行方式: 一对平行线表示同步进行两个或两个以上并行方式的操作。并行方式的示例如图1-5,图中在处理A完成后才能进行处理C、D和E。同样,处理F要等处理B、C、D完成以后进行。但处理C可以在处理D开始和(或)结束前开始和(或)结束。 图1-5 并行方式示例 3.基本结构 三种基本机构的流程图画法: 1)顺序结构:简单的线性结构,各处理单元按顺序执行 2)选择(分支)结构:对某个给定条件进行判断,条件为真或假时分别执行不同框的内容 3)循环结构:循环结构有两种基本形态:while型循环和do-while型循环 a.while型循环:其执行序列为,当条件为真时,反复执行A,一旦条件为假,跳出循环,执行循环紧后的语句 b.do-while型循环:其执行序列为,首先执行A,再判断条件,条件为真时,一直循环执行A,一旦条件为假,结束循环,执行循环紧后的下一条语句 注意: a.在循环体内,必须要对条件要判断的值进行修改,使得经过有限次循环后,循环一定能结束 b.当型循环中循环体可能一次都不执行,而直到型循环则至少执行一次循环体 c.直到型循环可以很方便的转化为当型循环,而当型循环不一定能转化为直到型循环 — 3 — 4.使用约定 关于流程图符号的使用约定,简要地说明以下几点: 4)图的布局 流程图中所用的符号应该均匀地分布,连线保持合理的长度,并尽量少使用长线 5)符号的形状 流程图中多数符号内的空白供标注说明性文字。使用各种符号应注意符号的外形和各符号大小的统一,避免使符号变形或各符号大小比例不一。6)符号内的说明文字 应使符号内的说明文字尽可能简明,用动词或动词+名词表示做什么。通常按从左向右和从上向下方式书写,并与流向无关。如果说明文字较多,符号内写不完,可使用注解符。若注解符干扰或影响到图形的流程,应将正文写在另外一页上,并注明引用符号。7)符号标识符 为符号规定标识符是为了便于其它文件引用该符号。便如,程序清单中引用到流程图中的特定符号。符号标识符一般写在符号的左上角,参看图2-1(a)。 图2-1(a)符号标识符和符号描述符 8)符号描述符 为便于进一步理解符号的功能,可标注符号描述符。通常描述符写在符号的右上角,如图2-1(b)所示。9)详细表示 在处理符号或数据符号中画一横线,表明该符号在同一文件集中的其它地言有更为详细的表示。横线在符号内靠近项端,详细表示的标识符写在符号内横线之上,见图2-2(a)。端点符用作详细表示的开始符号和结束符号,在此符号中应给出加横线符号中的标识符,见图2-2(b)。 图2-2 加横线符号及其详细表示 10)流线 a.标准流向与箭头的使用 — 4 — 流线的标准流向是从左到右和从上到下。沿标准流向的流线可不用箭头指示流向,但沿非标准流向的流线应用箭头指示方向。b.流线的交叉 应当尽量避免流线的交叉。即使出现流线的交叉,交叉的流线之间也没有任何逻辑关系,并不对流向产生任何影响,如图2-3(a)所示。c.流线的汇集 两条或多条进入线可以汇集成一条输出线,此时各连接点应要互错工以提高清晰度,并用箭头表示流向,如图2-3(b)所示。 图2-3 汉线的交叉与流线的汇集 d.符号流线进出 一般情况下,流线应从符号的左边或项端进入,并从右边或底端离开。其进出点均应对准符号的中心。e.连接符 为避免出现流线交叉和使用长线,或某个流程图能在另一页上延续,可用连接符将流线截断。截断始端的连接符称为出口连接符,载断末端的连接符称为入口连接符。两连接符中用同一标识符。 换页截断可用与连接符相连的注解符表示,如图2-4所示。 图2-4 出口连接符与入口连接符 f.多出口判断的两种表示方法 直接从判断符号引出多条流线,如图2-5(a)所示。 从判断符号引入流线,再从它引出多条流线,如图2-5(b)所示。 图2-5 多出口判断 — 5 — g.多出口判断的每个出口都应标有相应的条件值,用以反映它所引出的逻辑路径,如图2-6所示。 图2-6 多出口判断出口处标出条件值 举例 a)铁路客运部门规定甲、乙两地之间旅客托运行李的费用计算: b)求一元二次方程的解 — 6 — 5.— 7 —