프로그래밍이란?
•
인간이 디지털기반 기계장치(노트북, 스마트폰, 키오스크, 전기차 등)에게 명령어를 내리는 언어
•
기계장치는 10010(기계어 : 1과 0으로 구성) 이란는 디지털 신호 체계를 가지고 이해를 한다.
•
인간은 자연어(대표적으로 영어)를 가지고 의사소통을 합니다.
•
프로그래밍 언어는 기계어와 인간의 언어(영어)를 소통하게 하는 중간 언어이다.
◦
기계도 이해할수 있고, 사람도 이해할 수 있는 중간의 언어.
프로그래밍의 레벨
•
저수준 언어
◦
기계어와 가깝기 때문에, 코드의 동작속도가 빠르지만, 인간이 코드를 작성하기는 어렵다.
◦
대표적으로 C언어와 어셈블리어가 있다.
•
고수준 언어
◦
인간의 언어와 가깝기 때문에, 인간이 이해하고 코드를 작성하기 쉽다.
◦
하지만 코드 동작 속도가 비교적 느리다.
◦
또 하지만, 요즘은 컴퓨터 성능 좋아져서 그럭저럭 빠르다.
◦
대표적으로 파이썬이 있다.
프로그래밍 방식 : 인터프리터 방식 vs 컴파일러 방식
•
인터프리터 : 프로그래밍 언어를 위에부터 한줄씩 기계어로 번역하여 동작하기 때문에, 잘 동작하다가 중간에 에러가 나면 에러가 난 부분에서 코드 실행이 멈춘다.
•
컴파일러 : 프로그래밍 언어를 통채로 기계어로 번역하기 때문에, 코드에 에러가 있으면 애초에 코드가 동작을 하지 않는다.
다만, 한번 기계어로 번역을 해두면 그 뒤에는 두고두고 쓸수 있기 때문에 두번째 부터는 동작속도가 매우 빠르다.
기계어…의 실체?
•
디지털신호 0과 1 그래서 도대체 그게 뭔데?
•
디지털 신호 0과 1은 전기적 압력(전압)의 차이이다.
•
디지털 신호 0 : 전압 0v ~ 0.7V 일때
•
디지털 신호 1 : 3.7V ~ 5.3V 사이 일때
•
클록 : 디지털 신호 0과 1을 구별하는 박자




