对于同一结构的同一出现,数据之间经过语言的抽象而具有“逻辑关系”,比如同一队元素的先后,同一集合里元素的同类等;数据之间经过汇编活编译的机器实现而具有的存储关系,比如同一数组里元素的偏移,同一堆栈里元素的垒高等。于是,与数据结构相区别,“操作关系”成为数据相关性研究的重点。不同结构或不同出现的数据可能由于加减乘除等明显的操作,也可能因为快分布、公用区等隐蔽的操作而发生关联。前者是显数据相关性,他是在某种封闭(小的诸如结构化的顺序型选择型和重复型三类构建之一,或者时序逻辑程序的单元;大的诸如过程、函数、进城、子程序、线程、对象等)的程序段内,由其执行性语句引起的,作用域仅限于本程序段范围的一类数据相关性。作为显数据相关性的对立面,隐数据相关性是由说明性语句引起的,作用域不限于本程序范围内。
在高级语言的水平上,根据分析单位的大小,对显数据相关性的识别视图大致上可以分为三类:以语句作为分析节点,以变量作为分析节点,以元素作为分析节点。一般而言,随着分析单位的缩小,识别能力在增强。
时间: 2024-12-16 12:44:32