In this thesis , we will review some traditional methods of detecting data dependence and analyze the relation between the data dependence and the mechanism of parallelism . based on path analysis and symbolic execution , we describe two methods , static analysis and dynamic analysis , for detecting data dependence of array variables in loops of sequential programs 进而提出了基于路径分析和符号执行的静态测试和动态测试方法,来研究串行程序中循环内部数组变量的数据相关性,该方法对于下标表达式为线性表达式时有很好的效果,而且能够处理一些复杂的数组下标表达式,比如数组下标表达式含有输入变量和非线性下标表达式的情况。