Εμφάνιση αναρτήσεων με ετικέτα Assembly. Εμφάνιση όλων των αναρτήσεων
Εμφάνιση αναρτήσεων με ετικέτα Assembly. Εμφάνιση όλων των αναρτήσεων

Τετάρτη 11 Απριλίου 2012

Παραλλαγή της while....do με διάβασμα αριθμού για επανάληψη απτό πληκτρολόγιο

.text 0x00400000
####diavasma arithmou
   li $v0,5
   syscall
   move $t2,$v0
####bazo ston kataxoriti t1 thn timh 1
   li $t1,1

start:
#### emfanish tou mhnhmatos tou msg
   li $v0,4
   la $a0,msg
   syscall

#### prosthesi tou t1 me to 1 mexris otou o o t1<=t2
   add $t1,$t1,1
   ble $t1,$t2,start

#### exodos
   li $v0,10
   syscall


.data
   msg: .asciiz "\n my message"

Εναλλακτικός έλεγχος του αριθμού αν ανήκει στο [10,20]


.text 0x00400000

li $v0,4
la $a0,mes
syscall

li $v0,5
syscall
move $t1,$v0


bge $t1,10,syn
j termatismos
syn:
ble $t1,20,syn2
j termatismos

syn2:
li $v0,4
la $a0,msg
syscall

termatismos:

li $v0,10
syscall

.data

msg: .asciiz "$t1 anhkei sto [10,20]"
mes: .asciiz "doste arithmo:"

Έλεγχος του αριθμού αν ανήκει στο [10,20] (Assembly)


.text 0x00400000

li $v0,4
la $a0,mes
syscall

li $v0,5
syscall
move $t1,$v0


blt $t1,10,termatismos
bgt $t1,20,termatismos

li $v0,4
la $a0,msg
syscall

termatismos:

li $v0,10
syscall

.data

msg: .asciiz "$t1 anhkei sto [10,20]"
mes: .asciiz "doste arithmo:"

While...do (Assembly)

.text 0x00400000

li $t1,1

start:
ble $t1,15,loop
j termatismos
loop:
li $v0,4
la $a0,onoma
syscall

add $t1,$t1,1

j start

termatismos:
li $v0,10
syscall

.data

onoma: .asciiz "\n'Onoma' "

Do....While (Assembly)


.text 0x00400000

li $t1,1

start:
li $v0,4
la $a0,onoma
syscall

add $t1,$t1,1

ble $t1,15,start

li $v0,10
syscall

.data

onoma: .asciiz "\n'Onoma'"