본문 바로가기
기타

[MIPS] MIPS 명령어 모음 / MIPS introduction set

by 서상혁 2019. 10. 4.

 

MIPS란?

MIPS란  밉스 테크놀리지에서 개발한 RISC 기반의 마이크로 프로세서 명령어 집합 구조를 말한다.

 


MIPS 명령어 모음

 

< 논리,연산 >

 

add (add)  :                add $s1 $s2 $s3  ->    $s1 = $s2 + $s3             -    더한다.

sub (subtract)  :           sub $s1 $s2 $s3  ->    $s1 = $s2 - $s3        -    뺀다.

addi (add immediate)  : addi $s1 $s2 10  ->    $s1 = $s2 + 10      -  상수를 더할때 주로 쓴다.

lw (load word)  :          lw $s1, 20($s2)  ->      $s1 = Memory[$s2+20]   - 메모리에서 레지스터로 load한다.

sw (store word) :         sw $s1, 20($s2)  ->      Memory[$s2+20]           - 레지스터에서 메모리로 store한다.

and (and) :                and $s1, $s2, $s3 ->     $s1 = $s2 & $s3            - s2와 s3의 and 값을 s1에 저장한다.

or (or) :                     or $s1, $s2, $s3 ->       $s1 = $s2 | $s3            - s2와 s3의 or 값을 s1에 저장한다.

sll (shift left logical) :    sll $s1, $s2, 10  ->       $s1 = $s2 <<10           - s1 은 s2을 10만큼 좌비트이동 한것이다.

srl (shift right logical) :  srl $s1, $s2, 10  ->       $s1 = $s2 >>10           - s1 은 s2을 10만큼 좌비트이동 한것이다.

 

 

< 조건 >

 

beq (branch on equal) :       beq $s1, $s2, 25 ->     if($s1 == $s2) go to PC+4+100  - s1=s2 면 25로 이동한다.

bne (branch on  not equal) : beq $s1, $s2, 25 ->     if($s1 != $s2) go to PC+4+100   - s1!=s2 면 25로 이동한다.

slt (set on less than) :          slt $s1, $s2, $s3  ->    if($s2 < $s3) $s1 =1 else $s1 = 0 - s1<s2 만족하면 1 아니면 0

j (jump) :                          j  2500              ->    go to 10000                           - 목표 주소로 점프한다.

jr (jump register)                jr  $ra               ->    go to $ra                               - For switch, procedure return

jal (jump and link)              jal 2500             ->    $ra = PC + 4 ; go to 10000       - resgister 로 점프하여 링크

728x90

댓글