基于Qt自定义计算机语言编译器的设计
基于Qt自定义计算机语言编译器的设计(任务书,外文翻译,毕业论文21000字,程序代码,答辩PPT)
摘要
汉语编程一直是所有以汉语为母语的程序员的梦想。作为以汉语为母语的程序员,每次编程时最发愁的事可能就是文档中大段大段的英语,想要找到相应功能的方法总是非常头痛。中国传统文化中易经八卦的思想又非常符合现代编程中的思想。高级计算机语言程序中任何标识都可以使用中文字、词、词组和句子的语言文法,又有与中文相匹配的语言语法规则可称为汉语编程语言,使用这种语言编写的程序的过程就是中文编程。汉语编程不但可以使编程更加普及,也能使编程效率提高。
本论文研究的是基于汉语的自定义计算机编程语言N语言编译器,N语言以C语言为基础,在此上加入了一些关键字替换等,以一个单一的汉字来替换有好几个字符的英语单词,简化编程过程,提高编程效率。
N语言编译器以linux下的Qt搭建界面框架,采用C++编写,主要实现了一个源(N语言)到源(C语言)的编译器及主要的语法高亮、函数折叠、查找、替换、重排版、自动补全等功能。本论文主要介绍了这一课题的编写背景、所实现的功能以及具体的开发过程。
关键词:汉语编程;C语言;编译器;C++
A New Programming language And It’s Compiler
Abstract
Programming in Chinese is always a dream of all the programmers who use Chinese as their mother language. As one of the programmer who uses Chinese as the first language, every time when I program, the most trouble thing is when I looking in the document for a proper way to achieve my goal, there always been tons of billions of English which annoyed me so so much to find out the right way to implement my functions. The Zhouyi philosophy in traditional Chinese culture is very similar to the modern programming. Any high-level computer programming language can be used to identify the text , words , phrases and sentences of the language grammar , but also to match with the Chinese language grammar rules may be called Chinese programming language. The process of using this kind of language can called programming in Chinese. Programming in Chinese can not only make programming more popular, but also improve the efficiency of programming.
[版权所有:http://DOC163.com]
This graduation thesis tells about a self-defined programming language that based on Chinese : the compiler of N. Program language N is based on C programming language, exchange some key word, replace the long English word by a single Chinese character, to simplify the programming process, improve the efficiency of programming.
This compiler for N is based on Qt of Linux to draw the interface, is programmed by C++. It is a compiler changes program language N to program language C. It is a simple compiler had this function: basic syntax highlight, function folding, find and replace, re-layout and auto-complete, etc. This thesis introduces the background of this topic, the function it can do and the specific progress of programming this compiler.
Keywords: Chinese programming language; C Language; complier; C++
本系统在设计时基本分为两个部分。第一部分是设计一门自定义编程语言N语言,第二部分是实现N语言的编译功能。
N语言,是根据C语言基本语法等实现的一门汉语编程语言,将其关键字进行单个汉字替换,简化了编程过程。C语言编译部分采用了计算机自带的gcc/tcc进行C语言的编译,完成编译过程。 [来源:http://Doc163.com]
汉语编程的意义相对来说还是比较重要的。汉语编程能使得许多没有英语基础的人也能很好地掌握编程方法、编程思想,能使得更多的人参与到编程这一意义深远的事件中来。汉语编程能使一个人在掌握一门外语之前就掌握逻辑分析思维方法,让计算机的原理等被更多的人熟知。汉语编程更符合中国人的习惯,使它更容易被中国人接受。
于此同时,C语言的保留关键字也得到了保留,使人们在用汉语编程的同时可以继续利用C语言的关键字进行编程,更加符合用户习惯,也促使了汉语母语编程人员更快地向国际化发展。
N语言的编译器界面主要采用Qt搭建,利用Qt强大的可视化和丰富的内置类,将编译器界面和功能的实现变得简单高效。
[资料来源:http://doc163.com]
[资料来源:http://www.doc163.com]
目录
摘要 I
Abstract II
1 绪 论 1
1.1 N语言的定义 1
1.2 N编译器 1
1.3 汉语编程意义 1
1.4 开发技术 2
2 需求分析 3
2.1 可行性研究 3
2.1.1 技术可行性 3
2.1.2 经济可行性 5
2.1.3 时间可行性 5
2.2 系统的功能要求 5
2.2.1 基本功能 5
[资料来源:http://doc163.com]
2.2.2 附加功能 6
2.3 系统的性能要求 7
2.3.1 可靠性要求 7
2.3.2 时间要求 7
2.3.3 稳定性要求 7
3 关键技术 8
3.1 Qt 概述 8
3.2 Qt模块 8
3.3 Qt图形用户界面 9
3.4 Qt信号与槽机制 9
3.5 布局管理 10
3.6 Main Window 10
3.7 Graphics View 11
3.8 Qt元对象系统 11
4 概要设计 13
4.1 系统总体结构 13
4.2 N语言的定义 13
4.3 C语言编辑器 14
4.4 N语言编译功能的集成 14
4.5 字符编码问题 14
5 详细设计与实现 17
5.1 自定义计算机编程语言-N语言 17
5.2 编译器详细设计 17
5.2.1 语法分析部分 17 [版权所有:http://DOC163.com]
5.2.2 N语言的编译功能 20
5.2.3 main 20
5.2.4 其他附加功能 21
5.3 系统主要运行界面 22
5.4 关键代码 27
6 系统测试 30
6.1 测试方法 30
6.2 测试用例 30
6.2.1 对C语言编译功能的测试 30
6.2.2 对N语言编译的测试 31
6.2.3 对编辑器功能的手动测试 34
6.3 测试结果 35
结论 36
参考文献 37
致谢 38
外文资料 39
中文翻译 74