导航:首页 > 源码编译 > 编译与自动机论文

编译与自动机论文

发布时间:2022-06-14 03:01:39

‘壹’ 编译器的工作原理实际上就是自动机吗

不是。一个完整的编译器包含词法分析、语法分析、语义分析、中间代码生成、目标代码翻译和性能优化等诸多步骤。你说的有限自动机是仅用于词法分析的词法识别器。

‘贰’ 编译原理 相关论文

擦!这是谁啊!肯定认识…………

‘叁’ 计算机毕业论文范文2000字

学术堂整理了一份2000字的计算机毕业论文范文,供大家进行参考:

论文题目:《计算机教育过程中的信息安全问题》

【摘 要】随着科学技术的不断发展,计算机网络技术得到飞速发展和应用,而在计算机教育过程中存在着很多的不安全因素,因此计算机网络安全越来越受到人们的高度关注.本文通过介绍计算机教育的发展现状,分析在计算机教育过程中的信息安全存在的问题,并针对计算机信息安全问题提出相应的防范措施,对今后计算机教育的信息安全研究具有重要的参考价值.

【关键词】计算机教育 信息安全 存在问题 防范措施 发展现状

一、计算机教育发展现状

计算机网络技术的不断普及,给人们的生活带来很多的便利,但也存在着极大的安全隐患,即计算机网络信息安全问题.而计算机信息系统安全包括有计算机安全、网络安全和信息安全,而一般提到的就是信息安全,它在计算机教育系统中发挥着非常重要的作用,贯穿着计算机教育的全过程.正是由于计算机信息安全在人们的生产生活中充当着极其重要的作用,因此要探讨计算机教育过程面临着怎样的信息安全问题,这值得我们加强对计算机教育过程中信息安全问题的防范,以此营造健康安全的计算机网络环境.

计算机教育信息系统是个复杂的系统性安全问题,它包含计算机系统中的硬件、软件、计算机运作系统以及计算机的查毒系统,更甚于有计算机的病毒等.而计算机教育过程中存在的信息安全问题一般包含有硬件破坏、软件错误、感染病毒、电磁辐射、管理不当以及病毒的恶意侵犯等问题都有可能威胁到计算机的信息安全问题.计算机网络系统是教育过程中一门重要的跨多个学科的综合性科学,在我国的教育教学中逐渐被广泛地应用起来,也同时受到社会各方面的高度关注.但计算机教育过程中存在很多的信息安全因素,需要我们加强对计算机教育信息安全的关注.

二、计算机教育过程中的信息安全存在的问题

(一)计算机病毒的危害

计算机病毒在我国颁布的计算机有关保护条例中明确将计算机病毒列为能干扰计算机功能或者破坏计算机数据,并影响计算机的正常使用的一种信息安全病毒.当前计算机容易受到很多病毒的侵害,如木马、火焰、网络蠕虫等,这些计算机病毒的危害极大,传播速度极快,影响范围极广,而且传播形式多种多样,后期的清除难度也更大,目前是计算机教育过程中信息安全面临的最主要的问题.

(二)IP地址被盗用

在计算机教育过程中,往往会出现许多的IP地址被盗用的问题,使用户无法正常地使用网络.IP地址被盗用一般更多地会发生在计算机IP地址权限比较高的用户中间,盗用者会通过网络隐藏其身份对高级用户进行干扰和破坏,导致用户无法正常使用计算机,可能带来较为严重的影响,甚至威胁到用户的信息安全和合法权益.

(三)网络攻击

网络是是指攻击者通过网络对用户的信息进行非法访问及破坏,而这其中包含有很多的形式,这完全取决于的个人主观动机.有些出于非常恶意的态度而对计算机信息安全进行破坏,这其中包括有对用户的的信息安全进行有意泄漏,对用户造成许多负面影响,还有些的行为较为严重,他们会窃取国家政治军事机密,损害国家的形象;非法盗用他人账号提取他人银行存款;对用户进行网络勒索或诈骗,这些的行为将对我国的计算机信息安全造成极大的破坏和攻击.

