제어 흐름 그래프 란 무엇입니까?
제어 흐름 그래프 (CFG) 는 컴퓨터 프로그램의 코드가 취할 수있는 다양한 경로를 시각적으로 표현한 것입니다 . CFG는 노드라고하는 일련의 기호로 구성되어 있습니다. 각 노드는 다음 노드로 이동할 수있는 경로입니다. 각 노드는 중요한 코드 또는 프로그래밍 코드 라인을 나타냅니다. CFG를 렌더링하는 방법은 몇 가지가 있습니다. flow 일반적으로 같은 방식으로 읽습니다.
제어 흐름 그래프를 작성하는 주요 목적 중 하나는 컴퓨터 프로그램에 불필요한 부분이 있는지 여부를 발견하는 것입니다 . 제어 흐름 다이어그램을 볼 때 쉽게 달성 할 수 있습니다. it 나머지 노드에 연결하는 화살표를 제거 할 수 있습니다.
제어 흐름 그래프가 제공하는 또 다른 목적은 무한 루프와 같은 문제를 격리하는 데 있습니다. 프로그램 실행이 단일 노드 이상으로 이동하지 않는 경우 the 다이어그램의 각 화살표는 해당 노드로 이동하기 위해 충족해야하는 조건을 나타냅니다. 따라서 조건이 충족되지 않는 상황을 발견 할 수 있습니다. 프로그램이 이전 노드로 계속 순환하기 때문입니다.
마지막으로, flow 제어 흐름 그래프는 프로그램 의존성 그래프를 만드는 데 도움이됩니다 . 이 유형의 그래프는 다른 부분에 의존하는 프로그램의 영역을 보여줍니다 . 컴퓨터 과학에서, 이것은 프로그램 코드 가 올바른 순서로 실행되고 있는지 확인하십시오.
제어 흐름 그래프의 시각적 특성은 잠재적으로 귀중한 가치를 제공 할 수있는 기능 중 하나입니다. 직접 호출하거나 액세스하지 않는 코드는 주 프로그램과 연결되는 화살표가 없기 때문에 상당히 분명합니다. 또는 조건에 따라 코드에 도달 할 수없는 것으로 나타났습니다. 일련의 소스 코드 파일을 기반으로 제어 흐름 그래프를 자동으로 생성하여 프로세스를 더욱 단순화 할 수있는 컴퓨터 프로그램이 있습니다.
제어 흐름 그래프 는 여러 가지 방법으로 표현할 수 있으므로 누가 생산했는지에 따라 다르게 나타날 수 있습니다 . 일부 그래프는 또는 원을 사용하여 노드를 나타내는 반면 다른 노드는 노드를 나타냅니다. 표준 흐름도와 같은 모양 똑같은 방식으로 읽지 만, 선택 방법은 순전히 개인적인 취향입니다.