Advertisement
Guest User

Untitled

a guest
Mar 26th, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.63 KB | None | 0 0
  1. .data # Zona de memoria de la máquina donde se almacenan los datos
  2. num1: .word 3
  3. num2: .word 7
  4. salto: .asciiz "\n"
  5. cad1: .asciiz "Introduzca el numero a: "
  6. cad2: .asciiz "Introduzca el numero b: "
  7. cad3: .asciiz "Introduzca el numero c: "
  8. cad4: .asciiz "Introduzca el numero d: "
  9. cadS1: .asciiz "El resultado de sumar a y b es: "
  10. cadS2: .asciiz "El resultado de restar c y d es: "
  11. cadS3: .asciiz "El resultado de sumar todos los numeros es: "
  12. cadS4: .asciiz "A al cuadrado vale: "
  13. cadS5: .asciiz "A con desplazamiento de 3 a la izquierda vale: "
  14. cadS6: .asciiz "El resto de dividir num1 entre num2 vale: "
  15.  
  16.  
  17. .globl main # Directiva de etiqueta global
  18. .text
  19. # Inicio del segmento de texto (instrucciones)
  20. main: #etiqueta main
  21.  
  22. li $v0, 4 #imprimo peticion de numero
  23. la $a0, cad1
  24. syscall
  25.  
  26. li $v0, 5 #guardo el valor del numero
  27. syscall
  28. move $t0, $v0
  29.  
  30. li $v0, 4 #imprimo peticion de numero
  31. la $a0, cad2
  32. syscall
  33.  
  34. li $v0, 5 #guardo el valor del numero
  35. syscall
  36. move $t1, $v0
  37.  
  38. li $v0, 4 #imprimo peticion de numero
  39. la $a0, cad3
  40. syscall
  41.  
  42. li $v0, 5 #guardo el valor del numero
  43. syscall
  44. move $t2, $v0
  45.  
  46. li $v0, 4 #imprimo peticion de numero
  47. la $a0, cad4
  48. syscall
  49.  
  50. li $v0, 5 #guardo el valor del numero
  51. syscall
  52. move $t3, $v0
  53.  
  54. add $t4,$t0,$t1 #suma el valor de a y b
  55.  
  56. li $v0, 4 #imprime la cadena resultado1
  57. la $a0, cadS1
  58. syscall
  59.  
  60. li $v0, 1 #imprime el valor de la suma de a y b
  61. move $a0,$t4
  62. syscall
  63.  
  64. li $v0, 4
  65. la $a0, salto
  66. syscall
  67.  
  68. sub $t5, $t2,$t3 #resta el valor de c y d
  69.  
  70. li $v0, 4 #imprime la cadena resultado2
  71. la $a0, cadS2
  72. syscall
  73.  
  74.  
  75. li $v0, 1 #imprime el valor de la resta de c y d
  76. move $a0, $t5
  77. syscall
  78.  
  79. li $v0, 4
  80. la $a0, salto
  81. syscall
  82.  
  83. add $t6,$t2,$t3 #suma el valor de c y d
  84. add $t7,$t4,$t6 #suma el valor de a,b,c y d
  85.  
  86. li $v0, 4 #imprime la cadena resultado3
  87. la $a0, cadS3
  88. syscall
  89.  
  90. li $v0, 1 #imprime el valor de la suma de todos los numeros
  91. move $a0,$t7
  92. syscall
  93.  
  94. li $v0, 4
  95. la $a0, salto
  96. syscall
  97.  
  98.  
  99. li $v0, 4 #imprime la cadena resultado4
  100. la $a0, cadS4
  101. syscall
  102.  
  103. mul $t8, $t0, $t0
  104.  
  105. li $v0, 1 #imprime el valor de a al cuadrado
  106. move $a0,$t8
  107. syscall
  108.  
  109. li $v0, 4
  110. la $a0, salto
  111. syscall
  112.  
  113. li $v0, 4 #imprime la cadena resultado5
  114. la $a0, cadS5
  115. syscall
  116.  
  117. sll $t9, $t0, 3
  118.  
  119. li $v0, 1 #imprime el valor de a desplazado 3 a la izquierda
  120. move $a0,$t9
  121. syscall
  122.  
  123. li $v0, 4
  124. la $a0, salto
  125. syscall
  126.  
  127. lw $t0, num1
  128. lw $t1, num2
  129.  
  130. li $v0, 4 #imprime la cadena resultado6
  131. la $a0, cadS6
  132. syscall
  133.  
  134. div $t1,$t0 #divido num1 entre num2
  135. mfhi $t2 #obtengo el resto
  136.  
  137. li $v0, 1 #imprime el resto de la division
  138. move $a0,$t2
  139. syscall
  140.  
  141. li $v0,10 # Llamada al sistema de tipo "exit"
  142. syscall
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement