Page 65 - 컴퓨터구조(프로그래밍 관점에서 바라보는)도서 미리보기
P. 65
277CHAPTER 7? 기계어 프로그래밍을 통한 컴퓨터 구조 이해
이제까지 아주 간단한 기계어 프로그램을 실행해보았다. 이제 이 기계어
코드가 어떻게 해석되는지 배워볼 시간이다.
⑵? 기계어 해독
컴퓨터가 이해할 수 있는 명령어들을 명령어 집합(instruction set)이라고 아래의 표는 일반적인 기
한다. 컴퓨터의 종류에 따라 컴퓨터가 이해할 수 있는 기계어의 모양은 조 계어 명령어의 종류를 나
금씩 다르지만, 아래에 일반적으로 많이 사용되는 명령어들을 소개한다. 타내었다. 6장 중앙처리장
치에서 배운 이론적인 내
표 7.1? 일반적인 기계어 명령어의 종류 용들을 여기서 실제로 경
험할 수 있는 기회다.
add 2 레지스터(일반적으로) 간의 덧셈
산술 연산 sub 2 레지스터(일반적으로) 간의 뺄셈
mul 2 레지스터(일반적으로) 간의 곱셈
논리 연산 div 2 레지스터(일반적으로) 간의 나눗셈
and 두 데이터의 비트 단위의 and 연산
데이터 전송 연산 or 두 데이터의 비트 단위의 or 연산
분기 연산 not 데이터의 비트 단위의 not 연산
load 메인 메모리의 데이터를 CPU 내부의 레지스터로 복사
조건 비교 연산 store 레지스터의 데이터를 메인 메모리로 복사
br 분기를 위해서 pc 값 변경
cmp 특정 값들을 비교해서 조건을 결정함
위의 표는 일반적인 기계어 명령어들을 설명한 표이고, 아래는 Pep/8 가 아래의 인스트럭션 표에
상 머신의 기계어(인스트럭션) 표이다. 아래 표의 인스트럭션을 이제 하 서 음영으로 표시된 인스
나씩 설명하자. 아래의 음영으로 표시된 stop, character input, character 트럭션만 본 교재에서 기
output, add, load, store 인스트럭션은 이 교재에서 사용할 인스트럭션들 계어 인스트럭션으로 사용
이다. 한다. 본 교재에서는 모든
기계어 명령어들을 익히는
것이 아니기 때문이다. 지
금은 인스트력선의 기능을
그냥 한번씩 읽어두자. 향
후에 자세하게 소개된다.