19.04.2018 Views

Tutorial de ensamblador

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Uso <strong>de</strong> la pila<br />

Existen ocasiones en las que es necesario almacenar<br />

datos <strong>de</strong> manera temporal para que éstos no se vean<br />

afectados por otras operaciones. Para ello se usa la pila <strong>de</strong><br />

datos. Una pila <strong>de</strong> datos es como una pila <strong>de</strong> libros: El primer<br />

dato en formar parte <strong>de</strong> la pila es el último en ser retirado. Para<br />

meter y sacar elementos <strong>de</strong> la pila se utilizan las operaciones<br />

PUSH y POP.<br />

POP <strong>de</strong>stino<br />

Saca datos <strong>de</strong> la pila. POPF extrae hacia la ban<strong>de</strong>ra.<br />

PUSH dato<br />

Coloca un valor en la pila. PUSHF <strong>de</strong>crementa en 2 la ban<strong>de</strong>ra SP<br />

mueve el dato hacia la pila.<br />

y<br />

Operaciones aritméticas<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

ADC <strong>de</strong>stino, fuente Para sumas con acarreo, don<strong>de</strong> el acarreo se va a la<br />

ban<strong>de</strong>ra CF<br />

ADD <strong>de</strong>stino, fuente Para sumas normales<br />

DIV fuente Para dividir entre AX, guardar el resultado en AL y su residuo en<br />

DX.<br />

IDIV fuente para división con signo<br />

MUL fuente Para multiplicar por AH (8bits) o por AX (16 bits) y guardar el<br />

resultado en AX<br />

IMUL fuente Para multiplicación con signo<br />

SBB <strong>de</strong>stino, fuente Para resta con acarreo, usando la ban<strong>de</strong>ra CF<br />

SUB <strong>de</strong>stino, fuente Para restas normales.<br />

Los datos numéricos pue<strong>de</strong>n manejarse en el sistema <strong>de</strong> numeración que<br />

se <strong>de</strong>see, siempre u cuando se indique por medio <strong>de</strong> una letra al término <strong>de</strong>l<br />

número <strong>de</strong> qué sistema se trata, siendo el sistema <strong>de</strong>cimal el que se emplea por<br />

<strong>de</strong>fecto. Por ejemplo, para indicar un 12 en hexa<strong>de</strong>cimal, se escribe 12H.<br />

Operaciones lógicas<br />

Las operaciones lógicas son aquellas en las que se comparan situaciones<br />

y los resultados pue<strong>de</strong>n ser Verda<strong>de</strong>ro o Falso. Los principales son:<br />

AND Verda<strong>de</strong>ro sólo cuando las dos situaciones son Verda<strong>de</strong>ras.<br />

NEG Complemento <strong>de</strong> 2<br />

NOT Si es Verda<strong>de</strong>ro lo convierte a Falso, y viceversa.<br />

26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!