




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编译原理综合训练语义分析实验报告 指导老师:班级:学生:zeadom学号:学生:学号:2011/6/29目录语言文法的形式化描述 3语义规则 3运行环境介绍 5关键算法的流程图及文字解释 51、本编译器的总框架 52、在语义分析中的主要函数介绍 53、产生布尔表达式 74、While-do语句的语义分析 85、词法、语法和语义分析的衔接 8测试报告 8附录 12语言文法的形式化描述(BNF范式)程序开始 P->programi;SDnSC;定义语句 SDn->SDSDn|nullSD->varintiSDTSDT->null|,iSDT复合语句SC->beginSnendSn->S;Sn||null单个语句S->SD|SA|SIF|SW|SC赋值语句SA->i:=E算术表达式E->cET|iET|(E)ETET->AE|CE|DE|null;C->+|-|*|/;布尔表达式B->EAEBT|NOTB|(B)BTBT->DB|nullA->>|<|=|>=|<=|<>D->AND|ORif语句SIF->ifBthenSSELSESELSE->null|elseS2while语句SW->whileBdoS语义规则(属性文法)产生式语义规则i:=E{Gen(:=,E.PLACE,—,entry(i))}EE1+E2{E.PLACE=Newtemp;Gen(+,E1.PLACE,E2.PLACE,E.PLACE)}EE1*E2{E.PLACE=Newtemp;Gen(*,E1.PLACE,E2.PLACE,E.PLACE)}E-E1{E.PLACE=Newtemp;Gen(@,E1.PLACE,—,E.PLACE)}E(E1){E.PLACE=E1.PLACE}Ei{E.PLACE=Entry(i)}产生式语义规则Ei{:=makelist(nextquad);:=makelist(nextquad+1);Gen(jnz,entry(i),—,0);Gen(j,—,—,0)}Ei1Ri2{:=makelist(nextquad);:=makelist(nextquad+1);Gen(jR,entry(i1),entry(i2),0);Gen(j,—,—,0)}E┐E1{:=E1.falselist;:=E1.truelist;}E(E1){:=E1.truelist;:=E1.falselist;}Mε{:=nextquad;}EE1∧ME2{backpatch(E1.truelist,);:=E2.truelist;:=merge(E1.falselist,E2.Falselist)}EE1∨ME2{backpatch(E1.falselist,);:=merge(E1.truelist,E2.truelist);:=E2.Falselist}EE1∧ME2{backpatch(E1.truelist,);:=E2.truelist;:=merge(E1.falselist,E2.Falselist)}产生式语义规则SifEthenMS1{backpatch(,);:=merge(,S1.nextlist)}Mε{:=nextquad;}Nε{:=makelist(nextquad);Gen(j,—,—,0)}SifEthenM1S1NelseM2S2{backpatch(,M1.quad);backpatch(,M2.quad);:=merge(S1.nextlist,,S2.nextlist)}SwhileM1EdoM2S1{backpatch(S1.nextlist,M1.quad);Gen(j,—,—,M1.quad);backpatch(,M2.quad);:=}SbeginLend{:=}SA{:=makelist()/*空链*/}LS{:=}LL1;MS{backpatch(L1.nextlist,);:=}运行环境介绍运行环境是DEVC++Dev-C++是一个C&C++开发工具,它是一款自由软件,遵守GPL协议。它集合了GCC、MinGW32等众多自由软件,并且可以取得最新版本的各种工具支持,而这一切工作都是来自全球的狂热者所做的工作,并且你拥有对这一切工具自由使用的权利,包括取得源代码等,前提是你也必须遵守GNU协议。Dev-C++每一天都在进步着,因为它是一个自由软件。Dev-C++是一个非常实用的编程软件,多款著名软件均由它编写而成,它在C的基础上,增强了逻辑性关键算法的流程图及文字解释1、本编译器的总框架2、在语义分析中的主要函数介绍Backpatch(intlist,intquad) 代码:voidbackpatch(intlist,intpatch){inttmp;while(list){tmp=list;list=RSS[tmp].jump;RSS[tmp].jump=patch;}}Merge(intlist1,intlist2)代码:intmerge(intlist1,intlist2){inttmp=list2;if(list2==0)list2=list1;elsewhile(RSS[tmp].jump){tmp=RSS[tmp].jump;}RSS[tmp].jump=list1;returnlist2;}3、产生布尔表达式4、While-do语句的语义分析5、词法、语法和语义分析的衔接1、词法分析是分析输入代码产生词法三元式的程序。读入代码,并将代码中的单词分解成词法三元式。2、语法分析读入词法三元式,并根据词法三元式对句子进行语法分析。3、语义分析嵌入在语法分析中。根据语法分析中得到的句子类型和语义四元式产生规则,产生四元式测试报告(测试用例,测试结果)测试用例输入程序(文件):programexample; varintj,m,n;begin/*thereisacomment*/j:=6;m:=3;//thereisacommentn:=j+m;ifn>=3andn<5thenj:=j-1elseifn>10thenj:=j*4;whilea<bdoj:=j+1;end;词法分析产生的词法三元式文件():(1,program,2)(15,example,2)(24,;,2)(4,var,3)(11,int,3)(15,j,3)(27,,,3)(15,m,3)(27,,,3)(15,n,3)(24,;,3)(2,begin,4)annotationstartinline4annotationendinline4(15,j,5)(26,:=,5)(16,6,5)(24,;,5)(15,m,6)(26,:=,6)(16,3,6)(24,;,6)lineannotationinline6(15,n,7)(26,:=,7)(15,j,7)(17,+,7)(15,m,7)(24,;,7)(6,if,8)(15,n,8)(32,>=,8)(16,3,8)(12,and,8)(15,n,8)(23,<,8)(16,5,8)(7,then,9)(15,j,9)(26,:=,9)(15,j,9)(18,-,9)(16,1,9)(8,else,10)(6,if,10)(15,n,10)(22,>,10)(16,10,10)(7,then,10)(15,j,10)(26,:=,10)(15,j,10)(28,*,10)(16,4,10)(24,;,10)(10,while,11)(15,a,11)(23,<,11)(15,b,11)(9,do,11)(15,j,11)(26,:=,11)(15,j,11)(17,+,11)(16,1,11)(24,;,11)(3,end,12)(24,;,12)语法分析产生的文件():定义语句赋值语句赋值语句赋值语句if-then语句嵌套赋值语句if-then-else语句嵌套if-then语句嵌套赋值语句循环语句赋值语句复合语句程序语义分析产生的语义四元式文件():100(:=,6,-,j)101(:=,3,-,m)102(+,j,m,T1)103(:=,T1,-,n)104(j>=,n,3,106)105(j,-,-,111)106(j<,n,5,108)107(j,-,-,111)108(-,j,1,T2)109(:=,T2,-,j)110(j,-,-,115)111(j>,n,10,113)112(j,-,-,115)113(*,j,4,T3)114(:=,T3,-,j)115(j<,a,b,117)116(j,-,-,120)117(+,j,1,T4)118(:=,T4,-,j)119(j,-,-,115)经测试,该语义分析程序正确执行,并产生了正确的四元式中间代码。附录程序源代码:**************************词法分析器代码()************************#!C:\Python27\python#FileName'''\author:zeadomdate: 2011-03-30'''importosimportch=""code=""key_words={"program":"1","begin":"2","end":"3","var":"4","integer":"5",\"if":"6","then":"7","else":"8","do":"9","while":"10",\ "int":"11","and":"12","or":"13","not":"14",\"+":"17","-":"18","(":"19",")":"20","=":"21",">":"22",\"<":"23",";":"24",":":"25",":=":"26",",":"27",\ "*":"28","/":"29",".":"30","<=":"31",">=":"32","<>":"33"} defisLetter():globalchifch==None:returnFalseelse:return()defisDigit():globalchifch==None:returnFalseelse:return() defconcat():globalcodeglobalchcode=code+ch defgetchar(l,i):iflen(l)<=iori<0:returnNoneelse:returnl[i]defgetstr(): globalcode globalkey_words globalll type=0 state=None str=""; ifcode==None: str=u"(0,"+code+",%d)"%ll elifcodeinkey_words: if(key_words[code]==25): str="errorcodeinline%d\n"%ll str=str+"errorcode:" else: str=u"("+key_words[code]+u","+code+",%d)"%ll elif(): str="(16,"+code+",%d)"%ll else: str="(15,"+code+",%d)"%ll returnstr ll=0flag=[];if__name__=="__main__":src=r"input.txt"outfile=r"output.txt"ifnot(src):print"cannotopenfile",srcelse: inputf=open(src,"r") outputf=open(outfile,"w") annotation=0 ll=0 forlineininputf: ll=ll+1 i=0 l=len(line) whilei<l: ifi>=len(line): break code="" ch=getchar(line,i) i=i+1 ifannotation==1: ifch=="*"andgetchar(line,i)!=Noneandgetchar(line,i)=='/': str="annotationendinline%d\n"%ll (str) annotation=0 i=i+1 continue ifch=='/'andgetchar(line,i)!=Noneandgetchar(line,i)=='/': ("lineannotationinline%d\n"%ll) i=i+1 break ifch==None: break elifch=="/"andgetchar(line,i)!=Noneandgetchar(line,i)=='*': str="annotationstartinline%d\n"%ll (str) i=i+1 annotation=1 elifch==""orch=="\n"orch=='\t': continue elifisLetter(): whileisLetter()orisDigit(): concat() ch=getchar(line,i) i=i+1 i=i-1 str=getstr() str=str+"\n" (str) continue elifisDigit(): whileisDigit(): concat() ch=getchar(line,i) i=i+1 i=i-1 str=getstr() str=str+"\n" (str) continue elifchinkey_words: concat() ch=getchar(line,i) i=i+1 ifch!=Noneand(code+ch)inkey_words: concat() str=getstr() str=str+"\n" (str) else: i=i-1 str=getstr() str=str+"\n" (str) else: str="errorinline%d\n"%ll (str) ("errorcode"+ch+"\n");**************************资源文件()********************************#ifndefRESOURCE_H_ZEADOM#defineRESOURCE_H_ZEADOM#define$program1#define$begin2#define$end3#define$var4#define$integer5#define$if6#define$then7#define$else8#define$do9#define$while10#define$int11#define$and12#define$or13#define$not14#define$flag15#define$num16#define$add17#define$sub18#define$left19#define$right20#define$eq21#define$gt22#define$lt23#define$24#define$copy26#define$comma27#define$mul28#define$div29#define$point30#define$loe31#define$goe32#define$ne33#endif****************************语义分析头文件()************************#ifndefZEADOM_SEMANTIC_H#defineZEADOM_SEMANTIC_H#include"string"usingnamespacestd;#include"iostream"#include"fstream"#include"sstream"intquad,varT;intNextquad(){returnquad++;}stringNextT(){varT++;stringtemp="T";stringstreamss;ss<<varT;temp=temp+ss.str();returntemp;}voidsemantic_init(){varT=0;quad=100;}structsiyuanshi{stringop,par1,par2,result;boolhasop,haspar1,haspar2,hasresult;boolisjump;intjump;siyuanshi(){op=par1=par2=result="";hasop=haspar1=haspar2=hasresult=false;jump=0;isjump=false;}voidsetop(stringarg){op=arg;hasop=true;}voidsetpar1(stringarg){par1=arg;haspar1=true;}voidsetpar2(stringarg){par2=arg;haspar2=true;}voidsetresult(stringarg){result=arg;hasresult=true;}voidsetjump(intarg){jump=arg;isjump=true;}voidoutput(ofstream&s){s<<"("<<op<<",";if(haspar1)s<<par1<<",";elses<<"-"<<",";if(haspar2)s<<par2<<",";elses<<"-"<<",";if(isjump)s<<jump<<")"<<endl;elseif(hasresult)s<<result<<")"<<endl;elses<<"-"<<")"<<endl;}};siyuanshiRSS[10000];structEstruct{stringlexval;Estruct(){lexval="";}};structBstruct{inttruelist;intfalselist;Bstruct(){truelist=falselist=0;}};structMstruct{intquad;Mstruct(){quad=0;}};voidbackpatch(intlist,intpatch){inttmp;while(list){tmp=list;list=RSS[tmp].jump;RSS[tmp].jump=patch;}}intmerge(intlist1,intlist2){inttmp=list2;if(list2==0)list2=list1;elsewhile(RSS[tmp].jump){tmp=RSS[tmp].jump;}RSS[tmp].jump=list1;returnlist2;}voidsemantic_output(){ofstreamout("");for(inti=100;i<quad;i++){out<<i;RSS[i].output(out);}();}structSstruct{intnextlist;Sstruct(){nextlist=0;}};structNstruct{intnextlist;Nstruct(){nextlist=0;}};#endif**************************语法和语义分析程序()***********************#include"iostream"usingnamespacestd;#include""#include"string"#include""#include""#include""#include""#definedeal(s)if(!(s)){returnfalse;}#definepdeal(s)if(!(s)){cout<<"没有找到文件结尾(程序是否未完成?)"<<endl;returnfalse;}//定义读入元素用的结构体及变量structWORD{inttype;intpos;boolnormal;stringatt;stringline;WORD(){normal=true;}boolreadNext(){cin>>line;if(!cin){();normal=false;returnfalse;}while(line[0]!='(')cin>>line;att="";inti,j=0;intl=();i=3;if(line[2]>='0'&&line[2]<='9'){type=(line[1]-'0')*10+(line[2]-'0');i=4;}elsetype=line[1]-'0';for(;line[i]!=',';i++)back(line[i]);for(i=0;i<l;i++){if(line[i]==',')j++;if(j==2)break;}i++;pos=0;while(line[i]>='0'&&line[i]<='9'){pos=pos*10+(line[i]-'0');i++;}returntrue;}}word;//定义函数boolerror(strings);boolP();boolSn(Sstruct&ss);boolS(Sstruct&ss);boolSDn();boolSD();boolSDT();boolSA();boolSIF(Sstruct&ss);boolSELSE(Sstruct&ss);boolSW(Sstruct&ss);boolSC(Sstruct&ss);boolB(Bstruct&bs);boolBT(Bstruct&bs);boolE(Estruct&es);boolET(Estruct&es);boolA();boolC();boolD();//函数实现boolerror(strings){printf("语法错误:在第%d行\);cout<<s<<endl;}//P->programi;SDnSC;boolP(){pdeal();boolret=true;Sstructss;if(!=$program){error("缺少程序定义语句");ret=false;}elsepdeal(());if(!=$flag){error("缺少程序名");ret=false;}elsepdeal(());if(!=$){error("缺少语句结束标志");ret=false;}elsepdeal(());if(!SDn())ret=false;pdeal();if(!SC(ss))ret=false;pdeal();if(!=$){error("缺少程序结束标志");ret=false;}cout<<"程序"<<endl;returnret;}//Sn->S;Sn|nullboolSn(Sstruct&ss){deal();boolret=true;while(word.type!=$if&&word.type!=$flag&&word.type!=$var&&word.type!=$while&&word.type!=$begin){if(==$end)returnret;error("语法错误");ret=false;deal(());}if(!S(ss))ret=false;backpatch(ss.nextlist,quad);deal();if(!=$){ret=false;error("缺少行终止符");}elsedeal(());if(!Sn(ss))ret=false;deal();returnret;}//S->SD|SA|SIF|SW|SCboolS(Sstruct&ss){deal();boolret=true;switch(){case$if:returnSIF(ss);case$var:=0;returnSD();case$flag:=0;returnSA();case$while:returnSW(ss);case$begin:returnSC(ss);default:error("语法错误");}}//SDn->SD;SDn|nullboolSDn(){deal();if(==$begin)returntrue;boolret=true;while(true){while(!=$begin&&!=$var){error("语法错误");deal(());}if(==$var){if(!SD()){while(true){if(==$||==$begin)break;deal(());}}else{if(!=$){error("缺少行终止符");ret=false;}elsedeal(());}}if(==$begin)break;}returnret;}//SD->varintiSDTboolSD(){deal();boolret=true;if(!=$var){error("语法错误");returnfalse;}else();deal();if(!=$int){error("语法错误");returnfalse;}else();deal();if(!=$flag){error("语法错误");returnfalse;}else();cout<<"定义语句"<<endl;deal();returnSDT();}//SDT->null|,iSDTboolSDT(){deal();boolret=true;if(!=$comma)returntrue;();deal();if(!=$flag){error("语法错误");returnfalse;}else();deal();returnSDT();}//SA->i:=EboolSA(){deal();stringresult;if(!=$flag){error("语法错误");returnfalse;}else{result=word.att;deal(());}deal();if(!=$copy){error("语法错误");returnfalse;}cout<<"赋值语句"<<endl;();deal();Estructes;if(!E(es))returnfalse;intquad=Nextquad();RSS[quad].setop(":=");RSS[quad].setpar1();RSS[quad].setresult(result);returntrue;}//SIF->ifBthenSSELSEboolSIF(Sstruct&ss){deal();boolret=true;if(!=$if){ret=false;error("缺少if");}else();deal();Bstructbs;if(!B(bs))returnfalse;if(!=$then){ret=false;error("缺少then");}else();deal();cout<<"if-then语句嵌套";Mstructm1;m1.quad=quad;Sstructss1;if(!S(ss1))returnfalse;deal();if(!=$else){=merge(bs.falselist,ss1.nextlist);backpatch(bs.truelist,m1.quad);returnret;}else{Nstructns;=Nextquad();RSS[].setop("j");RSS[].setjump(0);Mstructm2;m2.quad=quad;Sstructss2;if(!SELSE(ss2))ret=false;deal();backpatch(bs.truelist,m1.quad);backpatch(bs.falselist,m2.quad);=merge(merge(ss1.nextlist,ns.nextlist),ss2.nextlist);returnret;}}//SELSE->null|elseS2boolSELSE(Sstruct&ss){deal();boolret=true;if(!=$else)returntrue;();deal();cout<<"if-then-else语句嵌套";returnS(ss);}//SW->whileBdoSboolSW(Sstruct&ss){cout<<"循环语句"<<endl;deal();boolret=true;if(!=$while){error("缺少while");ret=false;}else();deal();Mstructm1;m1.quad=quad;Bstructbs;if(!B(bs))returnfalse;if(!=$do){error("缺少do");ret=false;}else();deal();Mstructm2;m2.quad=quad;if(!S(ss))returnfalse;deal();intswquad=Nextquad();RSS[swquad].setop("j");RSS[swquad].setjump(m1.quad);backpatch(bs.truelist,m2.quad);backpatch(ss.nextlist,m1.quad);=;returnret;}//SC->beginSnendboolSC(Sstruct&ss){deal();boolret=true;if(!=$begin){error("复合语句缺少begin");ret=false;}else();deal();if(!Sn(ss))ret=false;deal();if(!=$end){error("复合语句缺少end");ret=false;}else();cout<<"复合语句"<<endl;deal();returnret;}//B->EAEBT|NOTB|(B)BTboolB(Bstruct&bs){deal();boolret=true;if(==$left){();deal();if(!B(bs))returnfalse;if(!=$right){error("缺少括号");ret=false;}else{();deal();}if(!BT(bs))ret=false;deal();}elseif(==$not){();deal();Bstructbsa;if(!B(bsa))returnfalse;=;=;}elseif(==$flag||==$num){Estructes1;if(!E(es1))returnfalse;if(!A())returnfalse;stringop=word.att;op="j"+op;();Estructes2;if(!E(es2))returnfalse;intquad=Nextquad();=quad;RSS[quad].setjump(0);RSS[quad].setpar1(es1.lexval);RSS[quad].setpar2(es2.lexval);RSS[quad].setop(op);quad=Nextquad();=quad;RSS[quad].setop("j");RSS[quad].setjump(0);if(!BT(bs))returnfalse;}else{error("语法错误");returnfalse;}returnret;}//BT->DB|nullboolBT(Bstruct&bs){deal();if(!D())returntrue;inttype=;();deal();Mstructmtmp;=quad;Bstructbsa;if(!B(bsa)){cout<<"语法错误"<<""<<<<endl;returnfalse;}if(type==$and){backpatch();=merge();=;}else{backpatch();=merge();=;}returntrue;}//E->cET|iET|(E)ETboolE(Estruct&es){deal();boolret=true;if(==$left){();deal();if(!E(es))returnfalse;if(!=$right){error("缺少括号");ret=false;}else{();deal();}if(!ET(es))ret=false;deal();}elseif(==$flag||==$num){=word.att;();deal();if(!ET(es))returnfalse;}else{error("语法错误");returnfalse;}returnret;}//ET->CE|nullboolET(Estruct&es){deal();if(!C())returntrue;stringop=word.att;();deal();Estructesa;if(!E(esa)){cout<<"语法错误"<<""<<<<endl;returnfalse;}intquad=Nextquad();RSS[quad].setop(op);RSS[quad].setpar1();RSS[quad].setpar2();stringtmp=NextT();RSS[quad].setresult(tmp);=tmp;returntrue;}//A->>|<|=|>=|<=|<>boolA(){deal();boolret=true;if(==$gt||==$lt||==$eq||==$goe||==$loe||==$ne);else{ret=false;}returnret;}//C->+|-|*|/;boolC(){deal();if(==$add||==$sub||==$mul||==$div)returntrue;elsereturnfalse;}//D->AND|OR;boolD(){deal();if(==$and||==$or)returntrue;elsereturnfalse;}intmain(){freopen("output.txt","r",stdin);freopen("Grammar.out","w",stdout);semantic_init();();if(!){cout<<"空文件"<<endl;return0;}while(!=$program){();if(!){cout<<"未找到程序头"<<endl;return0;}if(!=$program){cout<<"语法错误,位置错误"<<endl;}}if(){P();}while(){();if(!){break;}else{cout<<"非法字符"<<endl;}}semantic_output();return0;}财务工作总结ppt[财务工作总结ppt]一、合理安排收支预算,严格预算管理
单位预算是学校完成各项工作任务,实现事业计划的重要前提,因此认真做好我校的收支预算责任重大,财务工作总结ppt。为了搞好这项工作,根据学校上年度的实际情况,拟定的预算方案,特别是支出方案多次向学校领导汇报,进行了反复修改,本着;以收定支,量入为出;,使预算更加切合实际。充分发挥在财务管理中的积极作用,较圆满地完成预算编制任务。在实际执行过程中,严格按照预算执行,每月未编制好计划用款报表,充分体现了资金的使用效益,确保学校各项工作的顺利完成。
二、认真做好收费、结算工作
收费是学校最为繁琐,也是政策最强的一项工作,为了做好这项工作,我们及早做好申报审批工作,做到收费的依据,严格执行收费标准。及时出具票据,期未做好结算工作,做到多退少不补,同时做好代收费;报告书;的上报。
三、认真做好决算工作
年终决算也是一项较为复杂繁重的工作任务,主要进行结旧建新,编制决算报表,决算报表是反映学校一年度的财务收支情况,是指导学校预算执行工作的重要资料,也是编制下年度收支计划的基础,所以除了认真细致地做好年终决算外,同时针对所编制的报表进行对比性分析,通过分析,总结经验,揭示存在的问题,为学校领导决策提供依据。
四、努力学习,提高财会人员的自身素质。
财务人员能积极参加镇组织的业务培训,不断的提高财会知识和政策水平,同时积极参加学校的一切政治学习,认真作好学习笔记,认真贯彻执行《合计法》,使学校的财会工作能按照国家的政策、法规进行,保证支出的真实性,合法性。
五、努力完成学校的后勤工作
后勤工作将直接影响到学校的一切工作,搞好食堂更为重要,为此总在放学前拟定好下学期的伙食收费报表报局计划财务科,严格执行计划财务科核定的标准收龋本着服务于学生目的,规范伙食成本,控制伙食利润,按规定时间上报食堂报表。
【扩展阅读篇】
工作总结格式一般分为:标题、主送机关、正文、署名四部分。
(1)标题。一般是根据工作总结的中心内容、目的要求、总结方向来定。同一事物因工作总结的方向;;侧重点不同其标题也就不同。工作总结标题有单标题,也有双标题。字迹要醒目。单标题就是只有一个题目,如《我省干部选任制度改革的一次成功尝试》。一般说,工作总结的标题由工作总结的单位名称、工作总结的时间、工作总结的内容或种类三部分组成。如;××市化工厂1995年度生产工作总结;;××市××研究所1995年度工作总结;也可以省略其中一部分,如:;三季度工作总结;,省略了单位名称,工作总结《财务工作总结ppt》。毛泽东的《关于打退第二次反共高潮的总结》,其标题不仅省略了总结的单位名称,也省略了时限。双标题就是分正副标题。正标题往往是揭示主题;;即所需工作总结提炼的东西,副标题往往指明工作总结的内容、单位、时间等。例如:辛勤拼搏结硕果;;××县氮肥厂一九九五年工作总结;;
(2)前言。即写在前面的话,工作总结起始的段落。其作用在于用简炼的文字概括交代工作总结的问题;或者说明所要总结的问题、时间、地点、背景、事情的大致经过;或者将工作总结的中心内容:主要经验、成绩与效果等作概括的提示;或者将工作的过程、基本情况、突出的成绩作简洁的介绍。其目的在于让读者对工作总结的全貌有一个概括的了解、为阅读、理解全篇打下基础。
(3)正文。正文是工作总结的主体,一篇工作总结是否抓住了事情的本质,实事求是地反映出了成绩与问题,科学地总结出了经验与教训,文章是否中心突出,重点明确、阐述透彻、逻辑性强、使人信,全赖于主体部分的写作水平与质量。因此,一定要花大力气把立体部分的材料安排好、写好。正文的基本内容是做法和体会、成绩和缺点、经验和教训。
1)成绩和经验这是工作总结的目的,是正文的关键部分,这部分材料如何安排很重要,一般写法有二。一是写出做法,成绩之后再写经验。即表述成绩、做法之后从分析成功的原因、主客观条件中得出经验教益。二是写做法、成绩的同时写出经验,;寓经验于做法之中;。也有在做法,成绩之后用;心得体会;的方式来介绍经验,这实际是前一种写法。成绩和经验是工作总结的中心和重点,是构成工作总结正文的支柱。所谓成绩是工作实践过程中所得到的物质成果和精神成果。所谓经验是指在工作中取得的优良成绩和成功的原因。在工作总结中,成绩表现为物质成果,一般运用一些准确的数字表现出来。精神成果则要用前后对比的典型事例来说明思想觉悟的提高和精神境界的高尚,使精神成果在工作总结中看得见、摸得着,才有感染力和说明力。
2)存在的问题和教训一般放在成绩与经验之后写。存在的问题虽不在每一篇工作总结中都写,但思想上一定要有个正确的认识。每篇工作总结都要坚持辩论法,坚持一分为二的两点论,既看到成绩又看到存在的问题,分清主流和枝节。这样才能发扬成绩、纠正错误,虚心谨慎,继续前进。
写存在的问题与教训要中肯、恰当、实事求是。
(4)结尾一般写今后努力的方向,或者写今后的打算。这部分要精炼、简洁。
(5)署名和日期。署名写在结尾的右下方,在署名下边写上工作总结的年、月、日,如为突出单位,把单位名称写在标题下边,则结尾只落上日期即可。
简而言之:
总结,就是把某一时期已经做过的工作,进行一次全面系统的总检查、总评价,进行一次具体的总分析、总研究;也就是看看取得了哪些成绩,存在哪些缺点和不足,有什么经验、提高。那么,工作总结怎么写?个人工作总结的格式是怎样的?详情请看下文解析。
(一)基本情况
1.总结必须有情况的概述和叙述,有的比较简单,有的比较详细。这部分内容主要是对工作的主客观条件、有利和不利条件以及工作的环境和基础等进行分析。
2.成绩和缺点。这是总结的中心。总结的目的就是要肯定成绩,找出缺点。成绩有哪些,有多大,表现在哪些方面,是怎样取得的;缺点有多少,表现在哪些方面,是什么性质的,怎样产生的,都应讲清楚。
3.经验和教训。做过一件事,总会有经验和教训。为便于今后的工作,须对以往工作的经验和教训进行分析、研究、概括、集中,并上升到理论的高度来认识。
今后的打算。根据今后的工作任务和要求,吸取前一时期工作的经验和教训,明确努力方向,提出改进措施等。具体可以参考部分工作总结范文。
财务工作总结的ppt[财务工作总结的ppt]财务工作总结的ppt一、合理安排收支预算,严格预算管理
单位预算是学校完成各项工作任务,实现事业计划的重要前提,因此认真做好我校的收支预算责任重大,财务工作总结的ppt。为了搞好这项工作,根据学校上年度的实际情况,拟定的预算方案,特别是支出方案多次向学校领导汇报,进行了反复修改,本着“以收定支,量入为出”,使预算更加切合实际。充分发挥在财务管理中的积极作用,较圆满地完成预算编制任务。在实际执行过程中,严格按照预算执行,每月未编制好计划用款报表,充分体现了资金的使用效益,确保学校各项工作的顺利完成。
二、认真做好收费、结算工作
收费是学校最为繁琐,也是政策最强的一项工作,为了做好这项工作,我们及早做好申报审批工作,做到收费的依据,严格执行收费标准。及时出具票据,期未做好结算工作,做到多退少不补,同时做好代收费“报告书”的上报。
三、认真做好决算工作
年终决算也是一项较为复杂繁重的工作任务,主要进行结旧建新,编制决算报表,决算报表是反映学校一年度的财务收支情况,是指导学校预算执行工作的重要资料,也是编制下年度收支计划的基础,所以除了认真细致地做好年终决算外,同时针对所编制的报表进行对比性分析,通过分析,总结经验,揭示存在的问题,为学校领导决策提供依据。
四、努力学习,提高财会人员的自身素质。
财务人员能积极参加镇组织的业务培训,不断的提高财会知识和政策水平,同时积极参加学校的一切政治学习,认真作好学习笔记,认真贯彻执行《合计法》,使学校的财会工作能按照国家的政策、法规进行,保证支出的真实性,合法性。
五、努力完成学校的后勤工作
后勤工作将直接影响到学校的一切工作,搞好食堂更为重要,为此总在放学前拟定好下学期的伙食收费报表报局计划财务科,严格执行计划财务科核定的标准收龋本着服务于学生目的,规范伙食成本,控制伙食利润,按规定时间上报食堂报表。
【扩展阅读篇】
工作总结格式一般分为:标题、主送机关、正文、署名四部分。
(1)标题。一般是根据工作总结的中心内容、目的要求、总结方向来定。同一事物因工作总结的方向——侧重点不同其标题也就不同。工作总结标题有单标题,也有双标题。字迹要醒目。单标题就是只有一个题目,如《我省干部选任制度改革的一次成功尝试》。一般说,工作总结的标题由工作总结的单位名称、工作总结的时间、工作总结的内容或种类三部分组成。如“××市化工厂1995年度生产工作总结”“××市××研究所1995年度工作总结”也可以省略其中一部分,如:“三季度工作总结”,省略了单位名称,工作总结《财务工作总结的ppt》。毛泽东的《关于打退第二次反共高潮的总结》,其标题不仅省略了总结的单位名称,也省略了时限。双标题就是分正副标题。正标题往往是揭示主题——即所需工作总结提炼的东西,副标题往往指明工作总结的内容、单位、时间等。例如:辛勤拼搏结硕果——××县氮肥厂一九九五年工作总结——
(2)前言。即写在前面的话,工作总结起始的段落。其作用在于用简炼的文字概括交代工作总结的问题;或者说明所要总结的问题、时间、地点、背景、事情的大致经过;或者将工作总结的中心内容:主要经验、成绩与效果等作概括的提示;或者将工作的过程、基本情况、突出的成绩作简洁的介绍。其目的在于让读者对工作总结的全貌有一个概括的了解、为阅读、理解全篇打下基础。
(3)正文。正文是工作总结的主体,一篇工作总结是否抓住了事情的本质,实事求是地反映出了成绩与问题,科学地总结出了经验与教训,文章是否中心突出,重点明确、阐述透彻、逻辑性强、使人信,全赖于主体部分的写作水平与质量。因此,一定要花大力气把立体部分的材料安排好、写好。正文的基本内容是做法和体会、成绩和缺点、经验和教训。
1)成绩和经验这是工作总结的目的,是正文的关键部分,这部分材料如何安排很重要,一般写法有二。一是写出做法,成绩之后再写经验。即表述成绩、做法之后从分析成功的原因、主客观条件中得出经验教益。二是写做法、成绩的同时写出经验,“寓经验于做法之中”。也有在做法,成绩之后用“心得体会”的方式来介绍经验,这实际是前一种写法。成绩和经验是工作总结的中心和重点,是构成工作总结正文的支柱。所谓成绩是工作实践过程中所得到的物质成果和精神成果。所谓经验是指在工作中取得的优良成绩和成功的原因。在工作总结中,成绩表现为物质成果,一般运用一些准确的数字表现出来。精神成果则要用前后对比的典型事例来说明思想觉悟的提
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电光源材料与工艺考核试卷
- 电气设备防爆装置制造考核试卷
- 物联网数据标准化与互操作性考核试卷
- 户外设施使用协议
- 海底隧道施工质量控制与验收考核试卷
- 漆器制作与工匠技艺比赛的组织考核试卷
- 经济型酒店品牌服务质量评价体系考核试卷
- 小学生寒假防溺水安全教育
- 电池微型化与集成技术考核试卷
- 磷酸铁锂电池制造的新发展考核试卷
- 2024华能四川能源开发有限公司下属单位招聘笔试参考题库附带答案详解
- 钢结构高处作业安全管理
- JJF 2221-2025导热系数瞬态测定仪校准规范
- 华为手机协议合同
- 甘肃省陇南市礼县第六中学2024-2025学年八年级下学期第一次月考数学试卷(无答案)
- 公司两班倒管理制度
- 完整版高中古诗文必背72篇【原文+注音+翻译】
- 2025年武汉数学四调试题及答案
- 人教版小学四年级语文下册2024-2025学年度第二学期期中质量检测试卷
- 七年级下册道德与法治(2025年春)教材变化详细解读
- 鸡头黄精栽培技术规程
评论
0/150
提交评论