검색어 입력폼

[컴퓨터 구조]SPIM을이용한 MIPS코드구현 구구단 출력프로그램

저작시기 2005.05 |등록일 2006.05.31 한글파일한컴오피스 (hwp) | 5페이지 | 가격 900원

소개글

MIPS 에뮬레이터 SPIM을이용한 MIPS코드구현해 봤습니다.
단순한 구구단 작성 프로그램인데 다른 프로그램 작성하시는데 많은 도움이
되셨으면 합니다.
저도 정확한 자료를 찾지 못해 시스템 콜 하는 부분이 좀 애매했습니다.
좋은 자료 되었으면 합니다.

본문내용

◈ 파일명 : 999.s
◈ 기능 : 사용자로부터 입력 받은 정수 값의 구구단을 출력하는 프로그램
◈ 소스코드

###############################################################################################
# subject : 키보드에서 입력한 구구단을 출력하는 MIPS CPU 프로그램
# author : 조선대학교 정보통신공학과 3학년 20002402 김윤수
#
# Load immediate(li rdest,imm ):수치값 imm을 레지스터 rdest로 이동한다.(li $v0,4)
# load address (la rdest,address):계산된 주소를 rdest에 적재. (la $a0,str)
# syscall : $v0에는 시스템 호출 코드를 쓰고 $a0~$a3에 인자들을 쓴후
# syscall을 하면 해당 시스템콜을 요청하고 결과를 $v0 에 쓴다.
# .data<addr> : 이어지는 값을 데이터 세그먼트에 저장한다. 인자 addr가 명
# 시되어 있으면 이어지는 값을 addr을 시작 주소로 하여 저장.
# .text <addr> : 다음 값들은 사용자 세그먼트에 쓴다.(명령어 또는 워드)
# addr이 있으면 다음 addr로 시작하는 주소에 저장
# ascii str : 문자열 str을 메모리에 저장.(null 문자 제외)
# asciiz str : null문자를 포함하여 str을 메모리에 저장.
###############################################################################################

.data #data section

str : .asciiz "출력할 구구단을 입력하세요: "

mul_symbol : .asciiz " x " # 곱셈 기호 `x`
equ_symbol : .asciiz " = " # 등호 기호 ‘=’
n_line : .asciiz " \n" # 한줄 뛰우기

#char *str="출력할 구구단을 입력하세요: ";
#char *mul_symbol=" x ";
#char *equ_symbol=" = ";
#char *n_line="\n";

.text #text section

main:
li $v0,4 #시스템 호출 코드 4,print_string (문자열 출력)
la $a0,str #출력할 인자(문자열)
syscall #문자열 출력
li $v0,5 #호출코드 5 , read_int
syscall #문자입력받아 $v0에 저장
add $s0,$v0,$zero # $v0는시스템호출시마다 변경되므로 $s0에 저장.(복사안할경우 결
과값 오류)
# printf("%s",str);
# scanf("%d",$v0);
다운로드 맨위로