Lenguaje ensamblador, contando el número de palabras en una cadena
¿CÓDIGO? ASSUMECS DEL SEGMENTO: CÓDIGO ORG100H INICIO: JMPBEGIN STRING? DB'hgdfsdghkfucomputerkdjskflj255computer' STR_LEN?EQU$-STRING KEYWORD?DB'computer' KEYLEN?EQU$-KEYWORD
COUNT?DB0 BEGIN: PUSH?CS POPDS PUSH?CS POPES MOVAX, STR_LEN LEADI, STRING MOVDX, DI MOVBP, DI ADDBP, AX SUBBP, KEYLEN LEASI, KEYWORD MOVBX, SI @0: MOVCX, KEYLEN REPCMPSB JNE@1 INCBYTE?PTR?COUNT ADDDX, KEYLEN MOVDI, DX MOVSI , BX JMP@2 @1: INCDX MOVDI, DX MOVSI, BX @2: CMPDI, BP JLE@0 MOVAH, 2 MOVAL, COUNT ADDAL, 30H MOVDL, AL INT21H MOVAH, 4CH INT21H
¿CÓDIGO? FINALIZA FININICIO