(四)计算机网络安全管理不健全

计算机网络安全管理中往往存在很多的问题,如计算机网络安全管理体制不健全,管理人员职责分工不明确,缺乏一定的网络安全管理机制,缺乏一定的计算机网络安全管理意识,这些使得计算机网络信息安全的风险更加严重,逐渐威胁计算机网络的信息安全.

三、针对计算机信息安全问题提出相应的防范措施

(一)计算机病毒的防范

计算机病毒应该采取的措施以防御为主,然后再加强对病毒的防范和管理.应该在计算机硬件或软件上安装全方位的防病毒查杀软件,定期地对计算机系统进行升级,从而保证计算机教育系统的信息安全.

(二)防技术

随着科学技术的不断进步,人们对身份的鉴别也有了一定的认识,人们也逐渐认识到身份认证的重要作用,因此用户应该做的是定期地修改用户账户和.而目前我国采用的最常见的防技术就是防火墙技术,防火墙技术可以对网络安全进行实时地监控,有效地防止了地干扰和破坏.

(三)提高计算机网络安全意识

计算机网络信息安全在很大程度上是由于人们对计算机信息安全的保护意识不强而引起的安全问题,计算机网络信息安全是一项综合性较强且复杂的项目,因此应该加强对计算机信息安全人员的技术培训,增强用户的计算机网络安全意识,从而发挥计算机技术的更大的优势.

四、结束语

计算机网络信息安全与我们的生活息息相关,计算机教育网络信息系统需要大家的共同维护,因此在建立健康安全的计算机信息技术平台环境,需要做的不仅仅是要建立安全的防护体系,更要做的是加强人们对计算机信息安全的防范意识,才可以建立一个通用安全的网络环境.

参考文献

[1]高瑞.浅议计算机教育过程中的信息安全问题[J].电子制作,2015,(8)15,58-69.

[2]张大宇.计算机教育过程中的信息安全问题探讨[J].中小企业管理与科技(下旬刊),2014,(6)25,45-53.

信息安全论文参考资料:

计算机信息安全论文

信息安全论文

信息网络安全杂志

网络信息安全论文

移动信息期刊

食品安全论文2000字

结论:计算机教育过程中的信息安全问题为关于对不知道怎么写信息安全论文范文课题研究的大学硕士、相关本科毕业论文信息安全论文开题报告范文和文献综述及职称论文的作为参考文献资料下载。

‘肆’ 为什么要学习编译原理

大学课程为什么要开设编译原理呢?这门课程关注的是编译器方面的产生原理和技术问题,似乎和计算机的基础领域不沾边,可是编译原理却一直作为大学本科的必修课程,同时也成为了研究生入学考试的必考内容。编译原理及技术从本质上来讲就是一个算法问题而已,当然由于这个问题十分复杂,其解决算法也相对复杂。我们学的数据结构与算法分析也是讲算法的,不过讲的基础算法,换句话说讲的是算法导论,而编译原理这门课程讲的就是比较专注解决一种的算法了。在20世纪50年代,编译器的编写一直被认为是十分困难的事情,第一Fortran的编译器据说花了18年的时间才完成。在人们尝试编写编译器的同时,诞生了许多跟编译相关的理论和技术,而这些理论和技术比一个实际的编译器本身价值更大。就犹如数学家们在解决着名的哥德巴赫猜想一样,虽然没有最终解决问题,但是其间诞生不少名着的相关数论。
推荐参考书
虽然编译理论发展到今天,已经有了比较成熟的部分,但是作为一个大学生来说,要自己写出一个像TurbocC,Java那样的编译器来说还是太难了。不仅写编译器困难,学习编译原理这门课程也比较困难。
第一本书的原名叫《CompilersPrinciples,Techniques,andTools》,另外一个响亮的名字就是龙书。原因是这本书的封面上有条红色的龙,也因为獗臼樵诒嘁朐?砘?嘴域确实?忻?所以很多国外的学者都直接取名为龙书。最近机械工业出版社已经出版了此书的中文版,名字就叫《编译原理》。该书出的比较早,大概是在85或86年编写完成的,作者之一还是着名的贝尔实验室的科学家。里面讲解的核心编译原理至今都没有变过,所以一直到今天,它的价值都非凡。这本书最大的特点就是一开始就通过一个实际的小例子,把编译原理的大致内容罗列出来,让很多编译原理的初学者很快心里有了个底,也知道为什么会有这些理论,怎么运用这些理论。而这一点是我感觉国内的教材缺乏的东西,所以国内的教材都不是写给愿意自学的读者,总之让人看了半天,却不知道里面的东西有什么用。
第二本书的原名叫《ModernCompilerDesign》,中文名字叫做《现代编译程序设计》。该书由人民邮电出版社所出。此书比较关注的是编译原理的实践,书中给出了不少的实际程序代码,还有很多实际的编译技术问题等等。此书另外一个特点就是其现代而字。在传统的编译原理教材中,你是不可能看到如同Java中的垃圾回收等算法的。因为Java这样的解释执行语言是在近几年才流行起来的东西。如果你想深入学习编译原理的理论知识,那么你肯定得看前面那本龙书,如果你想自己动手做一个先进的编译器,那么你得看这本《现代编译程序设计》。
第三本书就是很多国内的编译原理学者都推荐的那本《编译原理及实践》。或许是这本书引入国内比较早吧,我记得我是在高中就买了这本书,不过也是在前段时间才把整本书看完。此书作为入门教程也的确是个不错的选择。书中给出的编译原理讲解也相当细致,虽然不如前面的龙书那么深入,但是很多地方都是点到为止,作为大学本科教学已经是十分深入了。该书的特点就是注重实践,不过感觉还不如前面那本《现代编译程序设计》的实践味道更重。此书的重点还是在原理上的实践,而非前面那本那样的技术实践。《编译原理及实践》在讲解编译原理的各个部分的同时,也在逐步实践一个现代的编译器TinyC.等你把整本书看完,差不多自己也可以写一个TinyC了。作者还对Lex和Yacc这两个常用的编译相关的工具进行了很详细的说明,这一点也是很难在国内的教材中看到的。
推荐了这三本教材,都有英文版和中文版的。很多英文好的同学只喜欢看原版的书,不我的感觉是这三本书的翻译都很不错,没有必要特别去买英文版的。理解理论的实质比理解表面的文字更为重要。
编译原理的实质
几乎每本编译原理的教材都是分成词法分析,语法分析(LL算法,递归下降算法,LR算法),语义分析,运行时环境,中间代码,代码生成,代码优化这些部分。其实现在很多编译原理的教材都是按照85,86出版的那本龙书来安排教学内容的,所以那本龙书的内容格式几乎成了现在编译原理教材的定式,包括国内的教材也是如此。一般来说,大学里面的本科教学是不可能把上面的所有部分都认真讲完的,而是比较偏重于前面几个部分。像代码优化那部分东西,就像个无底洞一样,如果要认真讲,就是单独开一个学期的课也不可能讲得清楚。所以,一般对于本科生,对词法分析和语法分析掌握要求就相对要高一点了。
词法分析相对来说比较简单。可能是词法分析程序本身实现起来很简单吧,很多没有学过编译原理的人也同样可以写出各种各样的词法分析程序。不过编译原理在讲解词法分析的时候,重点把正则表达式和自动机原理加了进来,然后以一种十分标准的方式来讲解词法分析程序的产生。这样的做法道理很明显,就是要让词法分析从程序上升到理论的地步。
语法分析部分就比较麻烦一点了。现在一般有两种语法分析算法,LL自顶向下算法和LR自底向上算法。LL算法还好说,到了LR算法的时候,困难就来了。很多自学编译原理的都是遇到LR算法的理解成问题后就放弃了自学。其实这些东西都是只要大家理解就可以了,又不是像词法分析那样非得自己写出来才算真正的会。像LR算法的语法分析器,一般都是用工具Yacc来生成,实践中完全没有比较自己来实现。对于LL算法中特殊的递归下降算法,因为其实践十分简单,那么就应该要求每个学生都能自己写。当然,现在也有不少好的LL算法的语法分析器,不过要是换在非C平台,比如Java,Delphi,你不能运用YACC工具了,那么你就只有自己来写语法分析器。
等学到词法分析和语法分析时候,你可能会出现这样的疑问:词法分析和语法分析到底有什么?就从编译器的角度来讲,编译器需要把程序员写的源程序转换成一种方便处理的数据结构(抽象语法树或语法树),那么这个转换的过程就是通过词法分析和语法分析的。其实词法分析并非一开始就被列入编译器的必备部分,只是我们为了简化语法分析的过程,就把词法分析这种繁琐的工作单独提取出来,就成了现在的词法分析部分。除了编译器部分,在其它地方,词法分析和语法分析也是有用的。比如我们在DOS,Unix,Linux下输入命令的时候,程序如何分析你输入的命令形式,这也是简单的应用。总之,这两部分的工作就是把不规则的文本信息转换成一种比较好分析好处理的数据结构。那么为什么编译原理的教程都最终把要分析的源分析转换成树这种数据结构呢?数据结构中有Stack,Line,List这么多数据结构,各自都有各自的特点。但是Tree这种结构有很强的递归性,也就是说我们可以把Tree的任何结点Node提取出来后,它依旧是一颗完整的Tree。这一点符合我们现在编译原理分析的形式语言,比如我们在函数里面使用函树,循环中使用循环,条件中使用条件等等,那么就可以很直观地表示在Tree这种数据结构上。同样,我们在执行形式语言的程序的时候也是如此的递归性。在编译原理后面的代码生成的部分,就会介绍一种堆栈式的中间代码,我们可以根据分析出来的抽象语法树,很容易,很机械地运用递归遍历抽象语法树就可以生成这种指令代码。而这种代码其实也被广泛运用在其它的解释型语言中。像现在流行的Java,.NET,其底层的字节码bytecode,可以说就是这中基于堆栈的指令代码的。
关于语义分析,语法制导翻译,类型检查等等部分,其实都是一种完善前面得到的抽象语法树的过程。比如说,我们写C语言程序的时候,都知道,如果把一个浮点数直接赋值给一个整数,就会出现类型不匹配,那么C语言的编译器是怎么知道的呢?就是通过这一步的类型检查。像C++语言这中支持多态函数的语言,这部分要处理的问题就更多更复杂了。大部编译原理的教材在这部分都是讲解一些比较好的处理策略而已。因为新的问题总是在发生,旧的办法不见得足够解决。
本来说,作为一个编译器,起作用的部分就是用户输入的源程序到最终的代码生成。但是在讲解最终代码生成的时候,又不得不讲解机器运行环境等内容。因为如果你不知道机器是怎么执行最终代码的,那么你当然无法知道如何生成合适的最终代码。这部分内容我自我感觉其意义甚至超过了编译原理本身。因为它会把一个计算机的程序的运行过程都通通排在你面前,你将来可能不会从事编译器的开发工作,但是只要是和计算机软件开发相关的领域,都会涉及到程序的执行过程。运行时环境的讲解会让你更清楚一个计算机程序是怎么存储,怎么装载,怎么执行的。关于部分的内容,我强烈建议大家看看龙书上的讲解,作者从最基本的存储组织,存储分配策略,非局部名字的访问,参数传递,符号表到动态存储分配(malloc,new)都作了十分详细的说明。这些东西都是我们编写平常程序的时候经常要做的事情,但是我们却少去探求其内部是如何完成。
关于中间代码生成,代码生成,代码优化部分的内容就实在不好说了。国内很多教材到了这部分都会很简单地走马观花讲过去,学生听了也只是作为了解,不知道如何运用。不过这部分内容的东西如果要认真讲,单独开一学期的课程都讲不完。在《编译原理及实践》的书上,对于这部分的讲解就恰到好处。作者主要讲解的还是一种以堆栈为基础的指令代码,十分通俗易懂,让人看了后,很容易模仿,自己下来后就可以写自己的代码生成。当然,对于其它代码生成技术,代码优化技术的讲解就十分简单了。如果要仔细研究代码生成技术,其实另外还有本叫做《》,那本书现在由机械工业出版社引进的,十分厚重,而且是英文原版。不过这本书我没有把它列为推荐书给大家,毕竟能把龙书的内容搞清楚,在中国已经就算很不错的高手了,到那个时候再看这本《》也不迟。代码优化部分在大学本科教学中还是一个不太重要的部分,就是算是实践过程中,相信大家也不太运用得到。毕竟,自己做的编译器能正确生成执行代码已经很不错了,还谈什么优化呢?
编译原理的课程毕竟还只是讲解原理的课程,不是专门的编译技术课程。这两门课程是有很大的区别的。编译技术更关注实际的编写编译器过程中运用到的技术,而原理的课

