Четверг, 02.05.2024, 08:10:05
Nice-forum
Приветствую Вас Гость | RSS
Главная | Каталог файлов | Регистрация | Вход
Меню сайта

Категории раздела
ASM [1]
Ассемблер
Видео [0]
Картинки [0]
Программы [0]

Мини-чат

Наш опрос
Как вы нашли этот сайт?
Всего ответов: 20

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Файлы

Всего материалов в каталоге: 1
Показано материалов: 1-1

Searching minimum on MIPS and C

C:

#include <stdio.h>

int main () {
    char ar[] = {1,-5,3,6,-2};
    int min = ar[0];
    int i;

    for (i = 0; i < sizeof(ar); i++) {
        if (ar[i] < min) {
            min = ar[i];
        }
    }

    printf("Min : %d\n", min);
}

MIPS:

.data

ar:     .word 1, -5, 3, 6, -2, -10, 8
size:    .word 7

.text
.globl main

main:

la $t0, ar        #adr of ar
lw $t1, 0($t0)    #min
lw $t2, size    #load array size
li $t3, 0        #i = 0

loop:

beq $t3, $t2, exit    #if i < sizeof(ar) jump to exit
lw $s0, ($t0)        #get element of array
blt $s0, $t1, ifbody# if ar[i] < min jump to ifbody
addi $t3, $t3, 1    #i++
addi $t0, $t0, 4    #adr+4
j loop

ifbody:

move $t1, $s0    #min = ar[i]
j loop

exit:
move $a0, $t1
li $v0, 1
syscall

li $v0, 10
syscall

ASM | Reads: 212 | Downloads: 0 | Added by: Colt48 | Rating: 0.0 | Comments (0) | Added: 24.10.2016, 23:12:43

Вход на сайт

Поиск

Друзья сайта

Copyright MyCorp © 2024