The Simplified Instructional Compiler(SIC) 요약(2)
SIC/XE Machin Architecture
-Memory : 1-magabyte(2^20 byte)
-Reg.
*B(3) : Base reg. ; used for addressing
*S(4) : General working reg. ; no special use
*T(5) : General working reg. ; no special use
*F(6) : Floating-point accumulator(48-bit)
-Data format : same data format as the standard ver. In addition, 48-bit floating-point data type
S(1-bit) | exponent(11-bit) | fraction(36-bit)
f*2^(e-1024) ; f - fraction, e - exponent
-Instruction format
*type 1 : op(8-bit)
*type 2 : op(8-bit), r1(4-bit), r2(4-bit)
*type 3 : op(6-bit), n(1-bit), i(1-bit), x(1-bit), p(1-bit), e(1-bit), disp(12-bit) -> e = 0
*type 4 : op(6-bit), n(1-bit), i(1-bit), x(1-bit), p(1-bit), e(1-bit), address(20-bit) -> e = 1
type 1 and 2 : don't reference memory at all
type 3 and 4 : discussed under addressing mode(e is used)
-Addressing mode
*Relative addressing mode for format 3(e = 0)
Base relative : b=1, p=0 ; TA = (B) + disp(0<= disp <= 4095)
Program counter relative : b=0, p=1 ; TA = (PC) + disp(-2048 <= disp <= 2048)
*Direct addressing : b=0, p=0 ; TA = disp
*Indexed addressing : x bit is set to 1(can be combined with relative or direct. can't STD SIC) added (X)
*bit i and n set
1)n=0, i=1 : immediate addressing. no memory reference. target address is used as op value
2)n=1, i=0 : indirect address
3)n=0, i=0 : simple address for SIC ; b, p, e are used as address fields
4)n=1, i=1 : simple address for SIC/XE
-Instruction set : included standard ver. In addition
*load and store : LDB, STB etc...
*floating-point : ADDF, SUBF, MULF, DIVF
*operand from reg. : RMO, ADDR, SUBR, DIVR
*supervisor call : SVC
-Input and Output : Tree inst.(included standard ver.)
*SIO : start
*TIO : test
*HIO : halt
'Computer > Computer Eng.' 카테고리의 다른 글
구글에서 드리는 송년 메세지 (0) | 2009.12.21 |
---|---|
링커와 로더 (0) | 2007.10.10 |
The Simplified Instructional Compiler(SIC) 요약(2) (0) | 2007.10.07 |
The Simplified Instructional Compiler(SIC) 요약(1) (0) | 2007.10.07 |
시스템 프로그래밍 - 과제1 (0) | 2007.09.13 |
ACM ICPC (0) | 2007.09.09 |