YYYEJI

[MIPS] Register Model - 2 본문

Computer architectures

[MIPS] Register Model - 2

YEJI ⍢ 2022. 9. 24. 22:40
728x90

 

 

간단하게 register에 대해서 설명해 드리겠습니다.

 

 

 

Mip에서의 resister model입니다.

(간단하게 그려놓은 모습입니다.)

0 $ zero constant 0
1 $ at reserved for assembler
2 $v0 return values
3 $v1
4 $a0 arguments
5 $a1
6 $a2
7 $a3
8 $t0 temporary
...  
15 $t7
16 $s0 permanent
...  
23 $s7
24 $t8
25 $t9
26 $k0
27 $k1
28 $gp global pointer
29 $sp stack pointer
30 $fp frame pointer
31 $ra return address

 

0~1은 compiler에서 신경쓰는 부분이기 때문에 우리는 신경쓰지 않아도 됩니다.

2~7은 function을 call하는 부분입니다.

8~25은 user가 assembly language을 사용할 때 필요합니다.

26~27은 OS,

28은 global varia ble

...

etc.

로 사용됩니다.

 

 

Note) $s-는 saved value를 의미해서 영구적으로 value를 저장하고,

$t-는 temporary value를 의미해서 잠시동안 destination의 역할을 합니다.

 

 

현재 Mips에서는 byte address를 사용하고,

byte address란 byte마다 주소를 가지는 것을 말합니다.

 

 

즉, Memory에서 주소 하나당 1byte를 가지고,

4bytes당 한 word가 할당되는 것을 알 수 있습니다.

 

 

 

Note1 ) MIPS는 삼항연산자(three address)를 갖기 때문에 AC가 필요 없습니다..

Note2 ) MIPS는 기본적으로 byte address 구조입니다.

 

 

 

◡̈