문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 어셈블러 (문단 편집) == 프로그램 == {{{+2 '''Assembler'''}}} 작성된 [[어셈블리어]]를 [[기계어]]로 바꿔 주는 프로그램. 요즘은 [[C언어]]로 입문하는 이가 많다보니 어셈블러의 특수성을 제대로 이해하지 못하고 어셈블러와 타 [[컴파일러]]간의 차이를 제대로 인식하지 못하는 경우도 있다. [[어셈블리어]]는 기본적으로는 기계어와 1:1 대응이기 때문에 어셈블러에는 인스트럭션 테이블만 내장해 두고 각 구문을 테이블에 맞게 치환만 하면 된다. 이 때문에 대개 '''어셈블러는 타 컴파일러와는 다른 취급을 한다.''' 그러나 이것만 구현하게 되면 다양한 종류의 어셈블러가 나올리는 당연히 없고, 실제로는 어셈블러마다 다른 문법을 지원한다. 가장 크게는 Intel, AT&T로 나뉘고 매크로 등의 기능을 지원하는가/어떤 형식인가 등으로 나뉜다. 그래서 공부해야한다면 자신은 어떤 어셈블러를 사용할지 정하는 것도 중요하다. 대부분의 중/고급 언어의 컴파일러에는 어셈블러가 병합되어 있다. 그러다보니 C의 경우도 C→기계어와 같이 가는 것이 아니라 C→어셈블리어→기계어 순으로 컴파일 할 수도 있다. C로 작성한 다음 어셈블리어로 최적화 한다는 것도 이런 식이다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기