‘伍’ 论文信息编译是什么意思

论文信息编译就是把论文中高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。它不像直译语言一样,由解释器将代码一句一句运行,而是以编译器,先将代码编译为机器码,再加以运行。理论上,任何编程语言都可以是编译式,或直译式的。它们之间的区别,仅与程序的应用有关。

‘陆’ 编译原理实验报告

#include<stdio.h>
void main()
{

int m=0,n=0,n1=0,n2=0,n3=0,zg,fzg,flag;
int bz[7]=;/*状态改变控制,1 表示可以改变状态zt值,0 表示不可以*/
int zt[7]=;/*状态值,2表示未定状态,1表示 是,0表示 否*/

char temp[100]="\0";/*用于求first集*/
char z[7];/*非总结符*/
char z1[7];/*总结符*/
char z2[7]="\0";/*gs[]文法中出现的标记个数的辅助字符 01234*/
char gs[100]="\0";/*文法,按顺序排成字符串*/

printf("请依次输入非终结符(不超过7个):");
gets(z);
while(z[m]!='\0')

fzg=m;//zg是非终结符个数

while(n<m)
//生成01234辅助字符
printf("您输入了:");
puts(z);
fflush(stdin);

printf("请依次输入终结符(不超过7个):");
gets(z1);
while(z1[n1]!='\0')

zg=n1;
printf("您输入了:");
puts(z1);
fflush(stdin);

printf("按照正确格式输入所有文法(总长度不超过100格式如下):");
printf("如果文法为(字符'k'表示空):\n");
printf("S-->AB S-->bC A-->k A-->b\n");
printf("输入:0SAB0SbC1Ak1Ab\n");
printf(" (注:数字01234表示第一二三四个非终结符)\n");

gets(gs);
fflush(stdin);
printf("您输入了:");
puts(gs);
m=0;
//对于输入文法字符串的转换,将每个文法式左部去除
while(gs[m]!='\0')
{
n=m;
if(gs[m]>='0'&&gs[m]<='9')
{
m++;
while(gs[m]!='\0')
{
gs[m]=gs[m+1];
m++;
}
//gs[m-1]='\0';
}
m=++n;
}

m=0;

//puts(gs);

/*情况一,直接判定是 形如: (A-->k) */
while(gs[m]!='\0')
{
if(gs[m]=='k')
{
zt[gs[m-1]-48]=1;
bz[gs[m-1]-48]=0;
}
m++;
}

/*情况二,直接判定--否 形如: (D-->aS ,D-->c) */
for(n=0;n<fzg;n++)
{
if(bz[n]==1)
{
m=0;
n2=0;
while(gs[m]!='\0')
{
if(z2[n]==gs[m])
{
if(gs[m+1]>=z1[0]&&gs[m+1]<=z1[n1-1])
zt[n]=0;
else //gs[m+1] 是非终结符n2做标记
}
//跳出循环,无法解决该情况,推到下面情况三
m++;
}
if(n2!=99) //完成所有扫描,未出现非终结符,得出结论zt[n]=0.bz[n]=0不允许再改变zt[n]
}
}

/*情况三,最终判定*/
do
{
flag=0;
for(n=0;n<fzg;n++)
{
if(bz[n]==1) //未得到判定
{ m=0;
while(gs[m]!='\0')
{
if(gs[m]==z2[n]) //判定gs[m]是辅助字符0123
{
m++;
while(gs[m]>='A'&&gs[m]<='Z')
{

n1=0;
for(n2=0;n2<fzg;n2++) //循环查找是gs[m]哪个非终结符
{
if(gs[m]==z[n2])
{
if(zt[n2]==1) //这个非终结符能推出空
zt[n]=1;
else if(bz[n2]==1) //这个非终结符 现在 不能推出空,但它的状态可改即它最终结果还未判定

else
//设 m1 做标记供下一if参考
break; //找到gs[m]是哪个非终结符,for循环完成任务,可以结束
}

}
if(n1==99) break;
m++;
}
}
m++;
}
if(zt[n]==1) bz[n]=0;
if(bz[n]==0) flag=1;//对应for下的第一个if(zt[n]==2)
}

}
}while(flag);

printf("结果是:\n");

for(m=0;m<5;m++)
{
switch(zt[m])
{
case 0:printf("%c---否\n",z[m]);break;
case 1:printf("%c---是\n",z[m]);break;
case 2:printf("%c---未定\n",z[m]);break;
}

}
/*
puts(gs);
puts(zt);
puts(z);
puts(z1);
puts(z2);
printf("%d,,,%d",fzg,zg);
*/

//下面求first集
//下面求first集

for(n=0;n<fzg;n++)

m=0;n=0;n1=0;n2=0;
while(gs[n]>='0'&&gs[n]<='9')
{
for(;m<fzg;m++)
{
if(n2!=m)
n1=0; //m=n2用于第二次以后的for循环中还原上次m的值

if(gs[n]==z2[m])
{
while(gs[n+1]>'9')
{
if(n1==0)
//如果是第一个直接保存

//不是第一个,先与字符数组中其它字符比较,没相同的才保存
else if(gs[n]>='a'&&gs[n]<='z'&&gs[n+1]>='A'&&gs[n+1]<='Z') //gs[n]是终结符 且 gs[n+1]是非终结符
;//什么也不做,程序继续n++,扫描下一个gs[n]

else
{
for(n3=0;n3<=n1;n3++)
{
if(temp[m*13+n3]==gs[n+1])
break;
}

if(n3>n1) //for循环结束是因为n3而不是break

}
n++;
}
break; //break位于if(gs[n]==z2[m]),对于gs[n]已找到z2[m]完成任务跳出for循环
}
}
n2=m; //存放该for循环中m的值
n++;
}
//进一步处理集除去非终结符
m=0;n=0;n1=0;n2=0;
for(m=0;m<fzg;m++)
{
if(flag!=m)
n1=0; //m=flag用于第二次以后的for循环中还原上次m的值

while(temp[m*13+n1]!='\0')
{
while(temp[m*13+n1]>='A'&&temp[m*13+n1]<='Z') //搜索非终结符
{
for(n=0;n<fzg;n++) //确定是哪个非终结符
{if(temp[m*13+n1]==z[n])
break;
}
while(temp[m*13+n1]!='\0') //从temp[n*13+n1]开始每个字符依次往前移动一

n1--;
while(temp[n*13+n2]!='\0') //把z[n]对应的first加入temp[m*13+n1]这个first中,每个字符依次加在最后
{
for(n3=0;n3<n1;n3++) //循环判定是否有相同的字符
{
if(temp[m*13+n3]==temp[n*13+n2])
break;
}
if(temp[n*13+n2]=='k'&&zt[m]==0) //那些不能推出 空,但是因为要加入 其他非终结符的first集 而可能含有 空
n2++;
else if(n3>=n1) //for循环结束是因为n3而不是break ,即无相同字符

else n2++;
}

n1=0;
n2=0;
}

n1++;
}
flag=m; //存放该for循环中m的值
}

//非终结符的first集输出
m=0;n1=0;
for(m=0;m<fzg;m++)
{
n1=0;
printf("非终结符 %c 的first集是: ",z[m]);
while(temp[m*13+n1]!='\0')
{
printf("%c",temp[m*13+n1]);
n1++;
}
printf("\n");
}

}

