MIPS의 subu 명령어는 부정 결과를 낳을 수 있습니까, 아니면 서명되지 않은 서브 버전을 수행하고 있으므로 결과가 항상 긍정적입니까? 또한, 산술 시프트를 올바르게하고 번호의 0 번째 위치에 1을 넣고 싶다면 sra 명령어를 사용해야합니까, 아니면 다른 명령어가 있습니까?
나는 일반적인 아이디어를 찾고있다. IEEE float 또는 double이 저장되는 방법을 알고 있지만 정확하게 곱하는 방법을 알지 못합니다. 정수 하나를 float 레지스터에 double으로 저장 한 다음 일반 double 곱하기 명령을 사용하는 것이 좋습니다. IEEE double을 정수로 멀티 플라이 할 때 어떤 특성이 있습니까? "지수를 곱해야만한다
다음 문제에 대한 도움을 바랍니다. MIPS 어셈블리에서 n을 인수로 받고 큐브인지 확인하는 is_cube 함수를 구현하도록 요청 받았습니다. 예를 들어, 8 (2^3)과 1000 (10^3)은 큐브입니다. $sp이 과정의 모든 의해 스택에 $s0을 저장하지 않고, # UNTITLED PROGRAM
.data
str: .asciiz "Please e
필자는 저의 석사 논문을 진행하고 있으며 크로스 컴파일러 구성에 문제가 있습니다. 나는 많은 기사, 자주 묻는 질문, 튜토리얼 등을 읽었지 만, 나는 여전히 내가 어쩌면 매우 어리 석고 기초적인 것을 놓친다 고 생각한다. 그러나 그것없이 나는 모든 것에 대한 명확한 비전을 가질 수 없다. 모든 일을하게 ... 그래서 제발 모든 것을 설명해 주시기 바랍니다.
MIPS 어셈블리에서 31 주사위 놀이 게임을 구현하는 아키텍처 클래스에 대한 할당이 있습니다. 지금까지 많이 했었고 보드를 표시하기 위해 2 개의 배열을 사용했습니다. 0을 사용하여 빈 필드와 기타 숫자 (예 : 해당 필드에 현재 배치 된 체커의 수를 표시하는 숫자 13), 흰색 체커 (포스터 번호로 표시) 및 빨간색 체커는 1-15의 음수를 사용하여 나
MIPS에서 la 명령어는 lui 및 ori으로 변환됩니다. 그러나 MARS Simulator는 전혀 그런 것처럼 보이지 않습니다. 나는 다음과 같은 기계 코드 덤프 경우 : .text
la $a0, array
la $a1, array_size
lw $a1, 0($a1)
.data
array: .word 0:10
저는 현재 MIPS 아키텍처를 목표로 숙제로 a toy compiler을 작성하고 있습니다. 호출자-저장됩니다 s0s7, 그리고 호출자가 저장되어 t9-t0 : 18 개보다 높은 수준의 언어로 번역 할 때 일반적으로 사용할 수있는 레지스터가 있습니다. 이 18 개의 레지스터를 사용할 수있는 경우, 함수의 변환을 수행 할 때 어느 레지스터를 선호해야합니까?
내 MIPS 기반 임베디드 장치에 C 대신 C++로 내 응용 프로그램을 빌드하려고합니다. 먼저, here을 볼 수있는 링크 문제가 있습니다. 이 문제가 해결되어 성공적으로 애플리케이션을 구축 할 수있었습니다. 이제 std::vector 클래스를 사용하고 싶습니다. 내 코드는 다음 vector<char> v; 라인이 실행되면 #include <vector>
0에서 99 사이의 임의의 정수를 생성하려고하는데 42 시스템 콜을 사용할 때 값을 저장할 위치를 찾는 데 어려움을 겪고 있습니다. 지금까지 내가 가진 : 생성 된 값이 내가 생각 사용할 수 있습니다 저장 위치 li $a1, 100
li $v0, 42
syscall
잘 모르겠어요. syscall 도움말 페이지에서
5 R 유형 명령어는 원래 5 단계 (스칼라) 파이프 라인 프로세서에서 실행됩니다. 지시 사항에는 어떤 종류의 종속 관계도 없습니다. 우리 프로세서의 차수 2 슈퍼 파이프 라인 버전에서이 같은 명령 시퀀스가 대신 실행되면 다른 변경 사항이없는 경우 어떤 속도 향상 요소가 제공됩니까? degree-2 수퍼 파이프 라인 시스템은 각 단계를 두 단계로 나눠서