Алгоритмы и программный инструмент построения эквивалентных представлений исходных текстов программ

Автор: Ковалевский Алексей Анатольевич, Пустыгин Алексей Николаевич

Журнал: Инфокоммуникационные технологии @ikt-psuti

Рубрика: Технологии компьютерных систем и сетей

Статья в выпуске: 4 т.13, 2015 года.

Бесплатный доступ

В статье рассмотрен прототип программного инструмента статического анализа программных систем, основанный на специальном наборе данных, полученном из исходного текста программ с помощью компилятора с открытым исходным кодом. Прототип позволяет получать эквивалентные представления путем линейных и нелинейных преобразований этого набора данных. Пользовательский интерфейс построен на языке запросов, синтаксис которого позволяет задавать произвольные сочетания доступных преобразований с дополнительными параметрами, соответствующими целям анализа. Варианты преобразований определяются в конфигурационном файле, который представляет собой XML-документ. Прототип также позволяет выполнять анализы над полученными эквивалентными представлениями. В статье в качестве примера описан «температурный» анализ синтаксической перегруженности строк и сложности блоков исходного текста в контексте потока управления. Прототип был протестирован на проекте с открытым исходным текстом - библиотеке для разбора XML-документов.

Еще

Промежуточное представление, исходный код, поток данных, поток управления, синтаксическое дерево

Короткий адрес: https://sciup.org/140191788

IDR: 140191788   |   DOI: 10.18469/ikt.2015.13.4.06

Список литературы Алгоритмы и программный инструмент построения эквивалентных представлений исходных текстов программ

  • Инструменты статического анализа кода//URL: http://www.viva64.com/ru/t/0074/(д.о. 20.06.2015).
  • Ошнуров Н.А., Пустыгин А.Н., Ковалевский А.А. Построение универсального промежуточного представления исходных текстов на языках C++ и C#//Доклады ТГУСУР. Т. 33, № 3, 2014. -С. 135-139.
  • Ковалевский А.А., Пустыгин А.Н., Ошнуров Н.А. Построение эквивалентного представления исходных текстов программ в форме, пригодной для выполнения анализов потока данных в потоке управления//Известия ЮЗГУ. Серия управление, вычислительная техника, информатика. медицинское приборостроение. №1 (14), 2015. -C. 28-34.
  • MultiCrossAnalyzer//URL: https://yadi.sk/d/a5GbG-1uhLbG2 (д.о.19.06.2015).
  • Pugixml v1.2//URL: http://pugixml.org/2012/05/01/pugixml-1.2-release.html (д.о. 22.06.2015).
Статья научная