참고 : 이전에 요청되지 않았으며 검색 된 경우 검색에서 찾을 수 없다는 것에 놀랐습니다.
나는 수많은 웹 사이트에 있었고, 많은 기사를 읽었으며, 많은 설명을 들었습니다. 그들 대부분은 좋았지 만 모두 광범위하거나 너무 복잡하거나 평범했습니다. 그래서 내 질문은 컴파일러가 어떻게 작동합니까?
이것이 어렵고 광범위한 질문 인 경우 알려주십시오. 그러나 그렇지 않은 경우 질문에 대답하십시오.
참고 : 이전에 요청되지 않았으며 검색 된 경우 검색에서 찾을 수 없다는 것에 놀랐습니다.
나는 수많은 웹 사이트에 있었고, 많은 기사를 읽었으며, 많은 설명을 들었습니다. 그들 대부분은 좋았지 만 모두 광범위하거나 너무 복잡하거나 평범했습니다. 그래서 내 질문은 컴파일러가 어떻게 작동합니까?
이것이 어렵고 광범위한 질문 인 경우 알려주십시오. 그러나 그렇지 않은 경우 질문에 대답하십시오.
답변:
컴파일러는 다른 프로그램의 소스 코드를 프로그래밍 언어에서 실행 가능한 코드로 변환하는 프로그램입니다.
소스 코드는 일반적으로 고급 프로그래밍 언어 (예 : Pascal, C, C ++, Java, Perl, C # 등)로되어 있습니다. 실행 코드는 CPU에 의해 직접 실행될 수있는 일련의 기계 명령 일 수 있거나, 가상 기계 (예를 들어, Java 바이트 코드)에 의해 해석되는 중간 표현 일 수있다.
요컨대, 컴파일러는 프로그램을 사람이 읽을 수있는 형식에서 기계가 읽을 수있는 형식으로 변환합니다.
컴파일러의 작동 방식은 실제로 복잡합니다. 주제에 관한 서적과 대학 과정이 있습니다. 프로세스의 주요 단계를 간략하게 설명하려고 시도하지만 이것은 매우 개략적 인 개요입니다.
다시, 나는 이것이 매우 간단한 설명이라고 강조한다. 현대의 컴파일러는 매우 영리하고 결과적으로 매우 복잡합니다.
컴파일러는 프로그래밍 언어 (소스 언어)로 작성된 소스 코드를 다른 컴퓨터 언어 (종종 객체 코드라고하는 이진 형식을 갖는 대상 언어)로 변환하는 컴퓨터 프로그램 (또는 명령어 세트)입니다. 소스 코드를 변환하려는 가장 일반적인 이유는 실행 가능한 프로그램을 만드는 것입니다.
컴파일러는 기본 하드웨어를 사용하여 고급 언어로 소스 프로그램을 브릿지합니다. 컴파일러에는 다음이 필요합니다.