(출처)
https://www.youtube.com/watch?v=RHvS7oMXloU
프로그래밍이란 프로그램을 만드는 것임. 그럼 프로그램은 어떻게 만들어지나? 컴파일러에 의해서 실행파일을 만들면 그것이 바로 프로그램임.
컴파일러는 프로그램을 만드는 프로그램임.
예를 들어, test.c 파일을 컴파일러를 이용해 컴파일 하면 test.exe 실행파일을 만들어냄.
test.c는 문자의 나열이므로 메모장과 같은 텍스트 에디터 프로그램으로 열 수 있음. HxD나 UltraEditor같은 16진수 표현 프로그램으로 열면 각 문자의 아스키 코드에 대응되는 16진수를 확인할 수도 있음. 컴파일러는 gcc.exe라는 이름으로 존재하는데 이러한 프로그램도 사실 메모장으로 열어 볼 수 는 있음.(내용이 사람이 알아볼 수 없는 문자로 되어있음.) 프로그램도, 소스파일도 데이터의 나열이다. 그러나 둘의 차이는 이러한 데이터를 어떻게 이용할 것인가에 있다. 즉, 데이터를 프로그램을 실행하는 데 이용하면, 즉, 프로그램 실행에 이용하면 프로그램이고 단순히 화면에 출력하는 문자데이터로 이용하면 문자로 화면에 보이는 것이다.
요약하면, 소스파일이나 프로그램이나 어떤 데이터의 나열인데 어떤식으로 이용하냐에 따라서 동작이 다른것이고 컴파일러는 소스파일을 읽어들여서 출력 결과로 프로그램을 만들어 낸다. 컴파일러가 읽어들여서 실행파일을 만들어 낼 수 있도록 (문법에 맞도록) 작성된 텍스트를 소스파일이라고 할 수 있다. 이때 소스코드를 작성하는 언어를 프로그래밍 언어라고 하고 각각의 문법은 표준으로 정해져있다.
Programming means to make programs. Then how can programs be made? Compiler makes it. Compiler is the program makes programs. For example, if you compile a source code, you can get execute file (xxx.exe). Source code is composed of strings, that can be open on text editor program like notepad. If you open it on editor program that convert string to hex data, you can get result of the hexadecimal number listed. And the hex data is correspond to each character.( --> See 'ASCII code' table.) 'gcc.exe' is one of the compiler currently used universally. Actually, you can open the execute file on text edit program. It contains data that used for operating the program. Both source code and execute file are consist of character data. But, the difference of them is usage of data. In other words, it's up to whether the data is for program execution or just string to display on the screen.
A Compiler convert source code to program. Source code should be written according to the grammar of programming language. There are several standard which defines rules and grammar of programming language.
(참고자료 _ reference)
c language standard document
c++ language standard document
댓글 없음:
댓글 쓰기