Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 15-04-2007, 09:17   #1
xbubbax
Senior Member
 
Iscritto dal: Apr 2007
Messaggi: 381
Bubble Sorte in MIPS

Qualcuno mi aiuta a modificare questo bubble sort in MIPS in modo da funzionare per un vettore di 6 elementi e per far si che stampi il vettore ordinato.

.text
.globl main

main:

li $a0,10 #parameter n
sll $a0,$a0,2 #number of bytes in array A

outer:

sub $t0,$a0,8 #$t0: j-1
li $t1,0 #no swap yet

inner:

lw $t2,A+4($t0) #$t2<--A[j]
lw $t3,A($t0) #$t3<--A[j-1]
bgt $t2,$t3,no_swap #A[j]<=A[j-1]?

sw $t2,A($t0) #A[j-1]<--$t2 \move bubble
sw $t3,A+4($t0) #A[j]<--$t3 /$t2 upwards
li $t1,1 #swap occurred

no_swap:

sub $t0,$t0,4 #next array element
bgez $t0,inner #more?

bnez $t1,outer #did we swap?

li $v0,10 #exit
syscall

.data

A: .word: 4,6,5,8,2,3,5,1,7,9
xbubbax è offline   Rispondi citando il messaggio o parte di esso
Old 15-04-2007, 12:04   #2
luka987
Member
 
Iscritto dal: Jul 2006
Messaggi: 43
mips l'ho fatto in architettura dei processori come esame all'uni...ma onestamente non sono così freschi i ricordi
ma non basta che modifichi la seguente riga:

li $a0,10 #parameter n

se vuoi un vettore di sei elementi fai:

li $a0,6

ho guardato il programma molto al volo ma $a0 dovrebbe fungere da contatore della lunghezza del vettore. Infatti a ogni ciclo lo decrementa:
sub $t0,$a0,8 #$t0: j-1

spero di non aver detto boiate
luka987 è offline   Rispondi citando il messaggio o parte di esso
Old 15-04-2007, 12:07   #3
Kuntz87
Junior Member
 
Iscritto dal: Mar 2007
Messaggi: 15
se magari potresti provarlo e dirmi se funziona mi faresti un enorme piacere

così magari vedi l'errore che da
Kuntz87 è offline   Rispondi citando il messaggio o parte di esso
Old 15-04-2007, 12:20   #4
Kuntz87
Junior Member
 
Iscritto dal: Mar 2007
Messaggi: 15
in pratica il programma dovrà fare questo

Il programma dovrà

definire un'area di memoria array che conterrà un vettore numerico generico
un'area di memoria array che conterrà il vettore ordinato
(opzionale: stampa a video del vettore ordinato)
Kuntz87 è offline   Rispondi citando il messaggio o parte di esso
Old 15-04-2007, 12:40   #5
Kuntz87
Junior Member
 
Iscritto dal: Mar 2007
Messaggi: 15
comq xbubbax e kuntz87 sono sempre io
Kuntz87 è offline   Rispondi citando il messaggio o parte di esso
Old 16-04-2007, 23:18   #6
recoil
Senior Member
 
L'Avatar di recoil
 
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19150
Codice:
.data

A: .byte 4,6,5,8,1,3,10,2,7,9


.text
.globl main

main:

li $s0,10 #parameter n
li $t0,0  # $t0 fa da contatore per il ciclo outer
la $a1,A  # in $a1 indirizzo dell'array

outer:

li $t1, 0 #$t1 contatore ciclo interno
li $t5, 0 #$t5 per vedere se c'è stato swap

inner:

add $t4,$a1,$t0 # in $t4 indirizzo A[i]
lb $t2,0($t4)   # $t2<--A[i]
add $t4,$a1,$t1 # in $t4 indirizzo A[j]
lb $t3,0($t4)   #$t3<--A[j]
bgt $t2,$t3,no_swap #A[i]>A[j]?

sb $t2,0($t4) #A[j]<--$t2 \move bubble
add $t4,$a1,$t0
sb $t3,0($t4) #A[i]<--$t3 /$t2 upwards
li $t5,1

no_swap:

addi $t1,$t1,1 # j = j + 1
bne $t1,$s0,inner # j = 10?

beqz $t5,endsort # niente swap, si puo' uscire

addi $t0,$t0,1 # i = i + 1
bne $t0,$s0,outer # i = 10?

endsort:

li $t0,0 # contatore per stampa numeri

print:

add $t4,$a1,$t0
lb $a0,0($t4)
li $v0,1
syscall
addi $t0,$t0,1
bne $t0,$s0,print

li $v0,10 #exit
syscall
ho usato byte perché con la direttiva word spim dava errore, non ricordo come si carica una word e il mio collegamento a internet penoso non mi contente di verificare come si fa
ricordo anche io la parola chiave word, chissà come mai non va...

Ultima modifica di recoil : 16-04-2007 alle 23:22.
recoil è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Space Pioneer starebbe realizzando un pr...
SpaceX ritirerà ''a breve'' il Fa...
La Luna ha un nuovo cratere di grandi di...
ROG Cronox: ASUS alza l'asticella dei ca...
Lenovo annuncia nuovi sistemi per la vir...
M6 e M5 Ultra, i primi benchmark conferm...
La nuova falla della cybersecurity &egra...
The Blood of Dawnwalker, il sequel potre...
Colpiti i data center Amazon: irrecupera...
Google Wallet, nuova interfaccia in arri...
iPhone Duo, problemi di produzione per i...
Firefox diventa più veloce con PDF e JPE...
WhatsApp, arriva su iOS la nuova scorcia...
Snap presenta Specs: realtà aumentata, c...
SteamOS verso un cambiamento epocale: ar...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:15.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v