아래는 계승 함수의 C 코드입니다. 재귀 함수가 어떻게 작동하는지 명확히 이해합니다. 하지만 시각화하거나 MIPS 스택에서 작동하는 방법을 모를 수 없습니다. MIPS 코드 내 질문이 는 우리가 어떻게 재귀 함수 재귀의 각 단계에 대한 스택 (새 주소 & 인수 저장)를 저장하는, 무엇입니까? 각 재귀 함수에 대해 인수 및 반환 주소를 저장하고 스택 포인터를
내가 MIPS에 직접 번역이 C 코드를 만들려고에 C를 변환 : 난 그냥 몇 가지를 이해하려고 노력 중이 야 for (i=0; i<128; i++)
{ a[i] = b[i] - c[i] + 5; }
. 여기에 지금까지 무엇을 add $t4, $zero, $zero # I1 i is initialized to 0, $t4 = 0
Loop:
안녕하세요. MIPS에서 정수가 16 비트 정수를 한정하는지 판단하는 방법을 알아 내려고합니다. 나는 2^15-1 = 32767 또는 2^(16-1) -1 = 32767이라는 것을 알고 있고 이진수는 16 비트 값을 원한다는 것을 이해합니다. 어쨌든 정수가 테스트를 통과하는지 판단하려고합니다. 나는 이것을 썼다 : addi $s3, $zero, 32767
이것은 매우 새로운 MIPS 코더의 매우 일반적인 질문이지만 C에서 MIPS로 코드를 변환 할 때 명령 수는 구현에 따라 변경되거나 항상 동일합니까? 예를 들어 다음과 같은 방정식을 사용했습니다. for(i=0; i<a; i++)
for(j=0; j<b; j++)
D[4*j] = i+j;
내 명령어 개수는 (4 * a) + (8 * a * b) +4
그래서 내 질문은 어떻게이 오류를 해결할 수 있습니다. 내 프로그램의 구조인가? 또는 레지스터 사용 방법에 대해 어떻게 생각하십니까? #JTWILKI - Just The Way I Like It Cooking Assistant
# Created By: Samuel Buzas
#For CS2028 Sect.002
.data
preface: .a
저는이 숙제 문제로 꽤 오래 동안 갇혀 있었고 도움이 필요합니다. 지금까지 나는이 함께 왔어요 : f:
lw $t0, a
lw $t1, b
lw $t2, c
lw $t3, d
addi $sp, $sp, -4
정말 날 혼란 부분은 return 문이다. 나는 그것을 위해 무엇을해야할지 모른다. 숙제 문
내 컴퓨터 그래픽 아키텍쳐에서 교수는 MIPS에서 파이프 라이닝에 대해 이야기했으나 x86 명령어 세트 (일부 기억이 안 나는 것) 때문에 x86 프로세서에 사전 논리를 추가해야 할 필요가 있다고 말했습니다. 어셈블리 명령과 파이프 라인을 처리합니다. 차라리 주제에 대한 설명서를 참조하거나 힌트를보다, 직접 숫자 대답을 찾고 있지 않다 : 파이프 라인을 허
나는 몇 군데에서 이것을 읽었지만 그 이유를 완전히 이해하지는 못했다. 나는 왜 모든 명령어가 MIPS32에서 4 바이트로 정렬되어야하는지 이해한다. 그러나 그 때 스택 포인터가 더블 워드로 정렬되어야하기 때문에 스택 프레임은 8의 배수가되어야합니다. 왜? 나는 8 바이트의 배수로 패드 스택을 빈 공간을 추가하는 이유를 제외하고 첨부 된 이미지의 모든 것을
그래서 MIPS를 사용하여 사용자가 입력 한 여러 문자열을 읽은 다음 인쇄하려고 시도하지만 예상 한 동작이 나타나지 않습니다. 4 바이트의 사용자 입력 (필수적으로 4 문자)을 가져 가고 싶습니다. 내 루프에서는 'D'라는 문자를 종료 신호로 사용합니다. 문제는, 내가 입력 한 것과 상관없이 나중에 첫 번째 입력 (또는 두 번째 또는 세 번째)을 인쇄하려고
C에서 다음 MIPS 번역이 있습니까? 그렇지 않은 경우 자세히 설명하십시오. 제 교수는 버전 1이 맞다고 말했습니다. 버전 2와 같은 명령어를 작성하면 동일한 출력을 생성하더라도 마크를 얻지 못합니다. 그녀는 이유를 설명하지 않았다. 미리 감사드립니다. C 코드 if (i==j) { f = g + h ; } else f = g -h ; MIPS 버전 하나