컴퓨터공학 기초/Embedded system

SIC/XE 머신이란 무엇인가?

레필리아 2010. 9. 18. 00:29

 1. SIC/XE 머신이 뭐에요?
SIC머신에 대해 정리해놓은적이 있는데요,
한번 더 말씀드리면,
그냥 가장 기본적인 능력을 수행해내는 가상의 컴퓨터 입니다.
네 아주 기본적인 능력만 수행합니다.

그렇기 때문에 한계에 부딪히게 됬습니다.
주소도 좀 모자란것같고.. 뭐 이런저런 -_-;하여튼 뭔가 좀 부족해..

그래서 나온 게 SIC/XE입니다.

SIC머신에 조금더 살을 같다 붙인겁니다.

그럼 지금부터 SIC/XE머신에 대해서 알아보도록 하죠. 어렵지 않습니다.



 2. 메모리

SIC머신과 같습니다. 1바이트는 8비트고, 1워드는 3바이트입니다. 아주 쉽죠~
다만,
주소가 부족했습니다. 그래서 2^15의 주소를 2^20으로 확장했습니다.
결국 1Mb까지 주소를 표현할 수 있게 되었습니다.



3. 레지스터
추가된것만 알아보도록하죠.
 이름
 번호
 설명
 B  3  베이스 레지스터 : 기존 SIC머신에서 사용했던 주소방식을 사용하기 위해서 존재합니다.
 S  4  범용 레지스터 : -_-;그냥 쓰고싶을 때 쓰라구 있는겁니다.
 T  5  요놈도 마찬가지로 범용 레지스터
 F  6  Floating 레지스터 : 실수를 계산하기 위해 존재하는 레지스터!! ㅠ.ㅡ 감동!! 48비트입니다.

자 이렇게 4개가 추가 되었습니다.
가장 눈에 띄는건 역시, (F)레지스터네요. SIC/XE에 오면서, 실수를 처리할 수 있게 되었습니다.



4. 데이터 포멧

Floating point (48비트)가 추가된걸 빼면 SIC버전과 똑같습니다.

그럼 저 48비트짜리 실수를 다룰때 메모리를 어떻게 사용하는지 알아보죠.

 S (1bit) Exponent (11bits)
 Fraction (36bits)

S는 양수냐 음수냐 입니다.1이면 음수고 0이면 양수입니다.
E는 지수부분입니다. 0<= E <= 2047의 범위를 가집니다. (총 2048개)
F는 소수의 값입니다.

잠깐 소수의 표현방법을 알아보도록 하죠. 소수표현은 다음과 같은 공식을 쓰는데..
외울필요는 없고 그냥 아 이런게 있구나.. 알고만 있으시면 됩니다.

(-1)SFrac*2(Exp - 1024)
그냥 아 저런게 있구나.. 하고 넘어가도록 하죠.



 5. 명령어 포멧

SIC과는 다르게, 명령어를 처리하는 포멧이 존재합니다.
15비트로 모두 표현하기엔, 비트가 부족했기 때문이죠.
총 4가지가 있는데, 차근히~ 배워보도록 하죠. 어렵지 않습니다.
 
 Format 1
 OP (8bits)           
 

  Format 2
 OP (8bits)      | r1 (4bits) | r2 (4bits)  r1, r2는 인자입니다.

  Format 3
 OP (8)  |n | i |x | b | p | e | disp (12)
 nixbpe모두 1비트입니다. SIC코드도 사용가능!
                                   0    0 이면 SIC코드입니다. 그리고 xbpe disp가 address로 사용됩니다! SIC이니까요!

  Format 4
 OP (8)  |n | i |x | b | p | e | address (20)  
                                                            1이 되면 무조건 4byte가 됩니다.

휴~ 이렇게 4가지 포멧이 존재합니다.


오늘은 포멧까지만 배우고, 나머지는 다음시간에 배우도록 하죠!

[출처] http://1228.tistory.com