全文预览

编译原理课程设计课程报告

上传者:相惜 |  格式:doc  |  页数:62 |  大小:1343KB

文档介绍
号(等号)和一个表达式,或者就是一个简单的表达式。赋值有通常的存储语义:找到由var表示的变量的地址,然后由赋值符右边的子表达式进行求值,子表达式的值存储到给定的地址。这个值也作为整个表达式的值返回。var是简单的(整型)变量或数组下标变量。负的下标将引起程序停止(与C不同)。然而,不进行下标越界检查。 var表示C-比C的进一步限制。在C中赋值的目标必须是左值(l-value),左值是可以由许多操作获得的地址。在C-中唯一的左值是由var语法给定的,因此这个种类按照句法进行检查,代替象C中那样的类型检查。故在C-中指针运算是禁止的。 20.simple-expression->additvie-expressionrelopaddtive-expression|additive-expression 21.relop-><=|<|>|>=|==|!= 简单表达式由无结合的关系运算符组成(即无括号的表达式仅有一个关系运算符)。简单表达式在它不包含关系运算符时,其值是加法表达式的值,或者如果关系算式求值为true,其值为1,求值为false时值为0。 22.additive-expression->additive-expressionaddopterm|term 23.addop->+|- 24.term->termmulopfactor|factor 25.mulop->*|/ 加法表达式和项表示了算术运算符结合性和优先级。符号/表示整数除;既任何余数都被截去。 26.factor->(expression)|var|call|NUM 因子是围在括号内的表达式;或一个变量,求出其变量的值;或者一个函数调用,求出函数的返回值;或者一个NUM,其值由扫描器计算。数组变量必须是下标变量,除非表达式由单个ID组成,并且以数组为参数在函数调用中使用(如下所示)。 27.call->

收藏

分享

举报
下载此文档