참고자료
PCSpim_9.0.3.ziparchitecture_presentation.pdf
com_project_2011.pptmd00082-2b-mips32int-afp-02.00.pdf
PCSpim_9.0.3.ziparchitecture_presentation.pdf
com_project_2011.pptmd00082-2b-mips32int-afp-02.00.pdf
참고글 링크
PCSpim 프로그램 실행 관련
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/Assembly/Documents/Spim/spim-chapter9
PCSpim 프로그램 & 간단한 코딩 설명
http://blog.naver.com/PostView.nhn?blogId=cakel&logNo=80030778445
위키피디아: MIPS architecture
http://en.wikipedia.org/wiki/MIPS_architecture
MIPS와 스택
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/Assembly/Documents/Spim/spim-chapter25?action=recall&rev=1.6
종합기술 연구소 <- !!
http://cafe.naver.com/totallab/book58752/926
syscall 예제
http://blog.naver.com/dekarno?Redirect=Log&logNo=140024135988
명령어/레지스터 등 설명
http://croute.me/30
PCSpim 프로그램 실행 관련
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/Assembly/Documents/Spim/spim-chapter9
PCSpim 프로그램 & 간단한 코딩 설명
http://blog.naver.com/PostView.nhn?blogId=cakel&logNo=80030778445
위키피디아: MIPS architecture
http://en.wikipedia.org/wiki/MIPS_architecture
MIPS와 스택
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/Assembly/Documents/Spim/spim-chapter25?action=recall&rev=1.6
종합기술 연구소 <- !!
http://cafe.naver.com/totallab/book58752/926
syscall 예제
http://blog.naver.com/dekarno?Redirect=Log&logNo=140024135988
명령어/레지스터 등 설명
http://croute.me/30
- MIPS instruction formats
명령어들은 R, I, J의 세 종류로 나뉜다. 모든 명령어는 6비트의 opcode로 시작한다. opcode뒤에 R타입 명령어는 3개의 레지스터, shift amount, function 필드를 명시한다. I타입 명령어는 2개의 레지스터, 16비트의 직접적인 값을 명시한다. J타입 명령어는 26비트의 jump target이 온다.
Type | -31- format (bits) -0- | |||||
---|---|---|---|---|---|---|
R | opcode (6) | rs (5) | rt (5) | rd (5) | shamt (5) | funct (6) |
I | opcode (6) | rs (5) | rt (5) | immediate (16) | ||
J | opcode (6) | address (26) |
- MIPS assembly language
어셈블리화 되기 전에 여러 개의 실제 명령어로 translate 되어야 하는 pseudoinstruction에 비해 하드웨어에서 직접 실행되는 assembly language instrunction이 있다.
다음에서 레지스터 문자 d, t, s는 (레지스터) 숫자나 레지스터 이름을 대신하는 기호이다.
C는 직접적인 상수를 의미한다.
다음의 모든 명령어는 원래의 명령어이다.
opcode와 function code는 16진수이다.
(2014/04/25: 위에 내용은 뭐지 뭔가 번역하다가 때려치고 만 건가. 아 위키피디아 내용이네.)
- 레지스터
레지스터 번호 | 기억하기 쉬운 이름 | 일반적 용도 |
$0 | zero | 항상 0 |
$1 | $at | 어셈블러 템포러리(지정되어 있음) |
$2, $3 | $v0, $v1 | 서브루틴에서 리턴되는 값 |
$4-$7 | $a0-$a3 | 서브루틴에 입력되는 값 |
$8-$15 | $t0-$t7 | 임시 - 함수호출중에 변할 수 있다 |
$16-$23 | $s0-$s7 | 저장되는 레지스터 - 함수호출중에도 불변 |
$24,$25 | $t8,$t9 | 임시 |
$26,$27 | $k0,$k1 | 커널(OS가 사용함) |
$28 | $gp | 전역포인터 |
$29 | $sp | 스택포인터 |
$30 | $fp | 프레임포인터 |
$31 | $ra | 리턴주소(몇몇 명령에서 자동으로 사용됨) |
'엥그니어링 > 도움글' 카테고리의 다른 글
Favicon / 즐겨찾기 아이콘 등록 (3) | 2014.06.01 |
---|---|
JavaScriptCore (0) | 2014.04.24 |
Sublime Text 2 (0) | 2014.03.06 |
LaTeX (2) | 2014.01.06 |
맥시마(wxMaxima)에서 페이져 계산하기 (0) | 2012.06.09 |
WRITTEN BY
- Chaz
서울소재 모 대학교 공대 졸업하고 일개미가 된 일명 비둘기가 거주하는 곳입니다
,