美文网首页
软考-程序语言基础知识(上)

软考-程序语言基础知识(上)

作者: zhongcx | 来源:发表于2021-01-11 08:05 被阅读0次

    1、简单算术表达式的结构可以用下面的上下文无关文法进行描述(E为开始符号),________是符合该文法的句子。
    E→T|E+T
    T→F|T×F
    F→-F|N
    N→0|1|2|3l4|5|6|7|8|9

    A.2--3×4
    B.2+-3×4
    C.(2+3)×4
    D.2×4-3

    2、语法制导翻译是一种_____方法。
    A.动态语义分析
    B.中间代码优化
    C.静态语义分析
    D.目标代码优化

    3、将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关手中间代码的叙途中,正确的是________。
    A.中间代码常采用符号表来表示
    B.后缀式和三地址码是常用的中间代码
    C.对中间代码进行优化要依据运行程序的机器特性
    D.中间代码不能跨平台

    4、在以阶段划分的编译过程中,判断程序语句的形式是否正确属于_______阶段的工作。
    A 词法分析 B 语法分析 C 语义分析 D 代码生成

    5、乔姆斯基(Chomsky)将文法分为四种类型,程序设计语言的大多数语法现象可用其中的__________描述。
    A 上下文有关文法 B 上下文无关文法 C 正规文法 D 短语结构文法

    6、程序运行过程中常使用参数在函数(过程)间传递信息,引用调用传递的是实参的____。
    A 地址 B 类型 C 名称 D 值

    7、已知文法G:S->A0|B1,A->S1|1,B->S0|0,其中S是开始符号,从S出发可以推导出____。
    A 所有由0构成的字符串
    B 所有由1构成的字符串
    C 某些0和1个数相等的字符串
    D 所有0和1个数不同的字符串

    8、算数表达式a+(b-c)*d的后缀式是_____(-、+、*、表示算数的减、加、乘运算,运算符的优先级和结合性遵循惯例)。
    A bc-d*a+
    B abc-d*+
    C ab+c-d*
    D abcd-*+

    9、将高级语言程序翻译为机器语言的过程中,常引入中间代码,其好处是_______。
    A 有利于反编译处理
    B 有利于进行与机器无关的优化
    C 尽早发现语法错误
    D 可以简化语法和语义分析

    10、对高级语言程序进行编译的过程中,有限自动机(NFA或DFA)是进行_____的适当工具。
    A 词法分析
    B 语法分析
    C 语义分析
    D 出错处理

    11、弱类型语言(动态类型语言)是指不需要进行变量/对象类型声明的语言。_____属于弱类型语言。
    A Java B C/C++ C Python D C#

    相关文章

      网友评论

          本文标题:软考-程序语言基础知识(上)

          本文链接:https://www.haomeiwen.com/subject/mlcfaktx.html