.text
    .globl_start
__start:
    la $a0, str
    li $v0, 4
    syscall 

    li $v0, 10
    syscall

       .data
str:    .asciiz “hello world\n”

hello world를 출력하는 프로그램

  • text 세그먼트에서는 실제 수행할 명령어들이 들어간다(코드 부분)
  • data 세그먼트에는 코드에서 사용하는 데이터를 기술한다

  • la : load address
  • li : load immediate

str 안에 hello world라는 문장이 들어간 것을 볼 수 있고,
la $a0, str을 보면 str에 들어간 값을 $a0에 집어넣는 것

li $v0, 4 ==> 4번에 해당하는 서비스 해줘 : 4라는 값을 $v0에 넣으라는 것 이다

여기서 4번이란, print를 의미한다
내가 직접 print하는 건 귀찮으니, 원하는 서비스 번호를 입력하여 사용하는 것

li $v0, 10 ==> 10번에 해당하는 서비스 해줘

 

  • 4번 : Print
  • 10번 : Program Exit

syscall로 해당 서비스 실행

 

'학부과정 > 컴퓨터 구조' 카테고리의 다른 글

MIPS_info  (0) 2022.12.21
컴퓨터 구조  (0) 2022.10.11

+ Recent posts