Advertisement
alduncin

Untitled

Apr 17th, 2012
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  section .data
  2. combinacion db "aCb:",13,10
  3. tamanio equ $ - $$        ;para definir el tamanio a utilizar con equ (igual a inicio=$ -$$=fin)
  4.    
  5.     section .bss         
  6. a:  resb 1            ;reserva tamanio para la variable a y b \n...
  7. b:  resq 1            ;<-
  8. c:  resq 1            ;
  9.    
  10.     section .text         ;codigo
  11.     global main
  12. main:
  13.     pop ebx         ;extrae "argc" cantidad c:
  14.     pop ebx         ;extrae argu[0] nombre :p
  15.  
  16.     pop ebx         ;extrae el primer argumento [1]
  17.     mov a,ebx       ;mueve ebx a la var a ._.
  18.     int 0x80        ;interrupcion 80 llama al kernel .-.
  19.  
  20.                 ;registros: Acumulador(AX) Base(BX) Contador(CX) Datos(DX)
  21.                 ;la letra e antepuesta a los nemonicos es dependiendo la arquitectura
  22.     mov eax,4       ;llamada al sistema para imprimirlo (sys_write=4)
  23.     mov ebx,1       ;(sys_exit=1)
  24.     mov ecx,a       ;imprime a- (mensaje)degub*
  25.     mov edx,9       ;cantidad caracteres para poder imprimir los datos
  26.     int 0x80        ;interrupcion y se ejecutan las instrucciones anteriores
  27.  
  28.     mov eax,3       ;(sys_read=3) no jala :@  no le entiendo u_u
  29.     mov ebx         ;guarda los datos en la variable a
  30.     mov ecx,a       ;aqui scanf
  31.     mov edx,tamanio     ;tamanio de los datos de lectura
  32.     int 0x80
  33.  
  34.     mov eax,4       ;recibe b : mov
  35.     mov ebx
  36.     mov ecx
  37.     mov edx,19
  38.     int 0x80        ;interrupcion y tambien repetir la funcion scanf aqui
  39.  
  40.    
  41.  
  42.    
  43.    
  44.        
  45.     ;; nasm -f elf C.asm -o Combb
  46.     ;; gcc Combb -o aCombb
  47.     mov ebx,0       ;salida del codigo
  48.     mov eax,1       ;(sys_exit=1)
  49.     int 0x80        ;interrupcion llamada al kernel ._. FIN  c:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement