Está en la página 1de 7

LENGUAJE DE INTERFAZ

INSTRUCCIONES CICLOS NUMRICOS

LOOP ETIQUETA

EL CICLO SE REALIZA CX VECES, CADA VEZ QUE ENTRA AL CICLO SE DECREMENTAMEN 1 ES AUTOMTICA. FINALIZA CUANDO CX = 0

INSTRUCCIONES CAPTURA BSICA DE CADENAS .DATA NOM LABEL BYTE LONG_D DB 20 LONG_R DB ? NOMBRE DB 20 DUP($) . . . .CODE . . MOV AH, 0AH LEA DX, NOM INT 21H . . INSTRUCCIONES DE COMPARACIN Y PRUEBA

INSTRUCCIN CMP DEFINICIN: LA INSTRUCCIN CMP RESTA EL OPERANDO FUENTE DEL OPERANDO DESTINO, HACIENDO QUE SE ALTEREN LOS SEALIZADORES. NO ALTERA LOS OPERANDOS. LOS OPERANDOS DEBEN SER DEL MISMO TIPO, CON EXCEPCIN EN MODO INMEDIATO SINTAXIS: CMP destino, fuente CMP {REGISTRO/MEM}, {REGISTRO/MEM/INMEDIATO}

EJEMPLOS: CMP BL, 5 CMP VAR_MEM, 5CAFH INSTRUCCIN TEST DEFINICIN: EXAMINA UN CAMPO POR UNA CONFIGURACIN ESPECFICA DE BITS TAL COMO AND, PERO NO CAMBIA EL OPERANDO DESTINO. LOS OPERANDOS DEBEN SER DEL MISMO TIPO. SINTAXIS: TEST destino, fuente TEST {REGISTRO/MEM}, {REGISTRO/MEMORIA/INMEDIATO}

EJEMPLOS: TEST AX, BX TEST EAX, EBX TEST VAR_MEM, 5

SALTOS INCONDICIONALES INSTRUCCIN JMP DEFINICIN: LA INSTRUCCIN JMP TRANSFIERE EL CONTROL DEL PROGRAMA A UNA INSTRUCCIN DIFERENTE SIN ALMACENAR NINGUNA INFORMACIN DE VUELTA. SINTAXIS: JMP (objeto) [ETIQUETA:] JMP {DIRECCIN CORTA, CERCANA O LEJANA}

EJEMPLO: JMP ETIQUETA1

SALTOS CONDICIONALES > < >= <= <> = JG, JA, JNLE, JNBE JB, JL, JNGE, JNAE JGE, JAE, JNL, JNB JBE, JNN, JLE, JNA JNE, JNZ JE, JZ

INDICADORES: A = ABOVE B = BELOW (POR DEBAJO) E = EQUAL G = GREATER L = LESS N = NOT JC JNC JS JNS JP JNP, JPO LA BANDERA DE ACARREO ESTA ENCENDIDA LA BANDERA DE ACARREO ESTA APAGADA LA BANDERA DE SIGNO ESTA ENCENDIDA LA BANDERA DE SIGNO ESTA APAGADA LA BANDERA DE PARIDAD ESTA ENCENDIDA LA BANDERA DE PARIDAD ESTA APAGADA

CICLOS CONDICIONALES LOOPZ / LOOPE ETIQUETA EL CICLO SE REALIZA CX VECES, SIEMPRE Y CUANDO LA BANDERA DE CERO (ZF) ESTE ENCENDIDA Y CX SEA DIFERENTE DE CERO LOOPNZ / LOOPNE ETIQUETA INSTRUCCIN INC DEFINICIN: INCREMENTA EN UNO UN BYTE, PALABRA O PALABRA DOBLE EN UN REGISTRO O MEMORIA. SINTAXIS: INC destino INC {REGISTRO/MEMORIA} EL CICLO SE REALIZA CX VECES SI CX <> 0 Y ZF =0

EJEMPLOS: INC AX INC EBX INC MEMORIA

INSTRUCCIN DEC

DEFINICIN: DISMINUYE UNO DE UN BYTE, PALABRA O PALABRA DOBLE EN UN REGISTRO O MEMORIA. SINTAXIS: DEC destino DEC {REGISTRO/MEMORIA}

EJEMPLOS: DEC AX DEC EXTMEM DEC TABLA[BP][SI] DEC ECX

INSTRUCCIONES ARITMTICAS INSTRUCCIN ADD DEFINICIN: REALIZA LA SUMA DE OPERANDOS. EL RESULTADO SE ALMACENA EN EL OPERANDO DESTINO. SINTAXIS: EJEMPLOS: 1. REGISTRO A REGISTRO ADD AX, BX ADD EBX, ECX 2. REGISTRO A MEMORIA ADD VAL_MEM, AX 3. INMEDIATO AL ACUMULADOR ADD AL, 4 ADD EAX,98765432H 4. INMEDIATO A REGISTRO ADD CX, 1985 5. INMEDIATO A MEMORIA ADD VAR_MEM, 23 ADD destino, fuente [ETIQUETA:] ADD {REG,MEMORIA}, {REG,MEM,INMEDIATO}

INSTRUCCIN ADC DEFINICIN: POR LO COMN ES USADO EN SUMA DE MULTIPLES PALABRAS BINARIAS PARA ACARREAR UN BIT 1 AL SIGUIENTE PASO DE LA ARTMTICA. ADC SUMA EL CONTENIDO DE LA BANDERA CF (0/1) AL PRIMER OPERANDO Y DESPUES SUMA EL SEGUNDO OPERANDO AL PRIMERO, AL IGUAL QUE ADD. SINTAXIS: EJEMPLOS: 1. SUMA OPERANDO INMEDIATO CON ARRASTRE AL ACUMULADOR ADC AL,4 ADC AX,298 ADC EBX,22334455H SUMA OPERANDO INMEDIATO CON ARRASTRE AL REGISTO O POSICIN DE MEMORIA ADC CX,341 ADC BL,10 ADC TABLA[SI], 2 ADC MEMORIA, 6293 ADC NUMERO, 12345678 ADC destino, fuente ADC {REGISTRO/MEMORIA},{REGISTRO/MEMORIA/INMEDIATO}

2.

3.

SUMA DE DATOS CON ARRASTRE DESDE: REGISTRO A REGISTRO REGISTRO A MEMORIA MEMORIA A REGISTRO ADC DL, BL ADC MEM_WORD, AX ADC SI, MEM_WORD

INSTRUCCIN SUB DEFINICIN: RESTA DE NMEROS BINARIOS EN UN REGISTRO, MEMORIA O IMNEDIATO DE UN REGISTRO O RESTA VALORES EN UN REGISTRO INMEDIATO DE MEMORIA. LOS NMEROS PUEDEN SER DE UN BYTE, PALABRA O PALABRA DOBLE. SINTAXIS: SUB destino, fuente SUB {REGISTRO/MEMORIA},{REGISTRO/MEMORIA/INMEDIATO}

EJEMPLOS: SUB AX,BX SUB, EAX,EDX SUB DX, MEMORIA_WORD SUB MEMORIA_WORD, AX SUB MEMORIA_B, 7 SUB NUMEOR, 0FC981576H INSTRUCCIN SBB DEFINICIN: POR LO REGULAR UTILIZADA EN RESTA BINARIA DE MLTIPLES PALABRAS PARA ACARREAR EL BIT UNO DE DESBORDAMEINTO AL SIGUEITNE PASO DE LA ARITMTICA. SBB RESTA PRIMERO EL CONTIENIDO DE LA CF DEL PRIMER OPERANDO Y DESPUS EL SEGUNDO OPERANDO DEL PRIMERO, AL IGUAL QUE SUB. SINTAXIS: EJEMPLOS: SBB AX,BX SBB DX, MEMORIA_WORD SBB TABLA[BX][DI], SI SBB AL,3 SBB EAX,EBX SBB ECX, 0ABCD1234H SBB destino fuente SBB {REGISTRO/MEMORIA}, {REGISTRO/MEMORIA/INMEDIATO}

INSTRUCCIN NEG DEFINICIN: INVIERTE UN NMERO BINARIO DE POSITIVO A NEGATIVO Y DE NEGATIVO A POSITIVO. NEG PROPORCIONA EL COMPLEMENTO A DOS DEL OPERNADO ESPEDIFICADO RESTANDO EL OPERNADO CERO Y SUMANDO UNO. LOS OPERANDOS PUEDEN SER UN BYTE, PALABRA O PALABRA DOBLE EN UN REGISTRO O MEMORIA. SINTAXIS: NEG destino NEG {REGISTRO/MEMORIA}

EJEMPLOS: NEG AL NEG EBX INSTRUCCIN CBW DEFINICIN: EXTIENDE UN NMERO DE UN BYTE CON SIGNO A UNA PALABRA DUPLICNADO EL BIT DE SIGNO (BIT 7) DEL AL O LOS BITS EN EL AH.

SINTAXIS: EJEMPLOS:

CBW (no operando) CBW

