Bienvenido: Ingresar
location: attachment:separa_ex1.s de WebHome/TrabajosPracticos/PracticoASM4

Adjunto 'separa_ex1.s'

Descargar

   1 .text
   2 .arm
   3 .global _start
   4 _start:
   5         b reset
   6         b loop
   7         b loop
   8         b loop
   9         b loop
  10         nop
  11         b loop
  12         b loop
  13 
  14 /* ==============================
  15 *  TEST CODE
  16 *  ==============================
  17 */
  18 reset:  ldr sp,=STACK 
  19         ldr r3,=VECTORES
  20         ldr r2,=CADENA
  21 
  22 otrapalabra:
  23         mov r4,#0
  24         mov r1,r2         @ puntero a la primera letra 
  25 otro:   ldrb r0,[r2],#1    @ buscar palabra
  26         cmp r0,#' '       
  27         beq finpal
  28         cmp r0,#0
  29         beq finpal
  30         add r4,#1         @ contar letras
  31         b otro
  32 finpal:
  33         cmp r4,#0
  34         beq continuar
  35         cmp r4,#3         @ calcula vector a guardar según el largo de la palabra 
  36         movlo r4,#3       @ para las menores a 3 letras la deja como 3 
  37         cmp r4,#12
  38         movhi r4,#12      @ y para las mayores a 12 las deja como 12     
  39         sub r4,#3         @ restando 3 al resultado queda todo comprendido entre 0 y 9 donde este valor indica el vector a usar   
  40         mov r5,#40        
  41         mul r4,r5         @ se multiplica por 40 para calcular la posicion dentro del vector general 
  42         mov r5,#10
  43 otrolugar:
  44         ldr r6,[r3,r4]    @ busco un lugar vacio 
  45         cmp r6,#0
  46         beq grabar
  47         add r4,#4
  48         subs r5,#1
  49         bne otrolugar
  50 
  51         b continuar
  52 grabar:
  53         str r1,[r3,r4]          @ se graba el puntero de la primer letra en el lugar vacio
  54         mov r5,#0       
  55         strb r5,[r2,#-1]        @ y un nulo en el espacio siguiente a la última letra 
  56          
  57 continuar:
  58         cmp r0,#0 
  59         bne otrapalabra 
  60 
  61 loop:   b loop
  62 
  63 CADENA: .ascii "hola es la mundo palabra varios"
  64         .balign 4
  65 @ se utiliza un solo vector de 10 * 10, formado por 10 filas de 10 elementos, cada fila representa un vector 
  66 VECTORES:
  67         .rept 10 
  68         .word 0,0,0,0,0,0,0,0,0,0
  69         .endr
  70       
  71         .space(200)
  72 STACK:
  73 
  74         .end

Archivos adjuntos

Para referirse a los adjuntos de una página, usa attachment:nombredelarchivo, como se muestra abajo en la lista de archivos. NO uses la URL del enlace [get], ya que puede cambiar fácilmente y dejar de funcionar.
  • [obtener | ver] (2019-09-02 11:56:14, 110.6 KB) [[attachment:ARM_Instruction_Set.pdf]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.1 KB) [[attachment:Makefile]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.4 KB) [[attachment:alarma_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.5 KB) [[attachment:alarma_s_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 2.3 KB) [[attachment:anumero1_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 2.9 KB) [[attachment:anumero2_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.6 KB) [[attachment:cadena_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.2 KB) [[attachment:cercano_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.8 KB) [[attachment:clave_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.4 KB) [[attachment:compara_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 2.2 KB) [[attachment:contarletrasrep_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.5 KB) [[attachment:contarrep_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.2 KB) [[attachment:criba_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 2.3 KB) [[attachment:extraenum_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.2 KB) [[attachment:igualarlargo_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.7 KB) [[attachment:inspalabra_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.9 KB) [[attachment:invertir_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.9 KB) [[attachment:may_min_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.6 KB) [[attachment:multip_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.6 KB) [[attachment:potencia_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.8 KB) [[attachment:potencia_ex1.s,v]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.8 KB) [[attachment:prom_vector_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.6 KB) [[attachment:promedio_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.8 KB) [[attachment:promedio_ex1.s,v]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.7 KB) [[attachment:punt_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.8 KB) [[attachment:punt_ex1.s,v]]
  • [obtener | ver] (2019-09-02 11:56:14, 1.9 KB) [[attachment:separa_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 472.2 KB) [[attachment:slides.pdf]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.5 KB) [[attachment:suma100_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.6 KB) [[attachment:suma64_ex1.s]]
  • [obtener | ver] (2019-09-02 11:56:14, 0.8 KB) [[attachment:suma64_ex1.s,v]]
  • [obtener | ver] (2019-09-02 11:56:14, 160.3 KB) [[attachment:tp1.pdf]]
  • [obtener | ver] (2019-09-02 11:56:14, 167.3 KB) [[attachment:tp3.pdf]]
 All files | Selected Files: delete move to page copy to page

No tienes permisos para adjuntar un archivo a esta página.