我不是计算机科学专业的本科生,并且是专业的网络开发人员(java,python,AS3等)。我每学期在当地大学修一门课程。我上学期参加了人工智能(包括逻辑,上下文无关语法,CYK解析,入门级NLP,马尔可夫链,HMM等)。
我计划在即将到来的semster中学习编译器入门课程,内容涵盖以下课程:
词法分析,语法分析,语义分析,运行时环境,中间表示,代码生成,寄存器分配,指令选择和调度,局部和全局代码优化简介,数据流分析
我的问题是,在学习这门课程之前,我是否应该了解计算机科学专业?如果是,那么请列出这些课程将是很棒的。