본문 바로가기

Programming

[Info] 프로그래밍 언어

728x90
반응형


●프로그래밍 언어

- 프로그래밍 언어의 필요성

우리 사람들이 서로 의사교환을 할때 언어가 사용된다. 이처럼 사람과 컴퓨터 사이에 서로 의사교환을 하기 위해서 만든것이 프로그래밍 언어이다. 프로그래밍 언어는 사라밍 컴퓨터에세 지시할 명령어를 기술하기 위해 만들어진 언어이다.

▶ 저급언어

- 기계어

기계어란 컴퓨터에게 지시할 명령을 직접적으로 표현한 언어이다. 0과1로 표현되는 언어로서 컴퓨터가 직접 이해할 수 있는 유일한 언어이다.

기계어는 연산 코드(Operation Code)와 피연산자(Oparand)로 구성된다. 연산 코드는 메모리나 레지스터에 데이터를 저장 하서나 산술연산 등을 수행하는 연산자에 해당하는 코드이며 피연산자는 메모리 주소나 레지스터 번호 등을 나타낸다. 

또한 기계어의 경우에는 컴퓨터 하드웨어에 직접적으로 명령을 하기 떄문에 강력한 통제가 가능하다는 장점이 있다. 하지만 0과 1로 이루어져 있기 때문에 프로그래밍 하기가 어렵다.


- 어셈블리어

어셈블리어란 기계어를 간략하게 기호화(Symbolize)한 언어이다. 어셈블리가 사용되면서 컴퓨터의 상업적 이용이 늘어나게 되고 좀더 발전한 고급 언어인 코볼, 파스칼, 포틀란, C언어 등이 등장하기 시작한다.

어셈블리어는 기계어의 연산 코드와 피연산자를 프로그래머가 좀 더 이해하기 쉬운 기호 형태로 일대일 대응시킨 프로그래밍 언어이다. 연산 코드를 기호화 한것을 니모닉(Mnemonic)이라 부르며, 예시로 ADD(add), STA(STore Address), 등등이 사용된다. 

어셈블이어는 기계어에 비해서 프로그래밍이 간소화 되었으며 연산코드와 니모닉이 일대일 대응이 되기 때문에 기계어의 장접인 중앙처리기같은 하드웨어 장치에 대한 강력한 통제역시 가능하다는 장점이 있다. 그러나 어셈블리어도 사용자보다는 컴퓨터를 고려한 언어이기 때문에, 기계어보다는 이해하기 쉬우나 사람에게는 여전히 어려운 언어이다.


▶ 고급언어

여러가지가 있다.

C, C++, JAVA, ..... 자세한 설명은 생락하겠음.

반응형

'Programming' 카테고리의 다른 글

[Android] Layout - LinearLayout  (0) 2013.09.29
[Android] View  (0) 2013.09.29
[JAVA] 출력 스트림 ( OutputStream )  (0) 2013.06.06
[JAVA] FileInputStream과 InputStream  (0) 2013.06.06
[JAVA] I/O모델과 스트림  (0) 2013.06.05