Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    185

    [ASSEMBLY MIPS]Come usare lo stack

    Ciao a tutti come state?
    Ho un problema con un esercizio.
    Dato in input un numero intero il programma deve ritornare in ordine i numeri che compongono il numero scritti in lettere. In poche parole se io inserisco 25, il programma mi stampa in output due cinque.
    Ora quello che ho fatto io funziona ma non stampa nel corrette ordine, ovvero stampa a partire dall'ultima cifra, cioè se inserisco il solito 25 il mio programma stampa in output cinque due.
    Per correggere questo "bug" avevo pensato di usare una pila Lifo, in modo tale che mi stampi l'output corretto. Ma come si usa la pila? cioè come si implementa? mi potreste aiutare per favore?
    Questo è il mio codice.
    codice:
    .data
    	insert:	.asciiz "Inserisci un numero intero positivo -> "
    	dig0:	.asciiz " zero "
    	dig1:	.asciiz " uno "
    	dig2:	.asciiz " due "
    	dig3:	.asciiz " tre "
    	dig4:	.asciiz " quattro "
    	dig5:	.asciiz " cinque "
    	dig6:	.asciiz " sei "
    	dig7:	.asciiz " sette "
    	dig8:	.asciiz " otto "
    	dig9:	.asciiz " nove "
    	digits:	.word dig0,dig1,dig2,dig3,dig4,dig5,dig6,dig7,dig8,dig9
    	
    .text
    .globl main
    
    main:
    	li $t1, 10
    Loop:	
    	la $a0, insert
    	li $v0, 4
    	syscall
    	
    	li $v0, 5
    	syscall
    	
    	move $s0, $v0
    	
    	blt $s0, $zero, Loop
    control:
    	li $s1, 0
    	div $s0, $t1
    	mfhi $s1
    	mflo $s0
    	
    	#USARE LO STACK LIFO (LAST IN FIRST OUT)
    	
    	add $s1 ,$s1, $s1
    	add $s1, $s1, $s1
    	move $t0, $s1
    	lw $a0, digits($t0)
    	li $v0, 4
    	syscall
    	
    	bne $s0, $zero, control
    	
    	li $v0, 10
    	syscall

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480

    Re: [ASSEMBLY MIPS]Come usare lo stack

    Originariamente inviato da dennis87
    Ciao a tutti come state?
    Ho un problema con un esercizio.
    Ma non è l'esercizio di questa

    http://forum.html.it/forum/showthrea...readid=1532110

    discussione di cui ti avevo suggerito io il codice ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    185
    si in effetti si, ma non lo trovavo. Grazie mille oregon.
    Agli admin. Questo thread si può chiudere

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.