- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 数组相对地址的计算: 一维:A[i]的相对地址为:base+(i-low)*w,其中:w为每个元素的宽度,low为数组的下界,base为分配给数组元素的相对地址。 原式可以变形为:i*w+(base-low*w),可以设a= base ,c=low*w,则原式等价为:i*w+a-c 二维:A[i1,i2]的相对地址为: base+((i1-low1)*d2+i2-low2)*w 其中:d2为i2可以取值的个数,可以变行为: ((i1*d2)+i2)*w+(base-((low1*d2)+low2)*w) 以此类推n维: ((…((i1d2+i2)d3+i3)…)dn+in)*w+ base-((…(low1d2+low2)d3+low3)…)dn+lown)*w * L1 u1 d1 L2 u2 d2 Ln un dn a c n type c = { ( L1 )*d2d3d4...dn + ( L2 )* d3d4...dn + ( Ln-1)* dn + ( Ln ) }*elemlength = {(...((L1d2+L2)d3+L3)d4+L4)......) dn + Ln }*elemlength * 2 数组元素的翻译 设数组元素为: A[ E1,E2,......En], 要取得该元素值,首先要计算 出该元素的地址: addr=conspart+varpart conspart =a -c varpart = {(...((E1d2+E2)d3+E3)d4+E4)......) dn + En }*elemlength conspart 的 a c 已经通过数组说明语句的翻译登记在内 情向量表中; 而 varpart 中含有未知数,只能在程序运行时通过如 下算法实现: * varpart:=E1;k:=1; while kn do { varpart:=varpart*dk +1 + Ek +1; K:=k+1 } varpart:=varpart*elemlength 下面是包含数组元素的变量的文法: V→i | i [ E1,E2,....En] 为了便于翻译上面的算法,文法改为如下形式: V→i | Elist] Elist→i [E | Elist1,E V 有两个值 : V.place , V.off 对于简单变量 , V.place = entry(i),V.off=0; 对于数组变量 , V.place = a -c , V.off=varpart; * Elist 有三个值 : Elist.array // i 在符号表中的位置 Elist.dim // i 的维数 Elist.place // 存放 varpart 的中间结果 语义子程序如下: V→i { V.place:=entry(i); V.off:=0; } Elist→i [E { Elist.array:=entry(i); Elist.place:=E.place; Elist.dim:=1 } * Elist→ Elist1,E {Elist.place:=newtemp( ); Elist.array:= Elist1.array ; Elist.dim:= Elist1.dim+1; dk:=get_dk(Elist.array, Elist.dim); gen(* , Elist1.place,dk, Elist.place); gen(+ , E.place,Elist.place, Elist.place); } V→ Elis
您可能关注的文档
- Glee_English Introduction_欢乐合唱团英文简介.ppt
- IBM培训体系介绍讲解课程课件.ppt
- Legal English 法律英语.ppt
- PCB废水分类及特性.ppt
- Political center in the US & China (oral English).ppt
- Portable Grinder Safety-Chinese and English[安全使用手持式砂轮机].ppt
- ppt背景图片(经典_简约类).ppt
- ppt动态素材动态元素.ppt
- PPT技巧--简易图形模板.ppt
- ppt教程精美模板.ppt
- 5.3.1函数的单调性(教学课件)--高中数学人教A版(2019)选择性必修第二册.pptx
- 部编版道德与法治2024三年级上册 《科技提升国力》PPT课件.pptx
- 2.7.2 抛物线的几何性质(教学课件)-高中数学人教B版(2019)选择性必修第一册.pptx
- 人教部编统编版小学六年级上册道德与法治9 知法守法 依法维权(第一课时)课件.pptx
- 三年级上册品德道德与法治《学习伴我成长》.pptx
- 部编版小学道德与法治六年级上册6 人大代表为人民 课件.pptx
- 部编版小学道德与法治六年级上册1感受生活中的法律第一课时课件.pptx
- 2.5.2圆与圆的位置关系(教学课件)-高中数学人教A版(2019)选择性必修第一册.pptx
- 2.5.1直线与圆的位置关系-(教学课件)--高中数学人教A版(2019)选择性必修第一册.pptx
- 14.1.1 同底数幂的乘法(教学课件)-初中数学人教版八年级上册.pptx
文档评论(0)