INSTRUCCIN MUL DEFINICIN: UN OPERANDO BYTE DE LA INSTRUCCIN MUL HACE QUE EL BYTE SEA MULTIPLICADO POR EL REGISTRO AL Y EL RESULTADO SE DEJE EN EL REGISTRO AX. CF Y OF SON PUESTOS A 0 SI AH ESTA A 0 EN CUALQUIER OTRO CASO, ESTN A 1. UNA PALABRA OPERANDO DE LA INSTRUCCI{ON MUL HACE QUE LA PALABRA SEA MULTIPLICADO POR EL REGSITRO AX Y EL RESULTADO SE DEJE EN DX:AX. DX CONTIEN LOS 16 BITS DE ORDEN SUPERIOR DEL RESULTDO. CF Y OF SE PONEN A 0 SI DX ES 0; EN CUALQUIER OTRO CASO, SE PONEN EN 1. SINTAXIS: MUL fuente MUL {REGISTRO/MEMORIA} MULTIPLICANDO (OPERANDO 1) AL AX EAX MULTIPLICADOR (OPERANDO 2) 8 bits registro/mem 16 btis reg/memoria 32 bits reg/memoria PRODUCTO EJEMPLO

TAMAO

8 BITS 16 BITS 32 BITS

AX DX:AX EDX:EAX

MUL BL MUL BX MUL ECX

EJEMPLOS: 1. MULTIPLICA BYTE POR UNA PALABRA MOV AL, MULTP_BYTE CBW MUL VAL_BYTE MULTIPLICA UN BYTE POR UN BYTE MOV AL,MUL_BYTE MUL VALOR MULTIPLICAR UNA PALABRA POR UNA PALABRA MOV AX, MUL_WORD MUL VALOR

2.

3.

INSTRUCCIN IMUL DEFINICIN: MULTIPLICA UN MULTIPLICANDO CON SIGONO POR UN MULTIPLICADO CON SIGNO. IMUL TRATA EL BIT DE MAS A LA IZQUIERDA COMO EL SIGNO (O = POSITIVO, 1 = NEGATIVO). SINTAXIS: IMUL fuente IMUL {REGISTRO/MEMORIA} MULTIPLICANDO (OPERANDO 1) AL AX EAX MULTIPLICADOR (OPERANDO 2) 8 bits registro/mem 16 btis reg/memoria 32 bits reg/memoria PRODUCTO AX DX:AX EDX:EAX EJEMPLO IMUL BL IMUL BX IMUL ECX

TAMAO 8 BITS 16 BITS 32 BITS

EJEMPLOS:

MOV AL, NUMERO IDIV NUMERO MOV AX, VALOR1 IDIV VALOR2

INSTRUCCIN DIV/IDIV DEFINICIN: LA INSTRUCCIN DIV DIVIDE UN DIVIDENDO SIN SIGNO ENTRE UN DIVISOR SIN SIGNO. DIV TRATA EL BIT DE MAS A LA IZQUIERDA COMO UN BIT DE DATO, NO COMO UN BIT DE SIGNO. LA INSTRUCCIN IDIV DIVIDE UN DIVIDENDO CON SIGNO ENTRE UN DIVISOR CON SIGNO. IDIV TRATA EL BIT DE MS A LA IZQUIERDA COMO EL SIGNO (0 = POSITIVO Y 1= NEGATIVO) . LA DIVISIN ENTRE CERO PROVOCA UN INTERRUPCIN DE DIVISIN ENTRE CERO. SINTAXIS: TAMAO 16 BITS 32 BITS 64 BITS EJEMPLOS : MOV AL, NUM_BYTE DIV DIVISOR_BYTE MOV AX, NUM_WORD DIV DIVISOR_BYTE DIV/IDIV fuente DIVIDENDO (OPERANDO1) AH DX:AX EDX:EAX DIVISOR (OPERANDO 2) 8 bits registro/mem 16 btis reg/memoria 32 bits reg/memoria COCIENTE AL AX EAX RESIDUO AH DX EDX EJEMPLO DIV/IDIV BH DIV/IDIV CX DIV/IDIV ECX

INSTRUCCIONES DE PILA

PUSH r/m POP r/m EJEMPLO: MOV AX,5 PUS AX

PUSHF POPF

INSTRUCCIONES LGICAS LAS OPERACIONES SE HACEN DE ACUERDO A TABLAS DE VERDAD. DEBEN SER DEL MISMO TAMAO Y EL RESULTADO SE GUARDA EN EL OPERANDO DESTINO AND A , L OR A, L XOR A, L CONJUNCIN LGICA DE LOS BITS. AMBOS DEBEN SER 1 PARA QUE SEA VERDAD. DISYUNCIN LGICA. CON UNO QUE SEA 1 SE VUELVE VERDADERO DISYUNCIN EXCLUSIVA O EXCLUYENTE. EL RESULTADO ES VERDADERO CUANDO LOS DOS SON CONTRARIOS Y ES FALSO SI LOS DOS SON IGUALES. NEGACIN DE LOS BITS.

NOT A

EJEMPLO: AL BL = = 10011110 01100111 _____________ 00000110 AND AL, BL 11111111 OR AL, BL 11111001 XOR AL, BL 01100001 NOT AL

INSTRUCCIONES DE DESPLAZAMIENTO SAL d,f SHL d,f SAR d,f SHR d,f

INSTRUCCIONES DE ROTACIN ROR d,f RCR d,f ROL d,f RCL d,f

También podría gustarte