출처
roger webb's i-computer systems
blog.naver.com/twogenesis/130104851806
IAS Computer
오늘날의 컴퓨터의 기본 구조가 되는 폰노이만의 IAS Computer에 대해 알아보자
메인 메모리에 프로그램을 내장한 방식의 구조로 Main memory(프로그램과 데이터가 저장), ALU(이진 데이터에 대해 연산 실행), Control Unit(메모리로부터 명령어를 가져와 해석하고 실행), I/O 입출력 장치로 구성되며
프로그램과 데이터를 미리 메모리에 저장해두고 프로그램을 실행하면 메모리로 부터 프로그램 명령어와 데이터를 가져와 실행되는 구조이며 메모리의 값을 변경하여 프로그램을 설정하거나 변경할 수 있다.
메모리 구조
40bit word로 구성된 1000개의 메모리를 가지고 있으며 40bit word는 8bit 명령코드+12bit주소+8bit명령코드
+12bit주소로 구성된다.
IAS Registers
MBR(Memory Buffer Register) : 메모리에 word를 읽어올때 사용
MAR(Memory Address Register) : MBR에 읽어올때 word의 주소를 저장
IR(Instruction Register) : 실행될 Opcode가 저장
IBR(Instruction Buffer Register) : 오른쪽 Opcode가 임시 저장
PC(Program Counter) : 메모리에서 다음에 가져올 Opcde의 주소가 저장
AC and MQ(Accumulator and Multipler Quotuent) : ALU의 연산결과에 따라 누산기와 승수지수(곱셈, 나눗셈 연산으로 늘어난 자리수를 기억하는 보조 누산기)에 저장
IAS 동작
프로그램 제어유닛을 통해 메모리에서 명령어를 가져오는 Fetch Cycle(인출 사이클)과 인출된 명령어를 실행하는 Excute Cycle로 동작한다
Fetch Cycle :
IBR로 부터 명령어 부분을 IR에 저장하고 MAR에는 메모리로 부터 읽어들여 올 위치를 IBR로부터 얻어 저장한다.
(예시) PC(100입력) -> MAR(PC의 100을 메모리 100번지로 인식) -> MBR(100번지의 데이터를 MBR에 저장) -> IBR(MBR의 데이터의 Opcode를 IBR를 통해 IR로 보내고 주소는 MAR로 보낸다) -> IR -> MAR -> PC (PC를 1증가시켜 다음 명령 실행)
Execute Cycle :
MAR 주소내용을 MBR로 읽어와 연산을 수행하고 결과를 AC에 저장
MAR(100) -> MBR(100 주소에 있는 MBR 데이터 100번의 데이터의 에셈블리 코드를 수행)
※ MAR 100 -> MBR (LOAD 200 ADD 201) : 200번지 값을 불러와 201번지 값을 더해 AC에 저장
'OS > Windows' 카테고리의 다른 글
windows에서 joomla 설치 (0) | 2017.02.06 |
---|---|
windows에서 SNORT 설치 (0) | 2017.01.26 |
VM WARE (0) | 2017.01.17 |
운영체제의 동작 (0) | 2017.01.05 |