Bueno ví un post parecido de kodeinfect pero eran puras apis así no tiene chiste... aca les dejo el mío sin apis mas que el messagebox y el proceso para salir...:

Código: Seleccionar todo

include 'win32ax.inc'
;*************************
;Longitud de una cadena  *
;Coder: Linkgl           *
;Lenguaje ASM(FASM)      *
;Fecha 28/11/10          *
;Indetectables.net       *
;Corp-51.net             *
;*************************
.data
  cadena db 'linkgl',0 ;Cadena a contar
  titulo db 'La longitud de la cadena es de:',0  ;Esto no es importante
  resultado db ?,0  ;aca almacenamos el contador

.code
  inicio:
    XOR ESI,ESI   ;Seteamos los registros SI EAX Y ECX A 0
    XOR ECX,ECX
    XOR EAX,EAX
    LEA ESI,[cadena] ;Movemos la palabra a esi
    bucle:
    LODSB ;Extraemos el ultimo caracter en AL
    CMP AL,0 ;SI ES IGUAL A 0 SE ACABO LA PALABRA
    JE salir
    INC ECX    ;INCREMENTAMOS EL CONTADOR
    JMP bucle  ;volvemos al bucle

    salir:
    MOV AL,CL ;movemos el contador a AL
    ADD AL,0x30 ;Le sumamos 0x30 para que nos de el valor en ascii
    MOV [resultado],AL ;lo copiamos a resultado
    invoke MessageBoxA,0,resultado,titulo,MB_OK ;mostramos
    invoke ExitProcess,0 ;nos vamos!
  .end inicio
Cuenta palabras hasta de 9 caracteres si sobrepasan los caracteres también las cuenta pero las cuenta en hexadecimal, xD no es dificil arreglar eso solo es ir sumando valores en hex para convertirlos a ascii solo que tengo tarea y bueno quien quiera algo que le cueste este ejemplo le podrá servir a cualquiera, pero funciona bien ;)
//mHmm..
Muchisimas gracias a ambos Programadores...y una maravilla por comentarlo,me hizo mas facil su lectura y entendimiento.

En verdad ustedes tienen futuro como Programadores!...
Blog técnico dedicado a la seguridad informática y al estudio de nuevas vulnerabilidades.
Blog: http://www.seginformatica.net
Twitter: https://twitter.com/#!/p0is0nseginf
Responder

Volver a “Otros lenguajes”