‘柒’ 编译原理中,确定有穷自动机的化简步骤是什么啊能不能再给个例子啊 给个具体一点的文章或网址也行啊

我有这样一道题的解题步骤,但是图片传不上来,需要的话可以留个邮箱给我。
已知 NFA= ( {x,y,z},{0,1},M,{x},{z} ),其中:
M(x,0)={z},M(y,0)={x,y},M(z,0)={x,z},M(x,1)={x}, M(y,1)= φ ,M(z,1)={y}, 构造相应的DFA并最小化。

‘捌’ 编译原理中如何用自动机实现一个具体问题

B->C->B->....->C
或者B->B...->C
其实具体过程我不知道怎么弄,以前学过,学得不好。

‘玖’ 编译原理 有穷自动机

这个问题问的好啊,问出了广大人民群众的心声。自盘古开天辟地以来,有穷自动机与正规文法的关系就含含糊糊,不明不白。有人说他们很暧昧,也有人说他们是不共戴天的世仇。纠结了几千年的问题今天终于有人要提出来做个了结,实乃民族之大幸,国家之大幸,世界之大幸!呜呼哀哉,有人解决此题时,家祭无忘告乃翁......

‘拾’ 学了形式语言与自动机还要不要学编译原理

《形式语言与自动机》是关于理论计算机的,理论研究用的。从事计算机科学没有理论知识是不行的。
《模糊数学》跟纯数据库没有什么直接关系,但是以后你做数据仓库与知识挖掘的话会用到人工智能和模糊数学的
感觉《随即过程》和人工智能和网络的关系比较大。《计算机体系结构》是计算机科学与技术专业必须要学的,以后凡是涉及到硬件结构与组织形式的课程都会用到它
顺便问一句你很喜欢数据库吗?无论你以后做计算机的哪方面工作,都要对计算机有一个相对全面的了解,打好基础,不要急功近利。一点小小建议

阅读全文

与编译与自动机论文相关的资料

热点内容
阿里用的什么数据库服务器 浏览:337
玩剑网用哪个攻略app 浏览:76
javamysql数据库操作 浏览:225
眉山参加少儿编程培训 浏览:986
androidaes加密java 浏览:816
蜜字的app叫什么 浏览:544
程序员配乐 浏览:453
做一个解压屋 浏览:619
品牌衣服用什么app 浏览:151
python3链接数据库 浏览:55
教课书英语是什么app 浏览:884
环液式压缩机 浏览:479
android控件事件 浏览:967
云服务器的镜像选择什么 浏览:755
python如何设置cplex 浏览:10
linux的mv命令详解 浏览:359
怎么把安装好的python放在桌面上 浏览:121
mysql退出当前命令 浏览:743
现在还有什么手机好用的app 浏览:326
java字符处理函数 浏览:278