반응형 어셈블러3 Assemblers (4) 저번 글에서 기계 독립적인 어셈블러의 특징 5개 중 4개를 다뤄봤다. 이제 Control Section이라는 한가지 특징이 남았는데 다른 특징들보다 내용이 많아서 이렇게 따로 다루게 됐다. 이전 특징들에 비해 생각할 부분들이 많을 것 같다. 그리고 뒤에서는 어셈블러의 Design Option에 대해서도 알아보자. Control Section Control Section(CS, 제어 섹션)은 assembly 이후의 프로그램 일부인데, 각각이 정체성을 유지한다. 각 CS는 다른 섹션과 독립적으로 로드되거나 재배치 될 수 있다. 프로그램의 서브루틴이나 기타 논리적 하위 부문에 서로 다른 제어 섹션이 사용된다. 프로그래머는 각 CS를 개별적으로 조립, 로드 및 조작을 할 수 있다. 그 결과 발생하는 유연함은 제.. 2021. 10. 15. Assemblers (3) 이전에 어셈블러는 기계에 따라 내부의 구현이 달라질 수 있다고 했다. 그럼에도 어셈블러는 기계 아키텍처와 관련되지 않은 독립적인 몇 가지 특징들을 가진다. 이러한 기능의 유무는 기계 아키텍처보다 프로그래머의 편의성 및 SW 환경과 같은 문제와 더 밀접하게 관련되어 있다. 여기서는 이에 대한 5가지 특징들에 대해 살펴보고자 한다. Literal Symbol definitions Expressions Program Blocks Control sections 위와 같은 특징이 적용된 코드를 살펴보자. 프로그램의 내용은 이전과 동일하다. 이제 위에서 언급한 특징들에 대해 자세히 살펴보면서 위의 변화된 점들을 이해해보자. Literals 프로그래머가 상수 operand(피연산자)의 값을 instruction의 일.. 2021. 10. 15. Assemblers (1) SIC/XE에 관해 이전까지 알아보았다. 알아봤듯이 컴퓨터는 기계어(0과 1로만 구성된) 명령을 들으면 그것을 수행한다. 하지만 우리는 c나 python같은 언어로 코드를 작성하여 프로그램을 만든다. 그러므로 당연히 이러한 코드를 기계어로 변환하는 과정이 필요한 것이다. 그러한 역할을 하는 프로그램 중 이번에는 Assember(어셈블러)에 대해 알아볼 것이다. Translating and Starting a Program 컴퓨터가 처음 나왔을 때는 프로그래머들은 기계어로 컴퓨터를 제어했다(처음에는 그 이외의 방법은 존재하지 않았으니깐). 하지만 위에서 설명했듯이 기계어는 기계가 이해하기에는 매우 좋지만 사람이 이해하기는 너무나도 어렵다. 때문에 지금은 프로그램을 프로그래밍 언어로 작성하고 이것을 기계어로.. 2021. 9. 28. 이전 1 다음 반응형