본문 바로가기
이것저것

컴퓨터구조 1장

by 문자메일 2016. 10. 26.

프로그램의 성능

: 사용된 알고리즘의 효율성과 프로그램을 생성하고 기계어로 번역하는 데 사용된 소프트웨어 시스템, 번역된 명령어를 실행하는 컴퓨터의 효율성에 의해 결정된다.



하드웨어 또는 소프트웨어의 구성요소

 미치는 영향

 알고리즘

소스 프로그램 문장 수와 입출력 작업수를 결정 

프로그래밍 언어, 컴파일러, 컴퓨터 구조 

 각 소스 프로그램 문장에 해당하는 기계어 명령어 수 결정

 프로세서와 메모리 시스템

명령어의 실행속도 결정 

입출력 시스템(하드웨어 및 운영체제) 

입출력 작업의 실행속도 결정 






컴파일러는 C, JAVA, C++ 같은 상위 수준의 언어로 작성한 프로그램을 하드웨어가 실행할 수 있는 명령어로 번역하는 중요한 일을 한다.





초창기 프로그래머들은 컴퓨터와 이진수로 대화하였으나, 이것은 매우 지겨운 작업이었기 때문에 곧 사람이 생각하는 것과 비슷한 표시 방법을 생각했다. 처음에는 이 표시방법으로 표현된 프로그램을 사람이 일일이 이진수로 번역했으나 이것 또한 지루한 작업이었다.

이런 기호식 표현을 이진수로 바꾸는 프로그램을 발명한 선구자들이 나타나서, 컴퓨터에 프로그램하는 것을 컴퓨터 자신이 도와주도록 만들었다.

이런 프로그램을 어셈블러(어셈블리 언어 프로그램을 이진수 기계어 프로그램으로 번역하는 프로그램)라 불렀다.

이 프로그램은 기호로 된 명령어를 이진수로 바꾸어 준다. 

예를 들어, 프로그래머가

                       add A, B

라고 쓰면, 어셈블리어가 이것을

             10011001010000

으로 바꾼다. 이 명령어는 컴퓨터에 두 숫자 A와 B를 더하라고 지시하는 것이다.

이러한 기호 형태의 언어에 붙여진 이름이 어셈블리 언어이었고, 이 용어는 오늘날에도 계속 사용되고 있다.

이에 비해서 기계가 이해하는 언어를 기계어라고 한다.

 

댓글