[기타] 매크로 프로그래밍에 대해서

매크로 프로그래밍의 개념 및 특징

매크로(Macro)는 프로그램 작성 시 한 프로그램 내에서 동일한 코드가 반복 될 경우 반복되는 코드를 한번만 작성하여 특정 이름으로 정의한 후 그 코드가 필요할 때마다 정의된 이름을 호출하여 사용하는 기법입니다. 

1. 일종의 부 프로그램(Sub-Program)으로 개방 서브루틴(Poened Sub-routine)이라고도 합니다.

2. 매크로는 문자열 바꾸기와 같이 매크로 이름이 호출되면 호출된 횟수만큼 정의된 매크로 코드가 해당 위치에 삽입되어 실행됩니다.

3. 매크로 정의 내에 또 다른 매크로를 정의할 수 있습니다.

4. 사용자의 반복적인 코드 입력을 줄여줍니다.

5. 매크로 정의형태는 주로 어셈블리어 형태입니다.

 

매크로 용어

매크로 정의 : 프로그래머가 일정한 형식에 따라 매크로를 작성하는 것을 말합니다.

매크로 호출 : 정의된 매크로 이름을 주 프로그램에 기술하는것을 뜻합니다.

매크로 확장 : 매크로 호출부분에 정의된 매크로 코드를 삽입하는것을 뜻합니다.

매크로 라이브러리 : 여러 프로그램에서 공통적으로 자주 사용되는 매크로들을 모아놓은 라이브러리입니다.

 

매크로와 부 프로그램의 비교

매크로는 부 프로그램의 일종으로, 반복되는 코드를 한번만 작성하여 사용한다는 것은 동일하지만 반복되는 코드의 처리 방식이 서로 다릅니다.

 구분 매크로  부 프로그램 
 다른이름  개방 서브루틴  폐쇄 서브루틴 
 처리방식 주 프로그램의 매크로 호출 명령이 있는 위치마다 매크로 내용을 삽입하여 확장된 프로그램을 만들어 놓고 연속적으로 실행합니다.  부 프로그램이 호출될때마다 제어가 부 프로그램으로 넘어갔다가 다시 주 프로그램으로 복귀됩니다.
 특징 둘다 코딩이 간편해지며 부 프로그램은 매크로에 비해 프로그램 크기가 작아지고 기억장소가 절약되지만 실행 시간은 약간 느려집니다.

 

매크로 프로세서란?

매크로 프로세서는 원시 프로그램에 존재하는 매크로 호출 부분에 매크로 프로그램을 삽입하여 확장된 원시 프로그램을 생성하는 시스템 소프트웨어입니다.

 

매크로 프로세서의 처리과정

1. 매크로 정의 인식 : 원시 프로그램 내에 매크로의 시작을 알리는 'Macro'명령을 인식합니다.

2. 매크로 정의 저장 : 매크로를 확장하기 위해 매크로 이름과 매크로 내용을 매크로 테이블에 저장합니다.

3. 매크로 호출 인식 : 주 프로그램의 명령부에서 매크로 이름으로 매크로 호출을 인식합니다.

4. 매크로확장과 인수 치환 : 주 프로그램의 매크로 이름 위치에 매크로 내용과 인수를 치환하여 확장된 원시 프로그램을 만듭니다.

 

댓글

Designed by JB FACTORY