데이터 세그먼트에 저장된 단일 정밀도 IEEE 754 번호에 4를 곱하여 그 결과를 다시 저장해야합니다. IEEE 754의 작동 방식과이 간단한 곱셈을 수행하는 방법 (Exp + 2)을 완벽하게 이해합니다. 그러나 MIPS가 바이너리 표현을 지원하지 않는 것처럼 보이고 32 개의 0과 1을 데이터 세그먼트에서 읽는 것이 32 비트 바이너리로 어떻게 작동하는
나는 다음과 같은 MIPS 어셈블리 코드 loop: add $t1,$t1,$t1
j loop
을 가지고 있고 나는 프로그램이 작동하는지 확실하지 오전, 그 루프가 지금 0x1FFF FFF8에 위치 알 좋아 ... 점프가 실행될 때 - PC 주소는 0x2000 0000 또는 0x1FFF FFFC입니까? 감사합니다. 신경 쓸
저는 최근에 JIT 컴파일러를 프로그래밍하는 데 필요한 연구를 시작했습니다. 나는 기계어에 대해 공부해 왔지만, 대부분의 표준 PC가 작동하는 기계 언어의 유형을 찾을 수 없었습니다. 나는 this PDF이 ML의 유형을 설명하는 것으로 보이지만, looking it up 이후 MIPS라고 말하면서, 어떤 종류의 비디오 게임 콘솔/라우터 기계 언어처럼 보인
나는 비교적 MIPS가 처음이므로 실력을 향상시키기 위해 예제 문제를 발견하고 있습니다. 나는이 문제에 직면하고있다 : 다른 요소에서 임의의 요소를 뺀 다음 의 값을 첫 번째 배열로 바꿉니다. 각 값 i에 대해 길이가 각각 10 워드 인 배열 a 및 b가 주어진 경우, < = i < 10이면 c = A [i] - B [i]라고합시다. 그런 다음 c < 0
글쎄, 아마도 교수님 한테 물어볼 수도 있었지만, 지난 몇 주간 교수진에 자주 간 적이 없었어요. 정수 배열의 시작 주소 (A [0] 주소)가 레지스터 $ s3에 저장되어있는 경우 MIPS에서 배열의 9 번째 요소를 임시 레지스터 $ t0에 저장하는 어셈블러 코드 lw $ t0 32 ($ s3)이 될 것입니다. 오프셋은 32입니다. 오프셋에 대한 설명은 현
많은 수의 경우 계승을 계산하는 프로그램을 작성해야합니다 (예 : 200). 이것은 나를 위해 매우 중요합니다. 여기 내 코드는 다음과 같습니다 : .text
main:
li $v0, 4
la $a0, prompt
syscall
li $v0, 5
syscall
move $s0, $v0
PIC32는 MIPS 4K 코어를 사용하므로 어셈블리 언어는 파이프 라인 효과 (분기 지연 슬롯과로드 지연 슬롯 모두)의 영향을 받아야합니다. 질문은 지연 슬롯이 하나의 명령어인지, 아니면 더 많은 명령어인지 여부는 문제가되지 않습니다. 파이프 라인의 세부 사항에 달려 있다고 생각합니다. 이에 대한 문서를 찾을 수 없습니다.
나는이 (지금까지 내가 몇 가지를 시도 havent 한하지만 쉽게이 하나 분리 할)이 VIA 할 수있는 방법이있을 예정이다 을 할 수있는 몇 가지 방법을 보았다 gcc와 나는 이것이 벽을 때리는 것을 계속 선호한다. 저는 debian7을 사용하고 있으며, 거기에 다른 어떤 맛을 사용할 수 있습니다. (나는 작은 규모의 것을 원할 때 qemu casue를 피