이번 정리에서는 고급 언어와 저급 언어의 차이에 대해서 말씀드리도록 하겠습니다.
일단 고급언어 vs 저급언어에 대해서 생각보다 많은 분들이 잘못 알고 계신 부분이 있는 것 같습니다.
그래서 여기서 다시 한번 정리해 올려 드리도록 하겠습니다.
고급 언어 (High Level Programming)
- 말 그대로 인간이 이해할 수 있는(사실 처음 보는 분들은 이 언어도 못 알아.. ㅈㅅ) 언어
- 컴퓨터 하드웨어 구조에 구애받지 않는 언어
- 인간 지향적인 언어
- CPU가 이해할려면 한번의 번역 과정을 거쳐야 한다
를 말합니다.
그에 비해 저급 언어는 (Low Level Programming)
- 컴퓨터가 이해할 수 있는(사실 이것도 CPU에서... 네) 언어
- 컴퓨터 하드웨어 구조에 구애를 받는 언어 (IA-32, ARM..등등)
- 컴퓨터 지향적인 언어
- 그냥 CPU에 꼴아 박으면 된다.
를 말하는 차이점을 가지고 있습니다.
여기서 많은 분들이 오해를 하고 계시는 부분중에 하나가
"저급 언어가 고급 언어보다 하드웨어 적으로 건드릴 수 있다"
라는 부분인데 사실 이는 올바르지는 않은 말입니다.
예를 들어서 Python, C도 하드웨어 컨트롤이 가능하기 때문이죠
(Python Bluetooth module을 보면 bluetooth hardware를 control 할 수 있기 때문.. 이거나 뭐 어쨌든..)
정리해 보자면 고급언어와 저급언어의 차이는 "얼마나 더 컴퓨터 내부를 건드릴 수 있냐"가 아니라.
"얼마나 컴퓨터에 지향적인가"에 대한 차이입니다.
여러분은 오해 없으시기 바랍니다.
'Programming' 카테고리의 다른 글
아무런 이유 없이 Docker 서비스가 작동되지 않는 이유 (0) | 2015.10.27 |
---|---|
그냥 심심해서 해본 비교 (0) | 2015.07.08 |
How to solve sikuli 1.0.1 Bug in Macintosh OS Yosemite (0) | 2014.12.27 |
Android StrictMode (0) | 2013.10.26 |
IsDebuggerPresent (0) | 2013.07.27 |