본문 바로가기
Programming/정보처리기사

정보처리기사 운영체제 명령어란

by 하하호호 2022. 2. 7.
반응형

 

 

 

운영체제 명령어란?

명령어란 컴퓨터로 명령을 전달하는 방법이다. 컴퓨터는 흔히 bit로 표현되는 디지털 신호를 통해 명령을 전달받는다. Bit가 아닌 문자로 구성된 명령어들은 별도의 번역기를 사용해서 Bit형태로 변환되어 전달되는 것이다. 전달받은 Bit 데이터를 순차적으로 실행하는 과정에서 처리 및 저장 작업등을 수행하는 것이다. 데이터 처리는 PU에서 수행하고 저장은 MEMORY에서 수행한다. 입출력은 각각의 입출력 장치에서 수행한다.

 

명령어 수행

기계 사이클은 메모리에 기억되어 있는 명령어를 가져와서 CPU에서 처리된 일련의 순환주기를 의미한다. Fetch Instruction은 명령어를 주기억 장치에서 레지스터로 가져오는 것이다. Decode Instruction은 명령어를 분석하여 작업 수행에 필요한 장치에 제어 신호를 보내는 것이다.

 

Operand Fetch는 주기억 장치에서 피연산자를 레지스터로 가져오는 것이다. Execute Cycle은 명령어에 해당하는 연산을 실행하고 결과를 레지스터에 저장하는 것이다. Interrupt Search는 인터럽트가 추가된 기계 사이클은 명령어 실행 단계 다음에 인터럽트 처리 여부를 확인하게 된다. 현재 수행 중인 명령어는 끝가지 처리된 후에 인터럽트 여부를 조사한다.

 

레지스터란?

CPU내에서 발생 및 사용되는 데이터를 일시적으로 저장하는 저장장치다. 가격대비 용량이 가장 작고 기억장치 중 속도가 가장 빠르다. 플립플롭(Flip-Flop)과 래치(Latch)로 구성된다.

 

레지스터는 크게 제어장치의 레지스터와 연산장치의 레지스터로 구성된다. 제어장치(CPU)의 레지스터는 메모리 주소 레지스터(MAR), 메모리 버퍼 레지스터(MBR), 프로그램 카운터(PC), 명령 레지스터(IR), 번지 레지스터(AR)로 구성된다. 제어장치(CPU) 레지스터는 산술 및 논리 연산 등의 연산기능을 수행할 때 사용되는 레지스터다.

 

메모리 주소 레지스터(MAR)은 주기억장치 내에 출입하는 데이터의 번지를 기억한다. 메모리 버퍼 레지스터(MBR)은 주기억장치 내에 출입하는 데이터가 잠시 저장되는 곳이다. 프로그램 카운터(PC)는 다음에 실행할 명령어들의 번지를 보관하는 곳이다. 명령레지스터(IR)은 현재 실행중인 명령어를 임시 보관하는 곳이다. 번지 레지스터(AR)은 주기억장치의 번지를 기억한다.

 

연산장치의 레지스터는 명령어 수행에 필요한 데이터를 저장하는 레지스터다. 누산기(Accumulator)는 연산의 결과를 일시적으로 보관한다. 데이터 레지스터는 연산에 사용될 데이터를 기억한다. 상태 레지스터는 연산 중 발생되는 이벤트 상태를 기억한다. 인덱스 레지스터는 주소 변경을 위해 사용되는 레지스터다. 

 

시스템 버스란?

시스템 버스란 주변 장치 간 정보 교환을 위해 연결된 통신 회선이다. CPU 내부 요소 사이의 정보를 전송하는 내부 버스와 CPU와 주변장치간 통신을 하는 외부 버스로 나뉜다. 외부 버스는 주소버스, 데이터 버스, 제어 버스로 구성된다.

 

주소버스란 하나의 장치로부터 다른 장치로 주소 데이터를 전달하는 단방향 회선이다. 주소 버스 회선수는 메모리 용량을 2의 제곱으로 나타냈을 때 지수 기준으로 계산된다. 256bit는 2^8bit가 되어 8비트의 회선이 필요하다.

 

데이터버스는 장치 간 서로 데이터를 교환하기 위한 양방향 회선이다. 데이터 버스 회선 수는 데이터의 크기와 같다. 제어 버스는 CPU가 주변 장치에게 제어 신호를 전달하는 단방향 회선이다.

 

명령어의 형식

명령어는 연산코드와 연산을 수행하는 대상인 오퍼랜드(피연산자)로 구성된다. 명령어 형식에 따라 정보의 양이 달라지기 때문에, 용도에 따라 적절하게 구성해 사용한다. 연산자에는 전달, 함수연산, 제어 , 입출력기능이 있다. 연산 코드의 비트수에 따라서 명령어의 개수가 결정된다. 연산코드(OP-code)가 3bit인 경우 명령어의 개수는 2^3=8개다.

반응형

댓글